Abstract
Today’s software systems need to support complex business operations and processes. The development of the web-based software systems has been pushing up the limits of traditional software engineering methodologies and technologies as they are required to be used and updated almost real-time, so that users can interact and share the same applications over the internet as needed. These applications have to adapt quickly to the diversified and dynamic changing requirements in the physical, technological, economical and social environments. As a consequence, we are expecting a major paradigm shift in software engineering to reflect such changes in computing environment in order to better address the fundamental needs of organisations in this new era. Existing software technologies, such as model driven development, business process engineering, online (re-)configuration, composition and adaptation of managerial functionalities are being repurposed to reduce the time taken for software development by reusing software codes. The ability to dynamically combine contents from numerous web sites and local resources, and the ability to instantly publish services worldwide have opened up entirely new possibilities for software development. In retrospect to the ten years applied research on Internetware, we have witnessed such a paradigm shift, which brings about many changes to the developmental experience of conventional web applications. Several related technologies, such as cloud computing, service computing, cyber-physical systems and social computing, have converged to address this emerging issue with emphasis on different aspects. In this paper, we first outline the requirements that the Internetware software paradigm should meet to excel at web application adaptation; we then propose a requirement model driven method for adaptive and evolutionary applications; and we report our experiences and case studies of applying it to an enterprise information system. Our goal is to provide high-level guidelines to researchers and practitioners to meet the challenges of building adaptive industrial-strength applications with the spectrum of processes, techniques and facilities provided within the Internetware paradigm.
Similar content being viewed by others
References
Li Y, Zhou M, You C, et al. Enabling on demand deployment of middleware services in componentized middleware. In: the 13th International Symposium on Component-Based Software Engineering, Prague, 2010. 113–129
Lv J, Ma X, Tao X, et al. On environment-driven software model for Internetware. Sci China Ser F-Inf Sci, 2008, 51: 683–721
Mei H, Huang G, Zhao H, et al. A software architecture centric engineering approach for Internetware. Sci China Ser F-Inf Sci, 2006, 49: 702–730
Zheng L, Tang J, Jin Z. An agent based framework for Internetware computing. Int J Softw Inf, 2010, 4: 401–418
Clement B J, Durfee E H. Theory for coordinating concurrent hierarchical planning agents using summary information. In: Proceedings of the 16th National Conference on Artificial Intelligence and the 11th Innovative Applications of Artificial Intelligence Conference Innovative Applications of Artificial Intelligence, Orlando, 1999. 495–502
Tang J, Jin Z. Assignment problem in requirements driven agent collaboration and its implementation. In: Proceedings of the 9th International Conference on Autonomous Agents and Multi-agent Systems, Toronto, 2010. 839–846
Chauvel F, Song H, Chen X, et al. Using QoS-contracts to drive architecture-centric self-adaptation. In: Proceedings of the 6th International Conference on Quality of Software Architectures: Research into Practice-Reality and Gaps. Berlin/Heidelberg: Springer-Verlag, 2010. 102–118
Fickas S, Feather M. Requirements monitoring in dynamic environments. In: the 2nd IEEE International Symposium on Requirements Engineering, York, 1995. 140–147
Verlaine B, Dubois E, Jureta I, et al. Towards conceptual foundations for service-oriented requirements engineering: bridging requirements and services ontologies. IET Softw, 2012, 6: 85–102
Cheng B H C, de Lemos R, Giese H, et al., eds. Software Engineering for Self-Adaptive Systems: a Research Roadmap. Berlin/Heidelberg: Springer-Verlag, 2009. 1–26
Aoyama M. Process and economic model of component-based software development. In: the 5th IEEE Symposium on Assessment of Software Tools, Pittsburgh, 2007. 100–103
Wei Y, Furia C A, Kazmin N, et al. Inferring better contracts. In: the 33rd International Conference on Software Engineering, Honolulu, 2011. 191–200
Yu E. Towards modelling and reasoning support for early-phase requirements engineering. In: Proceedings of the 3rd IEEE International Symposium on Requirements Engineering, Annapolis, 1997. 226–235
Dalkey N. The Delphi method: an experimental study of group opinion. Futures, 1969, 1: 408–426
Saaty T. Decision making with the analytic hierarchy process. Int J Serv Sci, 2008, 1: 83–98
Sebastiani R, Giorgini P, Mylopoulos J. Simple and minimum-cost satisfiability for goal models. In: Adv Inf Syst Eng, Riga, 2004. 20–35
Liaskos S, McIlraith S A, Sohrabi S, et al. Representing and reasoning about preferences in requirements engineering. Requir Eng, 2011, 16: 227–249
Ma W, Liu L, Xie H, et al. Preference model driven services selection. In: Conference on Advanced Information Systems Engineering, Amsterdam, 2009. 216–230
Bennett K H, Rajlich V. Software maintenance and evolution: a roadmap. In: International Conference on Software Engineering, Limerick, 2000. 73–87
Buckley J. Requirements-based visualization tools for software maintenance and evolution. IEEE Comput, 2009, 42: 106–108
Chapin N, Hale J, Fernandez-Ramil J, et al. Types of software evolution and software maintenance. J Softw Maint Evol-Res Pract, 2001, 13: 3–30
Godfrey M, Tu Q. Growth, evolution, and structural change in open source software. In: Proceedings of the 4th International Workshop on Principles of Software Evolution, New York, 2001. 103–106
Gala-Pérez S, Robles G, González-Barahona J M, et al. Intensive metrics for the study of the evolution of open source projects: case studies from apache software foundation projects. In: the 10th Working Conference on Mining Software Repositories, San Francisco, 2013. 159–168
Lehman M, Ramil J F. Software evolution-background, theory, practice. Inf Process Lett, 2003, 88: 33–44
Ali S, Maqbool O. Monitoring software evolution using multiple types of changes. In: the 5th International Conference on Emerging Technologies, Islamabad, 2009. 410–415
Wang Y, Guo D, Shi H. Measuring the evolution of open source software systems with their communities. ACM SIGSOFT Softw Eng Notes, 2007, 32: 7
Le Goaer O, Tamzalit D, Oussalah M. Evolution styles to capitalize evolution expertise within software architectures. In: the 22nd International Conference on Software Engineering and Knowledge Engineering, Redwood City, 2010. 159–164
Alawairdhi M, Yang H. A business-logic based framework for evolving software systems. In: the 33rd Annual IEEE International Computer Software and Applications Conference, Seattle, 2009. 300–305
Kim T, Kim K, Kim W. An interactive change impact analysis based on an architectural reflexion model approach. In: the 34th Annual IEEE International Computer Software and Applications Conference, Seoul, 2010. 297–302
Desai N, Chopra A K, Singh M P. Amoeba: a methodology for modeling and evolving cross-organizational business processes. ACM Trans Softw Eng Methodol, 2009, 19: 1–40
Salifu M, Yu Y, Nuseibeh B. Specifying monitoring and switching problems in context. In: the 15th International Requirements Engineering ConferenceRE, New Delhi, 2007. 211–220
Baresi L, Marconi A, Pistore M, et al. Corrective evolution of adaptable process models. In: Nurcan S, Proper H A, Soffer P, et al., eds. Enterprise, Business-Process and Information Systems Modeling. Berlin/Heidelberg: Springer-Verlag, 2013. 214–229
Miorandi D, Yamamoto L, Dini P. Service evolution in bio-inspired communication systems. Int Trans Syst Sci Appl, 2006, 2: 51–60
Nakano T, Suda T. Self-organizing network services with evolutionary adaptation. IEEE Trans Neural Netw, 2005, 16: 1269–1278
Andrikopoulos V, Benbernou S, Papazoglou M P. On the evolution of services. IEEE Trans Softw Eng, 2012, 38: 609–628
Treiber M, Truong H L, Dustdar S. On analyzing evolutionary changes of web services. In: Service-Oriented Computing, Stockholm, 2009. 284–297
Ponnekanti S, Fox A. Interoperability among independently evolving web services. In: Middleware, Toronto, 2004. 331–351
Kaminski P, Litoiu M, Müller H. A design technique for evolving web services. In: Proceedings of the 2006 Conference of the Center for Advanced Studies on Collaborative Research, Riverton, 2006. 23
Frank D, Lam L, Fong L, et al. Using an interface proxy to host versioned web services. In: IEEE International Conference on Services Computing, Honolulu, 2008. 325–332
Andrikopoulos V. A theory and model for the evolution of software services. Open Access publications from Tilburg University, Tilburg University, 2010
Andrikopoulos V, Benbernou S, Papazoglou M P. Managing the evolution of service specifications. In: the 20th International Conference on Advanced Information Systems Engineering, Montpellier, 2008. 359–374
Kongdenfha W, Nezhad H R, Benatallah B, et al. Mismatch patterns and adaptation aspects: a foundation for rapid development of web service adapters. IEEE Trans Serv Comput, 2009, 2: 94–107
Benhaddi M, Baïna K, Abdelwahed E. A user-centric mashuped SOA. Int J Web Sci, 2012, 1: 204–223
Leitner P, Michlmayr A, Rosenberg F, et al. End-to-end versioning support for web services. In: IEEE International Conference on Services Computing, Honolulu, 2008. 59–66
Weinreich R, Ziebermayr T, Draheim D. A versioning model for enterprise services. In: the 21st International Conference on Advanced Information Networking and Applications Workshops. Washington DC: IEEE, 2007. 570–575
Fang R, Lam L, Fong L, et al. A version-aware approach for web service directory. In: IEEE International Conference on Web Services, Salt Lake City, 2007. 406–413
Zou Z, Fang R, Liu L, et al. On synchronizing with web service evolution. In: International Conference on Web Services, Beijing, 2008. 329–336
Ouederni M, Salaün G, Pimentel E. Client update: a solution for service evolution. In: IEEE International Conference on Services Computing, Washington DC, 2011. 394–401
Dumas M, Spork M, Wang K. Adapt or perish: algebra and visual notation for service interface adaptation. In: the 4th International Conference Business Process Management, Vienna, 2006. 65–80
Ryu S H, Casati F, Skogsrud H, et al. Supporting the dynamic evolution of web service protocols in service-oriented architectures. ACM Trans Web, 2008, 2: 1–46
Pathak J, Basu S, Honavar V. On context-specific substitutability of web services. In: International Conference on Web Services, Salt Lake City, 2007. 192–199
Rinderle-Ma S, Reichert M, Jurisch M. On utilizing web service equivalence for supporting the composition life cycle. Int J Web Serv Res, 2011, 8: 41–67
Rinderle-Ma S, Reichert M, Jurisch M. Equivalence of web services in process-aware service compositions. In: International Conference on Web Services, Los Angeles, 2009. 501–508
Rinderle S, Weber B, Reichert M, et al. Integrating process learning and process evolution-a semantics based approach. In: the 3rd International Conference on Business Process Management, Nancy, 2005. 252–267
Becker K, Lopes A, Milojicic D S, et al. Automatically determining compatibility of evolving services. In: International Conference on Web Services, Beijing, 2008. 161–168
Ye C, Cheung S C, Chan W K, et al. Atomicity analysis of service composition across organizations. IEEE Trans Softw Eng, 2009, 35: 2–28
Ye C, Cheung S C, Chan W K, et al. Detection and resolution of atomicity violation in service composition. In: the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering, Dubrovnik, 2007. 235–244
Wilde E. Semantically extensible schemas for web service evolution. In: European Conference on Web Services, Erfurt, 2004. 30–45
Wang S, Capretz M A. A dependency impact analysis model for web services evolution. In: International Conference on Web Services, Los Angeles, 2009. 359–365
Chang C K, Jiang H, Ming H, et al. Situ: a situation-theoretic approach to context-aware service evolution. IEEE Trans Serv Comput, 2009, 2: 261–275
Ming H, Chang C K, Oyama K, et al. Reasoning about human intention change for individualized runtime software service evolution. In: Proceedings of the IEEE 34th Annual Computer Software and Applications Conference, Washington DC, 2010. 289–296
Ardagna D, Baresi L, Comai S, et al. A service-based framework for flexible business processes. IEEE Softw, 2011, 28: 61–67
Chafle G, Das G, Dasgupta K, et al. An integrated development environment for web service composition. In: International Conference on Web Services, Salt Lake City, 2007. 839–847
Colombo M, Nitto E, Mauri M. Scene: a service composition execution environment supporting dynamic changes disciplined through rules. In: the 4th International Conference on Service-Oriented Computing, Chicago, 2006. 191–202
Bunch C, Chohan N, Krintz C, et al. An evaluation of distributed data stores using the AppScale cloud platform. In: the 3rd IEEE International Conference on Cloud Computing, Miami, 2010. 305–312
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Liu, L., Yang, C., Wang, J. et al. Requirements model driven adaption and evolution of Internetware. Sci. China Inf. Sci. 57, 1–19 (2014). https://doi.org/10.1007/s11432-014-5064-1
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11432-014-5064-1