Abstract
We present the roadmap of the development of the rCOS theory and its tool support for component-based model driven software development (CB-MDD). First the motivation for using CB-MDD, its needs for a theoretical foundation and tool support are discussed, followed by a discussion of the concepts, techniques and design decisions in the research of the theory and the development of the prototype tool. The concepts, techniques and decisions discussed here have been formalized and published. References to those publications are provided with explanations. Based on the initial experiences with a case study and the preliminary rCOS tool development, further development trajectory leading to further integration with transformation and analysis plug-ins is delineated.
Supported by the projects HighQSoftD and HTTS funded Macao S&TD Fund and the grants CNSF No. 60970031, NSFC No.90718014 and STCSM No.08510700300.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Booch, G.: Object-oriented analysis and design with applications. Addison-Wesley, Reading (1994)
Burstall, R., Goguen, J.: Putting theories together to make specifications. In: Reddy, R. (ed.) Proc. 5th Intl. Joint Conf. on Artificial Intelligence, pp. 1045–1058. Department of Computer Science, Carnegie-Mellon University, USA (1977)
Chen, X., He, J., Liu, Z., Zhan, N.: A model of component-based programming. In: Arbab, F., Sirjani, M. (eds.) FSEN 2007. LNCS, vol. 4767, pp. 191–206. Springer, Heidelberg (2007)
Chen, X., Liu, Z., Mencl, V.: Separation of concerns and consistent integration in requirements modelling. In: van Leeuwen, J., Italiano, G.F., van der Hoek, W., Meinel, C., Sack, H., Plášil, F. (eds.) SOFSEM 2007. LNCS, vol. 4362, pp. 819–831. Springer, Heidelberg (2007)
Chen, Z., Hannousse, A.H., Hung, D.V., Knoll, I., Li, X., Liu, Y., Liu, Z., Nan, Q., Okika, J.C., Ravn, A.P., Stolz, V., Yang, L., Zhan, N.: Modelling with relational calculus of object and component systems–rCOS. In: Rausch, A., Reussner, R., Mirandola, R., Plášil, F. (eds.) The Common Component Modeling Example. LNCS, vol. 5153, pp. 116–145. Springer, Heidelberg (2008)
Chen, Z., Liu, Z., Ravn, A.P., Stolz, V., Zhan, N.: Refinement and verification in component-based model driven design. Science of Computer Programming 74(4), 168–196 (2008); Special Issue on the Grand Challenge. UNU-IIST TR 388
Chen, Z., Liu, Z., Stolz, V.: The rCOS tool. In: Fitzgerald, J., Larsen, P.G., Sahara, S. (eds.) Modelling and Analysis in VDM: Proceedings of the Fourth VDM/Overture Workshop, Newcastle University. CS-TR-1099 in Technical Report Series (May 2008)
Chen, Z., Morisset, C., Stolz, V.: Specification and validation of behavioural protocols in the rCOS modeler. In: Arbab, F., Sirjani, M. (eds.) FSEN 2009. LNCS, vol. 5961, pp. 387–401. Springer, Heidelberg (2010)
CWB. The concurrency workbench, http://homepages.inf.ed.ac.uk/perdita/cwb/
Dijkstra, E.: Notes on structured programming. In: Dahl, O.-J., Hoare, C.A.R., Dijkstra, E.W. (eds.) Structured Programming. Academic Press, London (1972)
Fowler, M., Beck, K., Brant, J., Opdyke, W., Roberts, D.: Refactoring: Improving the Design of Existing Code. Addison-Wesley, Reading (1999)
Frederick, P., Brooks, J.: No silver bullet: essence and accidents of software engineering. Computer 20(4), 10–19 (1987)
Frederick, P., Brooks, J.: The mythical man-month: after 20 years. IEEE Software 12(5), 57–60 (1995)
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1995)
Goguen, J., Burstall, R.: Institutions: abstract model theory for specification and programming. Journal of ACM 39(1), 95–146 (1992)
Jifeng, H., Li, X., Liu, Z.: Component-based software engineering. In: Van Hung, D., Wirsing, M. (eds.) ICTAC 2005. LNCS, vol. 3722, pp. 70–95. Springer, Heidelberg (2005); UNU-IIST TR 330
He, J., Liu, Z., Li, X.: rCOS: A refinement calculus of object systems. Theor. Comput. Sci. 365(1-2), 109–142 (2006); UNU-IIST TR 322
Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)
Hoare, C.A.R., He, J.: Unifying Theories of Programming. Prentice-Hall, Englewood Cliffs (1998)
Holzmann, G.J.: The SPIN Model Checker: Primer and Reference Manual. Addison-Wesley Professional (2003)
Jones, C.B.: Systematic Software Development using VDM. Prentice-Hall, Englewood Cliffs (1990)
Lamport, L.: The temporal logic of actions. ACM Transactions on Programming Languages and Systems 16(3), 872–923 (1994)
Larman, C.: Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and the Unified Process, 2nd edn. Prentice-Hall, Englewood Cliffs (2001)
Li, D., Li, X., Liu, J., Liu, Z.: Validation of requirements models by automatic prototyping. J. Innovations in Systems and Software Engineering 4(3), 241–248 (2008)
Liu, Z., Kang, E., Zhan, N.: Composition and refinement of components. In: Post event Proceedings of UTP 2008. LNCS. Springer, Heidelberg (to appear, 2009)
Liu, Z., Mencl, V., Ravn, A.P., Yang, L.: Harnessing theories for tool support. In: Proc. of the Second Intl. Symp. on Leveraging Applications of Formal Methods, Verification and Validation (isola 2006), pp. 371–382. IEEE Computer Society, Los Alamitos (2006); Full version as UNU-IIST Technical Report 343
Long, Q., Qiu, Z., Liu, Z.: Formal use of design patterns and refactoring. In: Margaria, T., Steffen, B. (eds.) International Symposium on Leveraging Applications of Formal Methods, Verification and Validation. Communications in Computer and Information Science, vol. 17, pp. 323–338. Springer, Heidelberg (2008)
Manna, Z., Pnueli, A.: The temporal logic of reactive and concurrent systems: specification. Springer, Heidelberg (1992)
Manna, Z., Pnueli, A.: The temporal logic of reactive systems: safety. Springer, Heidelberg (1992)
Milner, R.: Communication and concurrency. Prentice-Hall, Englewood Cliffs (1989)
Morgan, C.C.: Programming from Specifications. Prentice-Hall, Englewood Cliffs (1994)
Ossher, H., Tarr, P.: Using multidimensional separation of concerns to (re)shape evolving software. Commun. ACM 44(10), 43–50 (2001)
Paige, R., Brooke, P., Ostroff, J.: Metamodel-based model conformance and multiview consistency checking. ACM Trans.Softw.Eng.Methodol. 16(3), 11 (2007)
Parnas, D.: On the criteria to be used to decompose systems into modules. Communication of ACM 15, 1053–1058 (1972)
Peter, L.: The Peter Pyramid. William Morrow, New York (1986)
Roscoe, A.W.: Theory and Practice of Concurrency. Prentice-Hall, Englewood Cliffs (1997)
Schneider, A.: The B-method. Masson (2001)
Sommerville, I.: Software Engineering, 6th edn. Addison-Wesley, Reading (2001)
SRI. PVS specification and verification system, http://pvs.csl.sri.com/
Szyperski, C.: Component Software: Beyond Object-Oriented Programming. Addison-Wesley, Reading (1997)
Wirsing, M., Banâtre, J.-P., Hölzl, M., Rauschmayer, A. (eds.): Software-Intensive Systems and New Computing Paradigms. LNCS, vol. 5380. Springer, Heidelberg (2008)
Woodcock, J., Davies, J.: Using Z: Specification, Refinement, and Proof. Prentice-Hall, Englewood Cliffs (1996)
Yang, L., Stolz, V.: Integrating refinement into software development tools. In: Pu, G., Stolz, V. (eds.) 1st Workshop on Harnessing Theories for Tool Support in Software. Electr. Notes in Theor. Comp. Sci., vol. 207, pp. 69–88. Elsevier, Amsterdam (2008); UNU-IIST TR 385
Zhao, L., Liu, X., Liu, Z., Qiu, Z.: Graph transformations for object-oriented refinement. Formal Aspects of Computing 21(1-2), 103–131 (2009)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Liu, Z., Morisset, C., Stolz, V. (2010). rCOS: Theory and Tool for Component-Based Model Driven Development. In: Arbab, F., Sirjani, M. (eds) Fundamentals of Software Engineering. FSEN 2009. Lecture Notes in Computer Science, vol 5961. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-11623-0_3
Download citation
DOI: https://doi.org/10.1007/978-3-642-11623-0_3
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-11622-3
Online ISBN: 978-3-642-11623-0
eBook Packages: Computer ScienceComputer Science (R0)