Formerly, models have been used mostly in design and documentation. MDA and its surrounding techniques put them into the center of the software development process as the platform-independent model serves as foundation for tasks such as platform-dependent code generation or testing. Obviously, unambiguous models are crucial for the successful accomplishment of these tasks. The UML as the most popular modeling language is not able to ensure this which delegates the validation of models to further tasks. Our goal is to improve this situation by making models reliable as it is neither likely that another modeling language will displace UML in the near future not that a new - improved - UML version will be adopted soon. We reuse the existing OCL-based static semantics of UML and strengthen them by rectification and extension. As a result, the structural soundness of class and object diagrams is automatically ascertained and model-based tasks can be smoothly performed afterwards. Our approach supports the usage of profiles as long as these specify their static semantics on OCL. We show this by an example taken from the railway control systems domain. Behavioral soundness is not checked as we believe that it is not desirable to define one concrete behavioral semantics for UML as different application domains require different semantics at least in details.
%0 Journal Article
%1 berkenkotter_08_reliable
%A Berkenkötter, Kirsten
%B Proceedings of the 3rd International Workshop on Systems Software Verification (SSV 2008)
%D 2008
%J Electronic Notes in Theoretical Computer Science
%K 2008 _marcia uml
%P 203--220
%R http://dx.doi.org/10.1016/j.entcs.2008.06.050
%T Reliable UML Models and Profiles
%U http://dx.doi.org/10.1016/j.entcs.2008.06.050
%V 217
%X Formerly, models have been used mostly in design and documentation. MDA and its surrounding techniques put them into the center of the software development process as the platform-independent model serves as foundation for tasks such as platform-dependent code generation or testing. Obviously, unambiguous models are crucial for the successful accomplishment of these tasks. The UML as the most popular modeling language is not able to ensure this which delegates the validation of models to further tasks. Our goal is to improve this situation by making models reliable as it is neither likely that another modeling language will displace UML in the near future not that a new - improved - UML version will be adopted soon. We reuse the existing OCL-based static semantics of UML and strengthen them by rectification and extension. As a result, the structural soundness of class and object diagrams is automatically ascertained and model-based tasks can be smoothly performed afterwards. Our approach supports the usage of profiles as long as these specify their static semantics on OCL. We show this by an example taken from the railway control systems domain. Behavioral soundness is not checked as we believe that it is not desirable to define one concrete behavioral semantics for UML as different application domains require different semantics at least in details.
@article{berkenkotter_08_reliable,
abstract = {Formerly, models have been used mostly in design and documentation. MDA and its surrounding techniques put them into the center of the software development process as the platform-independent model serves as foundation for tasks such as platform-dependent code generation or testing. Obviously, unambiguous models are crucial for the successful accomplishment of these tasks. The UML as the most popular modeling language is not able to ensure this which delegates the validation of models to further tasks. Our goal is to improve this situation by making models reliable as it is neither likely that another modeling language will displace UML in the near future not that a new - improved - UML version will be adopted soon. We reuse the existing OCL-based static semantics of UML and strengthen them by rectification and extension. As a result, the structural soundness of class and object diagrams is automatically ascertained and model-based tasks can be smoothly performed afterwards. Our approach supports the usage of profiles as long as these specify their static semantics on OCL. We show this by an example taken from the railway control systems domain. Behavioral soundness is not checked as we believe that it is not desirable to define one concrete behavioral semantics for UML as different application domains require different semantics at least in details.},
added-at = {2009-02-11T20:11:57.000+0100},
author = {Berkenk"{o}tter, Kirsten},
biburl = {https://www.bibsonomy.org/bibtex/2a5571a2008783215f5cd693b1677b9c1/leonardo},
booktitle = {Proceedings of the 3rd International Workshop on Systems Software Veri[fi]cation (SSV 2008)},
citeulike-article-id = {3018514},
doi = {http://dx.doi.org/10.1016/j.entcs.2008.06.050},
interhash = {854959b4eb3594b6036dc58824c07493},
intrahash = {a5571a2008783215f5cd693b1677b9c1},
journal = {Electronic Notes in Theoretical Computer Science},
keywords = {2008 _marcia uml},
month = {July},
pages = {203--220},
posted-at = {2008-07-18 15:22:50},
priority = {2},
timestamp = {2009-02-11T20:11:57.000+0100},
title = {Reliable UML Models and Profiles},
url = {http://dx.doi.org/10.1016/j.entcs.2008.06.050},
volume = 217,
year = 2008
}