Abstract
Component-based programming is about how to create application programs from prefabricated components with new software that provides both glue between the components, and new functionality. Models of components are required to support black-box compositionality and substitutability by a third party as well as interoperability. However, the glue codes and programs designed by users of the components for new applications in general do not require these features, and they can be even designed in programming paradigms different from those of the components. In this paper, we extend the rCOS calculus of components with a model for glue programs and application programs that is different from that of components. We study the composition of a glue program with components and prove that the components glued by the glue program yield a new component.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Arbab, F.: Abstract behavior types: A foundation model for components and their composition. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2002. LNCS, vol. 2852, pp. 33–70. Springer, Heidelberg (2003)
He, J., Liu, Z., Li, X.: Component software engineering. In: Van Hung, D., Wirsing, M. (eds.) ICTAC 2005. LNCS, vol. 3722, pp. 269–276. Springer, Heidelberg (2005)
He, J., Li, X., Liu, Z.: A theory of reactive components. In: Proc. of FACS 2005. ENTCS, vol. 160, pp. 173–195. Elsevier, Amsterdam (2006)
Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)
Roscoe, A.: The Theory and Practice of Concurrency. Prentice-Hall, Englewood Cliffs (1997)
Chen, X., He, J., Liu, Z., Zhan, N.: Component-based programming. Technical Report UNU-IIST Report No 350 (April 2007)
Hoare, C., He, J.: Unifying Theories of Programming. Prentice-Hall International, Englewood Cliffs (1998)
He, J., Li, X., Liu, Z.: rCOS: A refinement calculus of object systems. Theoretical Computer Science 365(1-2), 109–142 (2006)
McDirmid, S., Hsieh, W.: Superglue: Component programming with object-oriented signals. In: Thomas, D. (ed.) ECOOP 2006. LNCS, vol. 4067, pp. 206–229. Springer, Heidelberg (2006)
McDirmid, S., Flatt, M., Hsieh, W.: Jiazzi: New-age components for old-fashioned java. In: Proc. of OOPSLA 2001, pp. 211–222. ACM Press, New York (2001)
Liu, Y., Smith, S.: Modules with interfaces for dynamic linking and communication. In: Odersky, M. (ed.) ECOOP 2004. LNCS, vol. 3086, pp. 414–439. Springer, Heidelberg (2004)
Xie, F., Browne, J.: Verified systems by composition from verified components. In: FSE 2003, pp. 277–286. ACM, New York (2003)
Broy, M., Stølen, K.: Specification and Development of Interactive Systems: FOCUS on Streams, Interfaces, and Refinement. Springer, Heidelberg (2001)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Chen, X., He, J., Liu, Z., Zhan, N. (2007). A Model of Component-Based Programming. In: Arbab, F., Sirjani, M. (eds) International Symposium on Fundamentals of Software Engineering. FSEN 2007. Lecture Notes in Computer Science, vol 4767. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-75698-9_13
Download citation
DOI: https://doi.org/10.1007/978-3-540-75698-9_13
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-75697-2
Online ISBN: 978-3-540-75698-9
eBook Packages: Computer ScienceComputer Science (R0)