Concurrent Class Machines are a novel state-machine model that directly captures a variety of object-oriented concepts, including classes and inheritance, objects and object creation, methods, method invocation and exceptions, multithreading and abstract collection types. The model can be understood as a precise definition of UML activity diagrams which, at the same time, offers an executable, object-oriented alternative to event-based statecharts. It can also be understood as a visual, combined control and data flow model for multithreaded object-oriented programs. We first introduce a visual notation and tool for Concurrent Class Machines and discuss their benefits in enhancing system design. We then equip this notation with a precise semantics that allows us to define refinement and modular refinement rules. Finally, we summarize our work on generation of optimized code, implementation and experiments, and compare with related work.
%0 Conference Paper
%1 grosu_01_automated
%A Grosu, Radu
%A Liu, Y. A.
%A Smolka, S.
%A Stoller, S. D.
%A Yan, Jingyu
%D 2001
%J Automated Software Engineering, 2001. (ASE 2001). Proceedings. 16th Annual International Conference on
%K refinement statecharts \_pdf uml 2001
%P 297--304
%R http://dx.doi.org/http://dx.doi.org/10.1109/ASE.2001.989816
%T Automated software engineering using concurrent class machines
%U http://dx.doi.org/http://dx.doi.org/10.1109/ASE.2001.989816
%X Concurrent Class Machines are a novel state-machine model that directly captures a variety of object-oriented concepts, including classes and inheritance, objects and object creation, methods, method invocation and exceptions, multithreading and abstract collection types. The model can be understood as a precise definition of UML activity diagrams which, at the same time, offers an executable, object-oriented alternative to event-based statecharts. It can also be understood as a visual, combined control and data flow model for multithreaded object-oriented programs. We first introduce a visual notation and tool for Concurrent Class Machines and discuss their benefits in enhancing system design. We then equip this notation with a precise semantics that allows us to define refinement and modular refinement rules. Finally, we summarize our work on generation of optimized code, implementation and experiments, and compare with related work.
@inproceedings{grosu_01_automated,
abstract = {Concurrent Class Machines are a novel state-machine model that directly captures a variety of object-oriented concepts, including classes and inheritance, objects and object creation, methods, method invocation and exceptions, multithreading and abstract collection types. The model can be understood as a precise definition of UML activity diagrams which, at the same time, offers an executable, object-oriented alternative to event-based statecharts. It can also be understood as a visual, combined control and data flow model for multithreaded object-oriented programs. We first introduce a visual notation and tool for Concurrent Class Machines and discuss their benefits in enhancing system design. We then equip this notation with a precise semantics that allows us to define refinement and modular refinement rules. Finally, we summarize our work on generation of optimized code, implementation and experiments, and compare with related work.},
added-at = {2009-03-10T04:40:42.000+0100},
author = {Grosu, Radu and Liu, Y. A. and Smolka, S. and Stoller, S. D. and Yan, Jingyu},
biburl = {https://www.bibsonomy.org/bibtex/23e236928c5ea8c12ed3d66828cdd1fbd/leonardo},
citeulike-article-id = {1244042},
doi = {http://dx.doi.org/http://dx.doi.org/10.1109/ASE.2001.989816},
interhash = {a9f3d583bda47d0caeeb63d7acf0d157},
intrahash = {3e236928c5ea8c12ed3d66828cdd1fbd},
journal = {Automated Software Engineering, 2001. (ASE 2001). Proceedings. 16th Annual International Conference on},
keywords = {refinement statecharts \_pdf uml 2001},
pages = {297--304},
posted-at = {2007-04-23 02:05:46},
priority = {4},
timestamp = {2009-03-10T04:40:42.000+0100},
title = {Automated software engineering using concurrent class machines},
url = {http://dx.doi.org/http://dx.doi.org/10.1109/ASE.2001.989816},
year = 2001
}