Skip to main content
Log in

A journey to highly dynamic, self-adaptive service-based applications

  • Published:
Automated Software Engineering Aims and scope Submit manuscript

Abstract

Future software systems will operate in a highly dynamic world. Systems will need to operate correctly despite of unespected changes in factors such as environmental conditions, user requirements, technology, legal regulations, and market opportunities. They will have to operate in a constantly evolving environment that includes people, content, electronic devices, and legacy systems. They will thus need the ability to continuously adapt themselves in an automated manner to react to those changes. To realize dynamic, self-adaptive systems, the service concept has emerged as a suitable abstraction mechanism. Together with the concept of the service-oriented architecture (SOA), this led to the development of technologies, standards, and methods to build service-based applications by flexibly aggregating individual services. This article discusses how those concepts came to be by taking two complementary viewpoints. On the one hand, it evaluates the progress in software technologies and methodologies that led to the service concept and SOA. On the other hand, it discusses how the evolution of the requirements, and in particular business goals, influenced the progress towards highly dynamic self-adaptive systems. Finally, based on a discussion of the current state of the art, this article points out the possible future evolution of the field.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Abowd, G.D., Ebling, M., Gellersen, H.W., Hunt, G., Lei, H.: Guest editors’ introduction: Context-aware computing. IEEE Pervasive Comput. 01(3), 22–23 (2002)

    Article  Google Scholar 

  • Andrews, T. et al.: Business process execution language for Web services. Tech. rep., IBM (2003) http://www.ibm.com/developerworks/library/ws-bpel

  • Antón, A.: Goal-based requirements analysis. In: Proceedings of the 2nd International Conference on Requirements Engineering (ICRE ’96), April 15–18, 1996, Colorado Springs, Colorado, USA, pp. 136–144. IEEE Computer Society

  • Arsanjani, A.: Service-oriented modeling and architecture. IBM developerWorks article (November 2004) http://www.ibm.com/developerworks/library/ws-soa-design1

  • Babaoglu, O., Canright, G., Deutsch, A., Di Caro, G., Ducatelle, F., Gambardella, L., Ganguly, N., Jelasity, M., Montemanni, R., Montresor, A., Urnes, T.: Design patterns from biology for distributed computing. ACM Trans. Auton. Adapt. Syst. 1(1), 26–66 (2006). http://doi.acm.org/10.1145/1152934.1152937

    Article  Google Scholar 

  • Bai, X., Chen, Y., Shao, Z.: Adaptive web services testing. In: 31st Annual International Computer Software and Applications Conference (COMPSAC 2007), pp. 233–236 (2007a)

  • Bai, X., Xu, D., Dai, G., Tsai, W., Chen, Y.: Dynamic reconfigurable testing of service-oriented architecture. In: 31st Annual International Computer Software and Applications Conference (COMPSAC 2007), vol. 1, pp. 368–375 (2007b)

  • Baresi, L., Guinea, S.: Towards dynamic monitoring of ws-bpel processes. In: 3rd International Conference on Service-Oriented Computing (ICSOC 2005), pp. 269–282 (2005)

  • Baresi, L., Di Nitto, E.: Test and Analysis of Web Services. Springer, Berlin (2007)

    Google Scholar 

  • Baresi, L., Di Nitto, E., Ghezzi, C.: Toward open-world software: Issue and challenges. Comput. 39(10), 36–43 (2006)

    Article  Google Scholar 

  • Baresi, L., Bianculli, D., Ghezzi, C., Guinea, S., Spoletini, P.: Validation of web service compositions. IET Softw. 1(6), 219–232 (2007)

    Google Scholar 

  • Batini, C., Bolchini, D., Ceri, S., Matera, M., Maurino, A., Paolini, P.: The UM-MAIS methodology for multi-channel adaptive Web information systems. World Wide Web 10(4), 349–385 (2007)

    Article  Google Scholar 

  • Benbernou, S., Meziane, H., Hacid, M.S.: Run-time monitoring for privacy-agreement compliance. In: 5th International Conference on Service-Oriented Computing (ICSOC 2007), pp. 353–364 (2007)

  • Bertolino, A., Polini, A.: The audition framework for testing web services interoperability. In: EUROMICRO-SEAA, pp. 134–142. IEEE Computer Society, New York (2005)

    Google Scholar 

  • Bianculli, D., Ghezzi, C., Spoletini, P.: A model checking approach to verify BPEL4WS workflows. In: IEEE International Conference on Service-Oriented Computing and Applications (SOCA 2007), pp. 13–20 (2007)

  • Bultan, T., Fu, X., Su, J.: Run-time monitoring in service-oriented architectures. In: Baresi, L., Di Nitto, E. (eds.) Test and Analysis of Web Services, pp. 57–85. Springer, Berlin (2007)

    Chapter  Google Scholar 

  • Burlton, R.: Business Process Management: Profiting from Process. SAMS publishing, Indianapolis (2001)

    Google Scholar 

  • Canfora, G., Di Penta, M.: SOA: Testing and self-checking. In: International Workshop on Web Services—Modeling and Testing (WS-MaTE), pp. 3–12 (2006a)

  • Canfora, G., Di Penta, M.: Testing services and service-centric systems: Challenges and opportunities. IT Prof. 8(2), 10–17 (2006b)

    Google Scholar 

  • Charfi, A., Mezini, M.: Hybrid web service composition: Business processes meet business rules. In: 4th International Conference on Service Oriented Computing (ICSOC 2004)

  • Chhetri, M., Lin, J., Goh, S., Zhang, J., Kowalczyk, R., Yan, J.: A coordinated architecture for the agent-based service level agreement negotiation of Web service composition. In: Australian Software Engineering Conference (ASWEC’06), pp. 90–99 (2006)

  • Colombo, E., Mylopoulos, J., Spoletini, P.: Modeling and analyzing context-aware composition of services. In: 3rd International Conference on Service Oriented Computing (ICSOC 2005)

  • Colombo, M., Di Nitto, E., Mauri, M.: Scene: A service composition execution environment supporting dynamic changes disciplined through rules. In: ICSOC, pp. 191–202 (2006)

  • Comuzzi, M., Pernici, B.: An architecture for flexible Web service QoS negotiation. In: 9th IEEE International Enterprise Distributed Object Computing Conference (EDOC’05), pp. 70–82 (2005)

  • Cugola, G., Di Nitto, E., Fuggetta, A.: The JEDI event-based infrastructure and its application to the development of the OPSS WFMS. IEEE Trans. Softw. Eng. 27(9), 827–850 (2001)

    Article  Google Scholar 

  • Curbera, F.: Components contracts in service-oriented architectures. IEEE Comput. 11, 74–80 (2007)

    MathSciNet  Google Scholar 

  • Dai, G., Bai, X., Wang, Y., Dai, F.: Contract-based testing for Web services. In: 31st Annual International Computer Software and Applications Conference (COMPSAC 2007), vol. 1, pp. 517–524 (2007)

  • de Almeida, L.F.J., Vergilio, S.R.: Exploring perturbation based testing for web services. In: IEEE International Conference on Web Services (ICWS 2006), pp. 717–726 (2006)

  • Deussen, P., Din, G., Schieferdecker, I.: A TTCN-3 based online test and validation platform for Internet services. In: 6th International Symposium on Autonomous Decentralized Systems (ISADS), pp. 177–184 (2003)

  • Devescovi, D., Di Nitto, E., Dubois, D., Mirandola, R.: Self-organization algorithms for autonomic systems in the selflet approach. In: 1st International Conference on Autonomic Computing and Communication Systems (Autonomics ’07), pp. 1–10 (2007)

  • Dey, A.: Understanding and using context. Pers. Ubiquitous Comput. 5(1), 4–7 (2001)

    Article  Google Scholar 

  • Di Nitto, E., Di Penta, M., Gambi, A., Ripa, G., Villani, M.: Negotiation of service level agreements: An architecture and a search-based approach. In: 5th International Conference on Service-Oriented Computing (ICSOC 2007), pp. 295–306 (2007)

  • Di Penta, M., Bruno, M., Esposito, G., Mazza, V., Canfora, G.: Web services regression testing. In: Baresi, L., Di Nitto, E. (eds.) Test and Analysis of Web Services, pp. 205–234. Springer, New York (2007)

    Chapter  Google Scholar 

  • Emmerich, W., Sventek, J., Aoyama, M.: The impact of research on the development of middleware technology. ACM Trans. Softw. Eng. Methodol. 17(4) (2008)

  • Erl, T.: Service-Oriented Architecture. Prentice-Hall, Englewood Cliffs (2004)

    Google Scholar 

  • Foster, I., Kesselman, C.: The Grid: Blueprint for a New Computing Infrastructure. Morgan Kaufmann, Los Altos (2004)

    Google Scholar 

  • Foster, I., Kesselman, C., Nick, J., Tuecke, S.: The physiology of the grid: An open grid services architecture for distributed systems integration (2002). citeseer.ist.psu.edu/foster02physiology.html

  • Foster, H., Uchitel, S., Magee, J., Kramer, J.: LTSA-WS: A tool for model-based verification of web service compositions and choreography. In: 28th International Conference on Software Engineering (ICSE ’06), pp. 771–774 (2006)

  • Fu, X., Bultan, T., Su, J.: Analysis of interacting BPEL Web services. In: 13th International Conference on World Wide Web (WWW 2004), pp. 621–630 (2004)

  • Fuggetta, A.: A classification of case technology. Computer 26(12), 25–38 (1993). http://dx.doi.org/10.1109/2.247645

    Article  Google Scholar 

  • 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, New York (2007)

    Chapter  Google Scholar 

  • Harel, D., Lachover, H., Naamad, A., Pnueli, A., Politi, M., Sherman, R., Shtull-Trauring, A., Trakhtenbrot, M.: STATEMATE: A working environment for the development of complex reactive systems. IEEE Trans. Softw. Eng. 16(4), 403–414 (1990)

    Article  Google Scholar 

  • Heckel, R., Mariani, L.: Automatic conformance testing of web services. In: Fundamental Approaches to Software Engineering (FASE 05). LNCS, pp. 34–48 (2005)

  • IBM-MB, IBM websphere message broker (2008). http://www-306.ibm.com/software/integration/wbimessagebroker/

  • Jackson, M.: Problem Frames: Analyzing and Structuring Software Development Problems. Addison-Wesley Longman, Reading (2000)

    Google Scholar 

  • Jaeger, M., Rojec-Goldmann, G., Muhl, G.: QoS aggregation for web service composition using workflow patterns. In: 8th IEEE International Enterprise Distributed Object Computing Conference (EDOC ’04), pp. 149–159 (2004). http://dx.doi.org/10.1109/EDOC.2004.19

  • Jarke, M., Pohl, K.: Establishing visions in context: Toward a model of requirements processes. In: 14th International Conference on Information Systems (ICIS’93), pp. 23–34 (1993)

  • Josuttis, N.: SOA in Practice: The Art of Distributed System Design. O’Reilly Media, Sebastopol (2007)

    Google Scholar 

  • Kavantzas, N.: Web services choreography description language 1.0. Tech. rep., W3C (2004)

  • Kaye, D.: Loosely Coupled: The Missing Pieces of Web Services. RDS Press (2003)

  • Kazhamiakin, R., Pistore, M.: A parametric communication model for the verification of BPEL4WS compositions. In: 15th International Conference on World Wide Web (WWW 2006)

  • Kephart, J., Chess, D.: The vision of autonomic computing. IEEE Comput. 36(1), 41–50 (2003)

    Google Scholar 

  • Kreger, H. et al.: Management using web services: A proposed architecture and roadmap. Tech. rep., IBM, HP and Computer Associates (2005). http://www-128.ibm.com/developerworks/library/specification/ws-mroadmap

  • Lazovik, A., Aiello, M., Papazoglou, M.: Planning and monitoring the execution of web service requests. Int. J. Digit. Libr. 6(3), 235–246 (2006)

    Article  Google Scholar 

  • Leymann, F.: Choreography for the grid: Towards fitting BPEL to the resource framework. Concurr. Comput. Pract. Exp. 18(10), 1201–1217 (2006)

    Article  Google Scholar 

  • Marzolla, M., Mirandola, R.: Performance prediction of Web service workflows. In: Third International Conference on Quality of Software Architectures (QoSA 2007). LNCS, vol. 4880, p. 127. Springer, New York (2007)

    Google Scholar 

  • Meyer, B.: Object-Oriented Software Construction, 2nd edn. Prentice-Hall, Englewood Cliffs (1997)

    MATH  Google Scholar 

  • Miller, J., Mukerji, J.: Mda guide version 1.0.1. OMG report (2003)

  • Mylopoulos, J., Borgida, A., Jarke, M., Koubarakis, M.: Telos: Representing knowledge about information systems. ACM Trans. Inf. Syst. 8(4), 325–362 (1990)

    Article  Google Scholar 

  • Naur, P., Randell, B. (eds.): Software engineering: Report of a Conference Sponsored by the NATO Science Committee, Scientific Affairs Division, NATO (1968)

  • Papazoglou, M.: Web Services: Principles and Technology. Addison-Wesley, Reading (2007)

    Google Scholar 

  • Papazoglou, M.: The challenges of service evolution. In: Advanced Information Systems Engineering Conference (CAISE 2008). Springer, New York (2008a)

    Google Scholar 

  • Papazoglou, M.: Compliance requirements for business-process driven SOAs. In: IFIP World Computer Congress Conference (WCC 2008). Springer, New York (2008b)

    Google Scholar 

  • Papazoglou, M., Georgakopoulos, D.: Special issue: Service-oriented computing—Introduction. Commun. ACM 46(10), 24–28 (2003)

    Article  Google Scholar 

  • Papazoglou, M., Kratz, B.: Web services technology in support of business transactions. Service Oriented Comput. Appl. 1(1), 51–63 (2007)

    Article  Google Scholar 

  • Papazoglou, M., Pohl, K.: Report on longer term research challenges in software and services. Results from two workshops held at the European Commission premises at 8th of November 2007 and 28th and 29th of January 2008, European Commission, http://www.cordis.lu, with contributions from Boniface, M., Ceri, S., Hermenegildo, M., Inverardi, P., Leymann, F., Maiden, N., Metzger, A., Priol, T. (2008)

  • Parnas, D.: On the criteria to be used in decomposing systems into modules. Commun. ACM 15(12), 1053–1058 (1972)

    Article  Google Scholar 

  • Pernici, B. (ed.): Mobile Information Systems: Infrastructure and Design for Adaptivity and Flexibility. Springer, New York (2006)

    Google Scholar 

  • Pistore, M., Traverso, P.: Assumption-based composition and monitoring of web services. In: Baresi, L., Di Nitto, E. (eds.) Test and Analysis of Web Services, pp. 307–335. Springer, New York (2007)

    Chapter  Google Scholar 

  • Pistore, M., Traverso, P., Bertoli, P., Marconi, A.: Automated synthesis of executable Web service compositions from BPEL4WS processes. In: Special Track, 14th International Conference on World Wide Web (WWW 2005)

  • Rolli, D., Luckner, S., Momm, C., Weinhardt, C.: A framework for composing electronic marketplaces—From market structure to service implementation. In: 3rd Workshop on e-Business (WeB 2004), Washington, DC, USA (2004)

  • Royce, W.: Managing the development of large software systems. In: IEEE WESCON, San Francisco, CA, USA, pp. 1–9 (1970)

  • Rozinat, A., van der Aalst, W.M.P.: Conformance checking of processes based on monitoring real behavior. Inf. Syst. 33(1), 64–95 (2008)

    Article  Google Scholar 

  • Ruth, M.E., Tu, S.: Towards automating regression test selection for web services. In: 16th International Conference on World Wide Web (WWW 2007), pp. 1265–1266 (2007)

  • Solanki, M., Cau, A., Zedan, H.: Augmenting semantic Web service descriptions with compositional specification. In: 13th International Conference on World Wide Web (WWW 2004)

  • Spanoudakis, G., Mahbub, K., Zisman, A.: A platform for context aware runtime web service discovery. In: 2007 IEEE International Conference on Web Services (ICWS 2007), pp. 233–240 (2007)

  • Traverso, P., Pistore, M.: Automatic composition of semantic Web services into executable processes. In: 3rd International Semantic Web Conference (ISWC 2004)

  • van der Aalst, W.M.P.: Business alignment: Using process mining as a tool for delta analysis and conformance testing. Requir. Eng. 10(3), 198–211 (2005)

    Article  Google Scholar 

  • Yang, J., Papazoglou, M.: Service components for managing the life-cycle of service compositions. Inf. Syst. 28(1) (2004)

  • Zachos, K., Maiden, N., Zhu, X., Jones, S.: Discovering web services to specify more complete system requirements. In: 19th International Conference on Advanced Information Systems Engineering (CAiSE 2007), pp. 142–157 (2007)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Elisabetta Di Nitto.

Additional information

Parts of the research leading to these results have received funding from the European Community’s Seventh Framework Programme FP7/2007-2013 under grant agreement 215483 (S-Cube).

Rights and permissions

Reprints and permissions

About this article

Cite this article

Di Nitto, E., Ghezzi, C., Metzger, A. et al. A journey to highly dynamic, self-adaptive service-based applications. Autom Softw Eng 15, 313–341 (2008). https://doi.org/10.1007/s10515-008-0032-x

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10515-008-0032-x

Keywords

Navigation