Abstract  Package merge allows the content of one package to be combined with that of another package. Package merge is used extensively in the UML 2 specification to modularize the definition of the UML 2 meta model and to define the four compliance levels of UML 2. Package merge is a novel construct in UML and currently not well understood. This paper summarizes our work to understand and improve package merge. First, we identify ambiguous and missing rules in the package merge definition and suggest corrections. Then, we formalize package merge and analyze it with respect to some desirable properties. Our analyses employs Alloy, a first-order modelling language with tool support, and concepts from mathematical logic which allow us to develop a general taxonomy of package extension mechanisms. The analyses reveal the unexpected failure of important properties.
%0 Journal Article
%1 dingel_08_understanding
%A Dingel, Jürgen
%A Diskin, Zinovy
%A Zito, A.
%D 2008
%J Software and Systems Modeling
%K 2008 semantics \_hardcopy alloy \_pdf uml
%N 4
%P 443--467
%R http://dx.doi.org/10.1007/s10270-007-0073-9
%T Understanding and improving UML package merge
%U http://dx.doi.org/10.1007/s10270-007-0073-9
%V 7
%X Abstract  Package merge allows the content of one package to be combined with that of another package. Package merge is used extensively in the UML 2 specification to modularize the definition of the UML 2 meta model and to define the four compliance levels of UML 2. Package merge is a novel construct in UML and currently not well understood. This paper summarizes our work to understand and improve package merge. First, we identify ambiguous and missing rules in the package merge definition and suggest corrections. Then, we formalize package merge and analyze it with respect to some desirable properties. Our analyses employs Alloy, a first-order modelling language with tool support, and concepts from mathematical logic which allow us to develop a general taxonomy of package extension mechanisms. The analyses reveal the unexpected failure of important properties.
@article{dingel_08_understanding,
abstract = {Abstract\^{A} \^{A} Package merge allows the content of one package to be combined with that of another package. Package merge is used extensively in the UML 2 specification to modularize the definition of the UML 2 meta model and to define the four compliance levels of UML 2. Package merge is a novel construct in UML and currently not well understood. This paper summarizes our work to understand and improve package merge. First, we identify ambiguous and missing rules in the package merge definition and suggest corrections. Then, we formalize package merge and analyze it with respect to some desirable properties. Our analyses employs Alloy, a first-order modelling language with tool support, and concepts from mathematical logic which allow us to develop a general taxonomy of package extension mechanisms. The analyses reveal the unexpected failure of important properties.},
added-at = {2009-03-10T04:34:58.000+0100},
author = {Dingel, J\"{u}rgen and Diskin, Zinovy and Zito, A.},
biburl = {https://www.bibsonomy.org/bibtex/242c0dd7317051e6e3b63824119a2335f/leonardo},
citeulike-article-id = {2075754},
doi = {http://dx.doi.org/10.1007/s10270-007-0073-9},
interhash = {008f1cb08bec6dbdabecc8560ce1fc64},
intrahash = {42c0dd7317051e6e3b63824119a2335f},
journal = {Software and Systems Modeling},
keywords = {2008 semantics \_hardcopy alloy \_pdf uml},
month = {October},
number = 4,
pages = {443--467},
posted-at = {2007-12-08 01:53:49},
priority = {4},
timestamp = {2009-03-10T04:34:58.000+0100},
title = {Understanding and improving UML package merge},
url = {http://dx.doi.org/10.1007/s10270-007-0073-9},
volume = 7,
year = 2008
}