Abstract
Service-oriented computing (SOC) has become a dominant paradigm in developing distributed Web-based software systems. Besides the benefits such as interoperability and flexibility brought by SOC, modern service-based software systems are frequently required to be highly adaptable in order to cope with rapid changes and evolution of business goals, requirements, as well as physical context in a dynamic business environment. Unfortunately, adaptive systems are still difficult to build due to its high complexity. In this paper, we propose a novel approach called MoDAR to support the development of dynamically adaptive service-based systems (DASS). Especially in this approach, we first model the functionality of a system by two constituent parts: i) a stable part called the base model described using business processes, and ii) a volatile part called the variable model described using business rules. This model reflects the fact that business processes and rules are two significant and complementary aspects of business requirements, and business rules are usually much more volatile than business processes. We then use an aspect-oriented approach to weave the base model and variable model together so that they can evolve independently without interfering with each other. A model-driven platform has been implemented to support the development lifecycle of a DASS from specification, design, to deployment and execution. Systems developed with the MoDAR platform are running on top of a BPEL process engine and a Drools rule engine. Experimentation shows that our approach brings high adaptability and maintainability to service-based systems with reasonable performance overhead.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
The OSGi Alliance. OSGi Service Platform Core Specification Release 4.1 (2007), http://www.osgi.org/Specifications/
Ardagna, D., Pernici, B.: Adaptive Service Composition in Flexible Processes. IEEE Transactions on Software Engineering 33(6), 369–384 (2007)
Baniassad, E.L.A., Clarke, S.: Theme: An Approach for Aspect-Oriented Analysis and Design. In: Proc. of the 26th International Conference on Software Engineering (ICSE 2004), pp. 158–167 (2004)
Bruneton, E., Coupaye, T., Leclercq, M., Quema, V., Stefani, J.: The FRACTAL Component Model and its Support in Java. Software Practice and Experience 36, 1257–1284 (2006)
Charfi, A., Mezini, M.: Hybrid Web Service Composition: Business Processes Meet Business Rules. In: Proc. of the 2nd International Conference on Service Oriented Computing (ICSOC 2004), vol. 30–38 (2004)
Colombo, M., Di Nitto, E., Mauri, M.: SCENE: A Service Composition Execution Environment Supporting Dynamic Changes Disciplined Through Rules. In: Dan, A., Lamersdorf, W. (eds.) ICSOC 2006. LNCS, vol. 4294, pp. 191–202. Springer, Heidelberg (2006)
David, P., Ledoux, T.: An Aspect-Oriented Approach for Developing Self-Adaptive Fractal Components. In: Löwe, W., Südholt, M. (eds.) SC 2006. LNCS, vol. 4089, pp. 82–97. Springer, Heidelberg (2006)
Elrad, T., Filman, R.E., Bader, A.: Aspect-Oriented Programming: Introduction. Commun. ACM 44(10), 29–32 (2001)
Frankel, D.S.: Model Driven ArchitectureTM: Applying MDATM to Enterprise Computing. John Wiley & Sons, Chichester (2003)
Georgakopoulos, D., Papazoglou, M.P.: Service-Oriented Computing. The MIT Press, Cambridge (2008)
Gradecki, J.D., Lesiecki, N.: Mastering AspectJ: Aspect-Oriented Programming in Java. Wiley, Chichester (2003)
The Business Rules Group. Defining Business Rules, What Are They Really? (2001), http://www.businessrulesgroup.org
McKinley, P.K., Sadjadi, S.M., Kasten, E.P., Chen, B.H.C.: Composing Adaptive Software. IEEE Computer 37(7), 56–74 (2004)
Morin, B., Barais, O., Nain, G., Jezequel, J.M.: Taming Dynamically Adaptive Systems using Models and Aspects. In: Proc. of the 31st International Conference on Software Engineering (ICSE 2009), pp. 122–132 (2009)
Di Nitto, E., Ghezzi, C., Metzger, A., Papazoglou, M.P., Pohl, K.: A Journey to Highly Dynamic, Self-Adaptive Service-Based Applications. Automated Software Engineering 15(3-4), 313–341 (2008)
Papazoglou, M.P., Traverso, P., Dustdar, S., Leymann, F.: Service-Oriented Computing: State of the Art and Research Challenges. Computer 40(11), 38–45 (2007)
Rosenberg, F., Dustdar, S.: Usiness Rules Integration in BPEL - a Service-Oriented Approach. In: Proc. of the 7th IEEE International Conference on E-Commerce Technology, pp. 476–479 (2005)
Ross, R.G.: Principles of the Business Rules Approach. Addison-Wesley, Reading (2003)
Vanthienen, J., Goedertier, S.: How Business Rules Define Business Processes. Business Rules Journal 8(3) (2007)
Yau, S.S., Ye, N., Sarjoughian, H.S., Huang, D., Roontiva, A., Baydogan, M.G., Muqsith, M.A.: Toward Development of Adaptive Service-Based Software Systems. IEEE Transactions on Services Computing 2(3), 247–260 (2009)
Zhang, J., Cheng, B.H.C.: Model-Based Development of Dynamically Adaptive Software. In: Proc. of the 28th International Conference on Software Engineering (ICSE 2006), pp. 371–380 (2006)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Yu, J., Sheng, Q.Z., Swee, J.K.Y. (2010). Model-Driven Development of Adaptive Service-Based Systems with Aspects and Rules. In: Chen, L., Triantafillou, P., Suel, T. (eds) Web Information Systems Engineering – WISE 2010. WISE 2010. Lecture Notes in Computer Science, vol 6488. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-17616-6_48
Download citation
DOI: https://doi.org/10.1007/978-3-642-17616-6_48
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-17615-9
Online ISBN: 978-3-642-17616-6
eBook Packages: Computer ScienceComputer Science (R0)