Abstract
The importance of modelling the dynamic characteristics of the architecture of software systems has long been recognised. However, the nature of the dynamics of service-oriented applications goes beyond what is currently addressed by architecture description languages (ADLs). At the heart of the service-oriented approach is the logical separation between the service need and the need-fulfillment mechanism, i.e., the provision of the service: the binding between the requester and the provider is deferred to run time and established at the instance level, i.e., each time the need for the service arises. As a consequence, computation in the context of service-oriented architectures transforms not only the states of the components that implement applications but also the configurations of those applications. In this paper, we present a model for dynamic reconfiguration that is general enough to support the definition of ADLs that are able to address the full dynamics of service-oriented applications. As an instance of the model, we present a simple service-oriented ADL derived from the modelling language srml that we developed in the Sensoria project.
Similar content being viewed by others
References
Abreu J., Bocchi L., Fiadeiro J.L., Lopes A.: Specifying and composing interaction protocols for service-oriented system modelling. In: Derrick, J., Vain, J. (eds) FORTE. LNCS, vol. 4574, pp. 358–373. Springer, Berlin (2007)
Abreu J., Mazzanti F., Fiadeiro J.L., Gnesi S.: A model-checking approach for service component architectures. In: Lee, D., Lopes, A., Poetzsch-Heffter, A. (eds) FMOODS/FORTE. LNCS, vol. 5522, pp. 219–224. Springer, Berlin (2009)
Allen, R., Douence, R., Garlan, D.: Specifying and analyzing dynamic software architectures. In: FASE, pp. 21–37 (1998)
Batista T.V., Joolia A., Coulson G.: Managing dynamic reconfiguration in component-based systems. In: Morrison, R., Oquendo, F. (eds) EWSA. LNCS, vol. 3527, pp. 1–17. Springer, Berlin (2005)
Bistarelli S., Montanari U., Rossi F.: Semiring-based constraint satisfaction and optimization. J. ACM 44(2), 201–236 (1997)
Bistarelli S., Santini F.: A nonmonotonic soft concurrent constraint language for SLA negotiation. Electron. Notes Theor. Comput. Sci 236, 147–162 (2009)
Bocchi, L., Fiadeiro, J.L., Gilmore, S., Abreu, J., Solanki, M., Vankayala, V.: A formal approach to modelling time properties of service oriented systems. In: Handbook of Research on Non-Functional Properties for Service-Oriented Systems: Future Directions. Advances in Knowledge Management Book Series. IGI Global (2012, in press)
Bocchi L., Fiadeiro J.L., Lapadula A., Pugliese R., Tiezzi F.: From architectural to behavioural specification of services. Electron. Notes Theor. Comput. Sci 253(1), 3–21 (2009)
Bocchi L., Fiadeiro J.L., Lopes A.: Service-oriented modelling of automotive systems. In: COMPSAC. IEEE Computer Society, pp. 1059–1064 (2008)
Bocchi L., Fiadeiro J.L., Lopes A.: A use-case driven approach to formal service-oriented modelling. In: Margaria, T., Steffen, B. (eds) ISoLA. Communications in Computer and Information Science, vol. 17, pp. 155–169. Springer, Berlin (2008)
Bocchi L., Hong Y., Lopes A., Fiadeiro J.L.: From BPEL to SRML: A formal transformational approach. In: Dumas, M., Heckel, R. (eds) WS-FM. LNCS, vol. 4937, pp. 92–107. Springer, Berlin (2007)
Boreale M. et al.: SCC: a service centered calculus. In: Bravetti, M., Núñez, M., Zavattaro, G. (eds) WS-FM. LNCS, vol. 4184, pp. 38–57. Springer, Berlin (2006)
Broy, M.: From “formal methods” to system modeling. In: Jones, C.B., Liu, C.B., Woodcock, J. (eds.) Formal Methods and Hybrid Real-Time Systems. Lecture Notes in Computer Science, vol. 4700, pp. 24–44. Springer, Berlin (2007)
Bruni R., Bucchiarone A., Gnesi S., Hirsch D., Lluch-Lafuente A.: Graph-based design and analysis of dynamic software architectures. In: Degano, P., Nicola, R.D., Meseguer, J. (eds) Concurrency Graphs and Models. LNCS, vol. 5065, pp. 37–56. Springer, Berlin (2008)
Bruni, R., Lluch-Lafuente, A., Montanari, U., Tuosto, E.: Service oriented architectural design. In: Barthe,G., Fournet, G. (ed.) TGC. Lecture Notes in Computer Science, vol. 4912, pp. 186–203. Springer, Berlin (2007)
Carbone, M., Honda, K., Yoshida, N.: Structured communication-centred programming for web services. In: De Nicola [18], pp. 2–17
Coulson, G., Blair, G.S., Grace, P., Taïani, F., Joolia, A., Lee, K., Ueyama, J., Sivaharan, T.: A generic component model for building systems software. ACM Trans. Comput. Syst. 26(1), (2008)
De Nicola, R. (ed): Programming Languages and Systems. LNCS, vol. 4421. Springer, Berlin (2007)
Elfatatry A.: Dealing with change: components versus services. Commun. ACM 50(8), 35–39 (2007)
Fargier, H., Lang, J., Schiex, T.: Mixed constraint satisfaction: a framework for decision problems under incomplete knowledge. In: AAAI/IAAI, vol. 1, pp. 175–180 (1996)
Fiadeiro J.L.: Categories for Software Engineering. Springer, Berlin (2004)
Fiadeiro J.L., Lopes A.: A model for dynamic reconfiguration in service-oriented architectures. In: Babar, M.A., Gorton, I. (eds) ECSA. LNCS, vol. 6285, pp. 70–85. Springer, Berlin (2010)
Fiadeiro, J.L., Lopes, A., Abreu, J.: A formal model for service-oriented interactions. Sci. Comput. Program (2011, in print)
Fiadeiro J.L., Lopes A., Bocchi L.: An abstract model of service discovery and binding. Formal Asp. Comput. 23(4), 433–463 (2011)
Fiadeiro, J.L., Lopes, A., Bocchi, L., Abreu, J.: The Sensoria reference modelling language. In: Wirsing and Hölzl [45], pp. 61–114
Garlan D., Cheng S.-W., Huang A.-C., Schmerl B.R., Steenkiste P.: Rainbow: architecture-based self-adaptation with reusable infrastructure. IEEE Comput. 37(10), 46–54 (2004)
Gilmore S., Hillston J.: The PEPA workbench: a tool to support a process algebra-based approach to performance modelling. In: Haring, G., Kotsis, G. (eds) Computer Performance Evaluation. LNCS, vol. 794, pp. 353–368. Springer, Berlin (1994)
Kon F., Costa F.M., Blair G.S., Campbell R.H.: The case for reflective middleware. Commun. ACM 45(6), 33–38 (2002)
Lapadula, A., Pugliese, R., Tiezzi F.: A calculus for orchestration of web services. In: De Nicola [18], pp. 33–47
Léger M., Ledoux T., Coupaye T.: Reliable dynamic reconfigurations in a reflective component model. In: Grunske, L., Reussner, R., Plasil, F. (eds) CBSE. LNCS, vol. 6092, pp. 74–92. Springer, Berlin (2010)
Lucchi R., Mazzara M.: A π-calculus based semantics for WS-BPEL. J. Log. Algebr. Program. 70(1), 96–118 (2007)
Magee, J., Kramer J.: Dynamic structure in software architectures. In: SIGSOFT FSE, pp. 3–14 (1996)
Morrison, R., Kirby, G.N.C., Balasubramaniam, D., Mickan, K., Oquendo, F., Cîmpan, S., Warboys, B., Snowdon, B., Greenwood, R.M.: Support for evolving software architectures in the archware ADL. In: WICSA, pp. 69–78. IEEE Computer Society (2004)
Oquendo F.: π-ADL: an architecture description language based on the higher-order typed pi-calculus for specifying dynamic and mobile software architectures. ACM SIGSOFT Softw. Eng. Notes 29(3), 1–14 (2004)
Oquendo F.: Formal approach for the development of business processes in terms of service-oriented architectures using π-ADL. In: Lee, J., Liang, D., Cheng, Y.C. (eds) SOSE, pp. 154–159. IEEE Computer Society, Berlin (2008)
Oreizy P., Taylor R.N.: On the role of software architectures in runtime system reconfiguration. IEE Proc. Softw. 145(5), 137–145 (1998)
OSOA. Service component architecture: Building systems using a service oriented architecture, 2005. White paper available from http://www.osoa.org
Perry D.E., Wolf A.L.: Foundations for the study of software architecture. SIGSOFT Softw. Eng. Notes 17(4), 40–52 (1992)
Reichel H.: Initial Computability, Algebraic Specifications, and Partial Algebras. Oxford University Press Inc., New York (1987)
Sanz M.L., Qayyum Z., Cuesta C.E., Marcos E., Oquendo F.: Representing service-oriented architectural models using π-ADL. In: Morrison, R., Balasubramaniam, D., Falkner, K.E. (eds) ECSA. LNCS, vol. 5292, pp. 273–280. Springer, Berlin (2008)
Simonot, M., Aponte V.: A declarative formal approach to dynamic reconfiguration. In: Proceedings of the 1st international workshop on Open component ecosystems, IWOCE’09, pp. 1–10. ACM, New York, 2009
Tiberghien A., Merle P., Seinturier L.: Specifying self-configurable component-based systems with fractoy. In: Frappier, M., Glässer, U., Khurshid, S., Laleau, R., Reeves, S. (eds) ASM. LNCS, vol. 5977, pp. 91–104. Springer, Berlin (2010)
Wermelinger M., Fiadeiro J.L.: A graph transformation approach to software architecture reconfiguration. Sci. Comput. Program. 44(2), 133–155 (2002)
Wermelinger, M., Lopes, A., Fiadeiro, J.L.: A graph based architectural (re)configuration language. In: ESEC / SIGSOFT FSE, pp. 21–32 (2001)
Wirsing, M., Hölzl, M. (eds): Rigorous Software Engineering for Service-Oriented Systems. LNCS, vol. 6582. Springer, Berlin (2011)
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Dr. Muhammad Ali Babar, Flavio Oquendo, and Ian Gorton.
Rights and permissions
About this article
Cite this article
Fiadeiro, J.L., Lopes, A. A model for dynamic reconfiguration in service-oriented architectures. Softw Syst Model 12, 349–367 (2013). https://doi.org/10.1007/s10270-012-0236-1
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-012-0236-1