Abstract
Service-oriented computing is a promising computing paradigm which facilitates the composition of loosely coupled and adaptable applications. Unfortunately, this new paradigm does not lend itself easily to traditional software engineering methods and principles due to the decentralised nature of software services. The goal of this paper is to identify a set of engineering activities that can be used to develop adaptable service-based applications. Rather than focusing on the entire service-based application development life-cycle, this paper will focus on adaptation-specific processes and activities and map them to an existing high-level service-based application development life-cycle. Existing software engineering literature as well as research results from service engineering research is reviewed for relevant activities. The result is an adaptation framework that can guide software engineers in developing adaptable service-based applications.
Similar content being viewed by others
References
Cai H, Bu F, Jiang L (2012) A business-driven methodology for service-oriented information system development. In: Parallel and distributed processing symposium workshops Ph.D. forum (IPDPSW), 2012 IEEE 26th, international, pp 2292–2299
Retter R, Fehling C, Karastoyanova D, Leymann F, Schleicher D (2012) Combining horizontal and vertical composition of services. Serv Oriented Comput Appl 6:117–130. doi:10.1007/s11761-011-0095-6
Xu B, Luo S, Yan Y, Sun K (2012) Towards efficiency of qos-driven semantic web service composition for large-scale service-oriented systems. Serv Oriented Comput Appl 6:1–13. doi:10.1007/s11761-011-0085-8
Andrikopoulos V (2009) Separate design knowledge models for software engineering and service based computing. S-Cube Consortium, Deliverable CD-JRA-1.1.2
Richardson I, Lane S (2009) Coordinated design knowledge models for software engineering and service-based computing. S-Cube Consortium, Deliverable CD-JRA-1.1.4
Royce W (1970) Managing the development of large software systems. Proc IEEE Wescon 26(1):9
Boehm B (1986) A spiral model of software development and enhancement. ACM SIGSOFT Softw Eng Notes 11(4):14–24
Oreizy P, Gorlick MM, Taylor RN, Heimhigner D, Johnson G, Medvidovic N, Quilici A, Rosenblum DS, Wolf AL (1999) An architecture-based approach to self-adaptive software. IEEE Intell Sys Appl 14(3):54–62
Gu Q, Lago P (2011) Guiding the selection of service-oriented software engineering methodologies. Serv Oriented Comput Appl 5:203–223. doi:10.1007/s11761-011-0080-0
Hinchey M, Coyle L (2009) Evolving critical systems. Lero—The Irish Software Engineering Research Centre, Technical Report Lero-TR-2009-00
Herstellerinitiative software (his) process assessment working group. Available: http://portal.automotive-his.de/images/pdf/ProcessAssessment/his-wg-assessments-v31-07-06-08.pdf
Amazon. Available: http://www.amazon.com/
Benbernou S (2008) State of the art report, gap analysis of knowledge on principles, techniques and methodologies for monitoring and adaptation of sbas. S-Cube Consortium, Deliverable PO-JRA-1.2.1
Williams SK, Battle SA, Cuadrado JE (2006) Protocol mediation for adaptation in semantic web services. In: The semantic web: research and applications. ser. Lecture Notes in computer science, vol 4011. Springer, Berlin, pp 635–649
Di Nitto E, Penta MD, Gambi A, Ripa G, Villani M (2009) Negotiation of service level agreements: an architecture and a search-based approach. In: Service-oriented computing ICSOC 2007. ser. Lecture notes in computer science, vol 4749. Springer, Berlin, pp 295–306
Pernici B (2007) Automatic learning of repair strategies for web services. In: Fifth European conference on web services (ECOWS ’07). IEEE Computer Society, Halle, Germany, pp 119–128
Pistore M, Barbon F, Bertoli P, Shaparau D, Traverso P (2004) Planning and monitoring web service composition. In: Artificial intelligence: methodology, systems, and applications. ser. Lecture notes in computer science. Springer, Berlin, pp 106–115
Conte SD, Dunsmore HE, Shen VY (1986) Software engineering metrics and models. Benjamin-Cummings Publishing Co. Inc., CA
Lehman MM (1984) Program evolution. Info Proc Manag 20(1):19–36
April A, Hayes JH, Abran A, Dumke R (2005) Software maintenance maturity model (smmm): the software maintenance process model. J Softw Maint Evol Res Pract 17(3):197–223
Abran A, Bourque P, Dupuis R, Moore JW (2001) Guide to the software engineering body of Knowledge-SWEBOK
Swanson EB (1976) The dimensions of maintenance. In: Proceedings of the 2nd international conference on software engineering, pp 492–497
IEEE, ISO, and IEC, (2006) Software engineering-software life cycle processes-maintenance International standard. Institute of Electrical and Electronics Engineers, New York
Sommerville I (2004) Software engineering, 7th edn. Addison Wesley, Reading
Hielscher J, Metzger A, Kazhamiakin R (2009) Taxonomy of adaptation principles and mechanisms. S-Cube Consortium, Contractual Deliverable CD-JRA-1.2.2
Autili M, Berardinelli L, Cortellessa V, Marco AD, Ruscio DD, Inverardi P, Tivoli M (2009) A development process for self-adapting service oriented applications. In: Service-oriented computing ICSOC 2007, ser. Lecture notes in computer science, vol 4749. Springer, Berlin, pp 442–448
kenzi A, Asri BE, Nassar M, Kriouile A, (2009) A model driven framework for multiview service oriented system development. In: ACS/IEEE international conference on computer systems and applications. IEEE Computer Society, pp 404–411
Trainotti M, Pistore M, Calabrese G, Zacco G, Lucchese G, Barbon F, Bertoli P, Traverso P (2005) Astro: Supporting composition and execution of web services. In: Lecture notes in computer science, vol 3826, p 495
Durvasula S et al (2007) Introduction to service lifecycle. SOA practitioners guide. part 3
Chang SH (2007) A systematic analysis and design approach to develop adaptable services in service oriented computing. In: IEEE Congress on services, 2007, pp. 375–378
Arsanjani A (2004) Service-oriented modeling and architecture. Available: http://www.ibm.com/developerworks/webservices/library/ws-soa-design1/
Papazoglou MP, Heuvel WVD (2006) Service-oriented design and development methodology. Int J Web Eng Technol 2(4):412–442, Available: http://portal.acm.org/citation.cfm?id=1358575.1358582
Kruchten P (2003) The rational unified process: an introduction, 3rd edn. Addison Wesley, Reading
Herzum P, Sims O (2000) Business components factory: a comprehensive overview of component-based development for the enterprise. Wiley, New York
Harmon P (2003) Second generation business process methodologies. Bus Process Trends 1(5)
ATOS (2007) SeCSE methodology, version 3. Technical Report
Fang R, Chen Y, Fong L, Lam L, Frank D, Vignola C, Du N (2007) A version-aware approach for web service client application. In: 10th IFIP/IEEE international symposium on integrated network management, IM’07, pp 401–409
Reifer DJ (2006) Metrics and management: a primer. In: Reifer DJ (ed) Software management, 7th edn. IEEE Computer Society, Silver Spring, pp 397–401
Humphrey W (1987) A Method for assessing the software engineering capability of contractors: preliminary version. Addison Wesley, Reading
Miles MB, Huberman AM (1994) Qualitative data analysis: an expanded sourcebook. SAGE publications Inc., Beverley Hills
Acknowledgments
The research leading to these results has received funding from the European Community’s Seventh Framework Programme FP7/2007–2013 under grant agreement 215483 (S-Cube) and has been partially supported by Lero—the Irish Software Engineering Research Centre, Science Foundation Ireland Grants No. 03/CE2/I303.1 & 10/CE/I1855.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Lane, S., Gu, Q., Lago, P. et al. Towards a framework for the development of adaptable service-based applications. SOCA 8, 239–257 (2014). https://doi.org/10.1007/s11761-013-0136-4
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11761-013-0136-4