Dynamically Evolvable Dependable Software: From Oxymoron to Reality

  • Carlo Ghezzi
  • Paola Inverardi
  • Carlo Montangero
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5065)


We analyze the main motivations that lead to the present need for supporting continuous software evolution, and discuss some of the reasons for change requirements. Achieving software that is both dynamically evolvable and dependable is our long-term research goal. We do not attempt here to propose a unified solution to dissolve the apparent oximoron, i.e. to reconcile these apparently conflicting goals. Rather, we enlighten different facets of the problem by distilling our experience through three research experience reports. We discuss the lessons learned from the state of the art and practice exemplified by our approaches and outline the directions of possible future research.


Business Process Service Composition Service Level Agreement Composite Service Business Process Management 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    IWPSE, WEB site, 2007 (2007),
  2. 2.
    Active Endpoints. Activebpel engine architecture,
  3. 3.
    Andrews, T., Curbera, F., Dholakia, H., Goland, Y., Klein, J., Leymann, F., Liu, K., Roller, D., Smith, D., Thatte, S., Trickovic, I., Weerawarana, S.: Business Process Execution Language for Web Services, Version 1.1 (May 2003)Google Scholar
  4. 4.
    Autili, M., Berardinelli, L., Cortellessa, V., Marco, A.D., Ruscio, D.D., Inverardi, P., Tivoli, M.: A development process for self-adapting service oriented applications. In: Krämer, B.J., Lin, K.-J., Narasimhan, P. (eds.) ICSOC 2007. LNCS, vol. 4749, pp. 442–448. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  5. 5.
    Autili, M., Cortellessa, V., Benedetto, P.D., Inverardi, P.: On the adptation of context-aware services. In: Krämer, B.J., Lin, K.-J., Narasimhan, P. (eds.) ICSOC 2007. LNCS, vol. 4749, Springer, Heidelberg (2007)CrossRefGoogle Scholar
  6. 6.
    Baresi, L., Bianculli, D., Ghezzi, C., Guinea, S., Spoletini, P.: A timed extension of WSCoL. In: Proceedings of the IEEE International Conference on Web Services (ICWS 2007) (July 2007)Google Scholar
  7. 7.
    Baresi, L., Bianculli, D., Ghezzi, C., Guinea, S., Spoletini, P.: Validation of web service compositions. IET Software 1(6), 219–232 (2007)CrossRefGoogle Scholar
  8. 8.
    Baresi, L., Di Nitto, E., Ghezzi, C.: Towards Open-World Software. IEEE Computer 39, 36–43 (2006)Google Scholar
  9. 9.
    Baresi, L., Guinea, S.: Towards dynamic monitoring of WS-BPEL processes. In: Benatallah, B., Casati, F., Traverso, P. (eds.) ICSOC 2005. LNCS, vol. 3826, pp. 269–282. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  10. 10.
    Baresi, L., Guinea, S.: Dynamo and self-healing bpel compositions. In: ICSE Companion, pp. 69–70. IEEE Computer Society Press, Los Alamitos (2007)Google Scholar
  11. 11.
    Bartoletti, M., Degano, P., Ferrari, G., Zunino, R.: Secure service orchestration. In: Foundations of Security Analysis and Design IV, FOSAD 2006/2007 Tutorial Lectures, pp. 24–74 (2007)Google Scholar
  12. 12.
    Dwyer, M.B., Hatcliff, J., Hoosier, M., Robby,: Building your own software model checker using the Bogor extensible model checking framework. In: Etessami, K., Rajamani, S.K. (eds.) CAV 2005. LNCS, vol. 3576, pp. 148–152. Springer, Heidelberg (2005)Google Scholar
  13. 13.
    Ghezzi, C., Guinea, S.: Run-time monitoring in service-oriented architectures. In: Baresi, L., Di Nitto, E. (eds.) Test and Analysis of Web Services, pp. 237–264. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  14. 14.
    Ghezzi, C., Mandrioli, D., Morasca, S., Pezzè, M.: A unified high-level petri net formalism for time-critical systems. IEEE Trans. Softw. Eng. 17(2), 160–172 (1991)CrossRefGoogle Scholar
  15. 15.
    Gorton, S., Reiff-Marganiec, S.: Towards a task-oriented, policy-driven business requirements specification for web services. In: Business Process Management, pp. 465–470 (2006)Google Scholar
  16. 16.
    ERCIM Working Group (2007),
  17. 17.
    Inverardi, P.: Software of the future is the future of software? In: Montanari, U., Sannella, D., Bruni, R. (eds.) TGC 2007. LNCS, vol. 4661, pp. 69–85. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  18. 18.
    Inverardi, P., Levi, G., Montanari, U., Vallario, G.N.: A distributed KAPSE architecture. Ada Lett. III(2), 55–61 (1983)CrossRefGoogle Scholar
  19. 19.
    Inverardi, P., Mancinelli, F., Nesi, M.: A declarative framework for adaptable applications in heterogeneous environments. In: SAC 2004, pp. 1177–1183. ACM Press, New York (2004)CrossRefGoogle Scholar
  20. 20.
    Inverardi, P., Martini, S., Montangero, C.: Is type checking practical for system configuration? In: Díaz, J., Orejas, F. (eds.) TAPSOFT 1989 and CCIPL 1989. LNCS, vol. 352, pp. 257–271. Springer, Heidelberg (1989)Google Scholar
  21. 21.
    Inverardi, P., Mazzanti, F.: Experimenting with dynamic linking with ada. Softw., Pract. Exper. 23(1), 1–14 (1993)CrossRefGoogle Scholar
  22. 22.
    Inverardi, P., Montanari, U., Vallario, G.N.: How to develop a programming environment almost completely in a compiled language. In: International Computing Symposium 1983 on Application Systems Development, pp. 429–438. Teubner (1983)Google Scholar
  23. 23.
    Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Videira Lopes, C., Loingtier, J.M., Irwin, J.: Aspect-oriented programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  24. 24.
    Koch, N., Berndl, D.: Requirements modelling and analysis of selected scenarios: Automotive case study. Technical report, SENSORIA EU–IST–016004 (2007),
  25. 25.
    Koch, N., Mayer, P., Heckel, R., Gonczy, L., Montangero, C.: UML for service-oriented systems, SENSORIA EU-IST 016004 Deliverable D1.4.a (2007),
  26. 26.
    Lehman, M.M., Belady, L.A.: Program evolution: processes of software change. Academic Press Professional, Inc., San Diego (1985)Google Scholar
  27. 27.
    Leveson, N.G.: A systems-theoretic approach to safety in software-intensive systems. IEEE Trans. Dependable Sec. Comput. 1(1), 66–86 (2004)CrossRefGoogle Scholar
  28. 28.
    Fiadeiro, J.L., Lopes, A., Bocchi, L.: A Formal Approach to Service Component Architecture. Web Services and Formal Methods 4184, 193–213 (2006)CrossRefGoogle Scholar
  29. 29.
    Mancinelli, F., Inverardi, P.: Quantitative resource-oriented analysis of java (adaptable) applications. In: WOSP 2007: Proceedings of the 6th international workshop on Software and performance, pp. 15–25. ACM Press, New York (2007)CrossRefGoogle Scholar
  30. 30.
    Mandrioli, D., Zicari, R., Ghezzi, C., Tisato, F.: Modeling the ada task system by petri nets. Computer Languages (1985)Google Scholar
  31. 31.
    Montangero, C., Reiff-Marganiec, S., Semini, L.: Logic-based detection of conflicts in APPEL policies. In: Arbab, F., Sirjani, M. (eds.) FSEN 2007. LNCS, vol. 4767, pp. 257–271. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  32. 32.
    Montangero, C., Semini, L.: Distributed states logic. In: 9th International Symposium on Temporal Representation and Reasoning (TIME 2002), Manchester, UK, July 2002, IEEE CS Press, Los Alamitos (2002)Google Scholar
  33. 33.
    Morzenti, A., Mandrioli, D., Ghezzi, C.: A model parametric real-time logic. ACM Trans. Program. Lang. Syst. 14(4), 521–573 (1992)CrossRefGoogle Scholar
  34. 34.
    OMG. Business process modeling notation. Technical report (February 6, 2006),
  35. 35.
    IFIP WG 10.4 on Dependable Computing and Fault Tolerance. Dependability: Basic concepts and terminology (October 1990)Google Scholar
  36. 36.
    Parnas, D.L.: On the criteria to be used in decomposing systems into modules. pp. 139–150 (1979)Google Scholar
  37. 37.
    ART DECO Project. Description of Work (2005),
  38. 38.
    PLASTIC Project. Description of Work (2005),
  39. 39.
    SeCSE Project. Description of Work (2004),
  40. 40.
    Reiff-Marganiec, S., Turner, K.J., Blair, L.: Appel: The accent project policy environment/language. Technical Report TR-161, University of Stirling (December 2005)Google Scholar
  41. 41.
    The SeCSE Team. Designing and deploying service-centric systems: The SeCSE way. In: Proceedings of Service Oriented Computing: a look at the Inside (SOC@Inside’07), workshop colocated with ICSOC 2007 (2007)Google Scholar
  42. 42.
    Turner, K.J., Reiff-Marganiec, S., Blair, L., Pang, J., Gray, T., Perry, P., Ireland, J.: Policy support for call control. Computer Standards and Interfaces 28(6), 635–649 (2006)CrossRefGoogle Scholar
  43. 43.
    Wirsing, M., Carizzoni, G., Gilmore, S., Gonczy, L., Koch, N., Mayer, P., Palasciano, C.: Software engineering for service-oriented overlay computers (2007),

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Carlo Ghezzi
    • 1
  • Paola Inverardi
    • 2
  • Carlo Montangero
    • 3
  1. 1.Deep-SE GroupDEI-Politecnico di Milano 
  2. 2.Dipartimento di InformaticaUniversità di L’Aquila 
  3. 3.Dipartimento di InformaticaUniversità di Pisa 

Personalised recommendations