rCOS stands for refinement of
object and
component systems. It is a
formal method providing
component-based model-driven software development.
Overview
rCOS was originally developed by
He Jifeng,
Zhiming Liu and Xiaoshan Li at
UNU-IIST in
Macau, and consists of a unified multi-view modeling notation with a theory of relational semantic and graph-based
operational semantics, a
refinement calculus and tool support for model construction, model analysis and verification, and
model transformations. Model transformations automate refinement rules and design patterns and generate conditions as proof obligations. rCOS support multiple dimensional modeling: models at different levels of abstraction related by refinement relations, hierarchy of compositions of components, and models of different views of the system (
interaction protocol
Within the fields of computer science and robotics, interaction protocols are possible communication scenarios between individual agents in multi-agent systems. Some protocols are described quite qualitatively (for example, many parts of the traffi ...
s of components, reactive behaviors of components, data functionality, and class structures and data types). Components are composed and integrated based on their models of interfaces to support third party composition.
Bibliography
*Ruzhen Dong, Johannes Faber, Wei Ke, Zhiming Liu: "rCOS: Defining Meanings of Component-Based Software Architectures". Unifying Theories of Programming and Formal Engineering Methods – ICTAC Training School on Software Engineering 2013, LNCS 8050: 1-66, Springer (2013)
*Wei Ke, Xiaoshan Li, Zhiming Liu, Volker Stolz: "rCOS: a formal model-driven engineering method for component-based software". ''Frontiers of Computer Science in China'' 6(1): 17-39 (2012)
* Zhiming Liu, Charles Morisset and Volker Stolz. "rCOS: Theory and Tool for Component-Based Model Driven Development, Keynote at FSEN09"
''Technical Report 406'' UNU-IIST, P.O. Box 3058, Macau, February 2009.
* Zhenbang Chen, Zhiming Liu,
Ander P. Ravn and Volker Stolz (2009). "Refinement and Verification in Component-Based Model Driven Design". UNU-IIST Research Report 381. ''
Science of Computer Programming'', 74(4):168-196, 2009.
* Liang Zhao, Xiaojian Liu, Zhiming Liu and Zongyan Qiu (2009). "Graph transformations for object-oriented refinement", ''
Formal Aspects of Computing'', 21(1-2):103-131, 2009.
*He Jifeng, Xiaoshan Li, and Zhiming Liu. "Component-based software engineering". In Pro. ICTAC’2005, ''
Lecture Notes in Computer Science'' volume 3722. Springer, 2005.
*He Jifeng, Xiaoshan Li, and Zhiming Liu. "rCOS: A refinement calculus for object systems". ''
Theoretical Computer Science'', 365(1–2):109–142, 2006.
*He Jifeng, Zhiming Liu, and Xiaoshan Li. "A theory of reactive components" ''
Electronic Notes in Theoretical Computer Science'', 160:173–195, 2006.
*Xin Chen, He Jifeng, Zhiming Liu and Naijun Zhan. "A model of component-based programming". Proc. FSEN 2007, Computer Science, ''Lecture Notes in Computer Science'' 4767, pp. 191–208.
*Xin Chen, Zhiming Liu, and Vladimir Mencl. "Separation of concerns and consistent integration in requirements modelling". In ''Proc. Current Trends in Theory and Practice of Computer Science'', ''Lecture Notes in Computer Science]''. Springer, 2007.
See also
*
Unifying Theories of Programming (UTP)
References
{{reflist
External links
rCOS website
Year of introduction missing
Object-oriented programming
Component-based software engineering
Formal methods
United Nations University