Abstract
Component-based development (CBD) is a promising approach to master design complexity. In addition, the knowledge about the architecture of a component system can help in establishing important system properties, which in general is computationally hard because of the state space explosion problem. Extending previous work, we here investigate the novel class of disjoint circular wait free component systems and show how we can use the architectural information to establish a condition for the important property of deadlock-freedom in polynomial time. A running example is included. We use the framework of interaction systems, but our result carries over to other CBD models.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
van der Aalst, W.M.P., van Hee, K.M., van der Toorn, R.A.: Component-based software architectures: a framework based on inheritance of behavior. Science of Computer Programming 42(2-3), 129–171 (2002)
Allen, R., Garlan, D.: A formal basis for architectural connection. ACM Transactions on Software Engineering and Methodology 6(3), 213–249 (1997)
Arbab, F.: Reo: a channel-based coordination model for component composition. Mathematical Structures in Computer Science 14(3), 329–366 (2004)
Baier, C., Blechmann, T., Klein, J., Klüppelholz, S.: A Uniform Framework for Modeling and Verifying Components and Connectors. In: Field, J., Vasconcelos, V.T. (eds.) COORDINATION 2009. LNCS, vol. 5521, pp. 247–267. Springer, Heidelberg (2009)
Barboni, E., Bastide, R.: Software components: a formal semantics based on coloured Petri nets. In: Proceedings of the 2nd International Workshop on Formal Aspects of Component Software (FACS 2005). Electronic Notes in Theoretical Computer Science, vol. 160, pp. 57–73. Elsevier (2006)
Basu, A., Bozga, M., Sifakis, J.: Modeling heterogeneous real-time components in BIP. In: Proceedings of the 4th International Conference on Software Engineering and Formal Methods (SEFM 2006), pp. 3–12. IEEE Press (2006)
Baumeister, H., Hacklinger, F., Hennicker, R., Knapp, A., Wirsing, M.: A component model for architectural programming. In: Proceedings of the 2nd International Workshop on Formal Aspects of Component Software (FACS 2005). Electronic Notes in Theoretical Computer Science, vol. 160, pp. 75–96. Elsevier (2006)
Bensalem, S., Bozga, M., Sifakis, J., Nguyen, T.-H.: Compositional Verification for Component-Based Systems and Application. In: Cha, S(S.), Choi, J.-Y., Kim, M., Lee, I., Viswanathan, M. (eds.) ATVA 2008. LNCS, vol. 5311, pp. 64–79. Springer, Heidelberg (2008)
Bensalem, S., Bozga, M., Nguyen, T.-H., Sifakis, J.: D-finder: A Tool for Compositional Deadlock Detection and Verification. In: Bouajjani, A., Maler, O. (eds.) CAV 2009. LNCS, vol. 5643, pp. 614–619. Springer, Heidelberg (2009)
Bernardo, M., Ciancarini, P., Donatiello, L.: Architecting families of software systems with process algebras. ACM Transactions on Software Engineering and Methodology 11(4), 386–426 (2002)
Bozga, M.D., Sfyrla, V., Sifakis, J.: Modeling synchronous systems in BIP. In: Proceedings of the 7th International Conference on Embedded software (EMSOFT 2009), pp. 77–86. ACM Press (2009)
Brookes, S.D., Roscoe, A.W.: Deadlock analysis in networks of communicating processes. Distributed Computing 4(4), 209–230 (1991)
Cheng, A., Esparza, J., Palsberg, J.: Complexity Results for 1-Safe Nets. In: Shyamasundar, R.K. (ed.) FSTTCS 1993. LNCS, vol. 761, pp. 326–337. Springer, Heidelberg (1993)
da Silva, L.D., Perkusich, A.: Composition of software artifacts modelled using colored Petri nets. Science of Computer Programming 56(1-2), 171–189 (2005)
de Alfaro, L., Henzinger, T.: Interface Theories for Component-Based Design. In: Henzinger, T.A., Kirsch, C.M. (eds.) EMSOFT 2001. LNCS, vol. 2211, pp. 148–165. Springer, Heidelberg (2001)
Doyen, L., Henzinger, T.A., Jobstmann, B., Petrov, T.: Interface theories with component reuse. In: Proceedings of the 8th International Conference on Embedded Software (EMSOFT 2008), pp. 79–88. ACM Press (2008)
Godefroid, P., Wolper, P.: Using Partial Orders for the Efficient Verification of Deadlock Freedom and Safety Properties. In: Larsen, K.G., Skou, A. (eds.) CAV 1991. LNCS, vol. 575, pp. 332–342. Springer, Heidelberg (1992)
Gößler, G., Sifakis, J.: Composition for Component-Based Modeling. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2002. LNCS, vol. 2852, pp. 443–466. Springer, Heidelberg (2003)
Hennicker, R., Janisch, S., Knapp, A.: On the observable behaviour of composite components. In: Proceedings of the 5th International Workshop on Formal Aspects of Component Software (FACS 2008). Electronic Notes in Theoretical Computer Science, vol. 260, pp. 125–153. Elsevier (2010)
Lambertz, C.: Exploiting architectural constraints and branching bisimulation equivalences in component-based systems. In: Proceedings of the Doctoral Symposium of the 2nd World Congress on Formal Methods (FM 2009-DS), no. 0915 in Eindhoven University of Technology Technical Report, Eindhoven, pp. 1–7 (2009)
Majster-Cederbaum, M., Martens, M.: Compositional analysis of deadlock-freedom for tree-like component architectures. In: Proceedings of the 8th International Conference on Embedded Software (EMSOFT 2008), pp. 199–206. ACM Press (2008)
Majster-Cederbaum, M., Martens, M.: Using architectural constraints for deadlock-freedom of component systems with multiway cooperation. In: Proceedings of the 3rd International Symposium on Theoretical Aspects of Software Engineering (TASE 2009), pp. 225–232. IEEE Press (2009)
Majster-Cederbaum, M., Minnameier, C.: Everything is PSPACE-Complete in Interaction Systems. In: Fitzgerald, J.S., Haxthausen, A.E., Yenigun, H. (eds.) ICTAC 2008. LNCS, vol. 5160, pp. 216–227. Springer, Heidelberg (2008)
Majster-Cederbaum, M., Semmelrock, N.: Reachability in tree-like component systems is PSPACE-complete. In: Proceedings of the 6th International Workshop on Formal Aspects of Component Software (FACS 2009). Electronic Notes in Theoretical Computer Science, vol. 263, pp. 197–210. Elsevier (2010)
Montesi, F., Sangiorgi, D.: A Model of Evolvable Components. In: Wirsing, M., Hofmann, M., Rauschmayer, A. (eds.) TGC 2010, LNCS, vol. 6084, pp. 153–171. Springer, Heidelberg (2010)
Ramos, R., Sampaio, A., Mota, A.: Systematic Development of Trustworthy Component Systems. In: Cavalcanti, A., Dams, D.R. (eds.) FM 2009. LNCS, vol. 5850, pp. 140–156. Springer, Heidelberg (2009)
Plášil, F., Višňovský, S.: Behavior protocols for software components. IEEE Transactions on Software Engineering 28(11), 1056–1076 (2002)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Lambertz, C., Majster-Cederbaum, M. (2012). Analyzing Component-Based Systems on the Basis of Architectural Constraints. In: Arbab, F., Sirjani, M. (eds) Fundamentals of Software Engineering. FSEN 2011. Lecture Notes in Computer Science, vol 7141. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-29320-7_5
Download citation
DOI: https://doi.org/10.1007/978-3-642-29320-7_5
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-29319-1
Online ISBN: 978-3-642-29320-7
eBook Packages: Computer ScienceComputer Science (R0)