Aspect-driven Context-aware Services
Karel Cemus, Filip Klimes, Tomas Cerny
DOI: http://dx.doi.org/10.15439/2017F397
Citation: Proceedings of the 2017 Federated Conference on Computer Science and Information Systems, M. Ganzha, L. Maciaszek, M. Paprzycki (eds). ACSIS, Vol. 11, pages 1307–1314 (2017)
Abstract. Nowadays enterprise software solutions must deal with ever-growing complexity and a multitude of business processes. The mainstream system design decomposes the system into small reusable services. While these services isolate certain system logic and address efficient elasticity towards growing user demands, there are multiple issues related to such a design, such as limitations to deal with restated information, information reuse or the ability to address cross-cutting concerns across multiple services. This paper highlights limitations of service-oriented architecture and proposes an alternative decomposition through aspect-driven service-oriented architecture. Such architecture involves adaptive, context-aware services preserving simple maintenance while addressing information reuse and crosscuts across services. The paper provides a formal description of the proposed architecture as well as a demonstration through a case study, showing approach properties and benefits.
References
- C. Larman, Applying UML and Patterns: An Introduction to Object Oriented Analysis and Design and Iterative Development. Pearson Education India, 2012.
- M. Fowler, Patterns of enterprise application architecture. Addison-Wesley Longman Publishing Co., Inc., 2002.
- K. Cemus and T. Cerny, “Aspect-driven design of information systems,” in SOFSEM 2014: Theory and Practice of Computer Science, LNCS 8327. Springer International Publishing Switzerland, 2014, pp. 174–186. ISBN 978-3-319-04298-5
- R. Perrey and M. Lycett, “Service-oriented architecture,” in Applications and the Internet Workshops, 2003. Proceedings. 2003 Symposium on. IEEE, 2003, pp. 116–119.
- M. Endrei, J. Ang, A. Arsanjani, S. Chua, P. Comte, P. Krogdahl, M. Luo, and T. Newling, Patterns: service-oriented architecture and web services. IBM Corporation, International Technical Support Organization, 2004.
- M. R. Cecil, Agile software development: principles, patterns, and practices. Prentice Hall PTR, 2003.
- M. P. Papazoglou, “Service-oriented computing: Concepts, characteristics and directions,” in Web Information Systems Engineering, 2003. WISE 2003. Proceedings of the Fourth International Conference on. IEEE, 2003, pp. 3–12.
- N. Dragoni, S. Giallorenzo, A. L. Lafuente, M. Mazzara, F. Montesi, R. Mustafin, and L. Safina, “Microservices: yesterday, today, and tomorrow,” arXiv preprint https://arxiv.org/abs/1606.04036, 2016.
- M. Fowler and J. Lewis, “Microservices,” ThoughtWorks. https://martinfowler.com/articles/microservices.html [accessed on March 21, 2017], 2014.
- J. Rao and X. Su, “A survey of automated web service composition methods,” in International Workshop on Semantic Web Services and Web Process Composition. Springer, 2004, pp. 43–54.
- R. T. Fielding, “Architectural styles and the design of network-based software architectures,” Ph.D. dissertation, University of California, Irvine, 2000.
- R. Chinnici, J.-J. Moreau, A. Ryman, and S. Weerawarana, “Web services description language (wsdl) version 2.0 part 1: Core language,” W3C recommendation, vol. 26, p. 19, 2007.
- M. J. Hadley, “Web application description language (WADL),” 2006.
- T. Cerny and M. J. Donahoo, “How to reduce costs of business logic maintenance,” in Computer Science and Automation Engineering (CSAE), vol. 1. IEEE, 2011, pp. 77–82.
- G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. Lopes, J.-M. Loingtier, and J. Irwin, Aspect-oriented programming. Springer, 1997.
- K. Cemus, F. Klimes, O. Kratochvil, and T. Cerny, “Separation of concerns for distributed cross-platform context-aware user interfaces,” Cluster Computing, pp. 1–8, 2017.
- M. Mernik, J. Heering, and A. M. Sloane, “When and how to develop domain-specific languages,” ACM computing surveys (CSUR), vol. 37, no. 4, pp. 316–344, 2005.
- K. Cemus, T. Cerny, and M. J. Donahoo, “Automated business rules transformation into a persistence layer,” Procedia Computer Science, vol. 62, pp. 312–318, 2015.
- M. Villamizar, O. Garcés, H. Castro, M. Verano, L. Salamanca, R. Casallas, and S. Gil, “Evaluating the monolithic and the microservice architecture pattern to deploy web applications in the cloud,” in Computing Colombian Conference (10CCC), 2015 10th. IEEE, 2015, pp. 583–590.
- K. Cemus and T. Cerny, “Automated extraction of business documentation in enterprise information systems,” ACM SIGAPP Applied Computing Review, vol. 16, no. 4, pp. 5–13, 2017.
- A. Sill, “The design and architecture of microservices,” IEEE Cloud Computing, vol. 3, no. 5, pp. 76–80, 2016.
- E. Al-Masri and Q. H. Mahmoud, “Discovering the best web service,” in Proceedings of the 16th international conference on World Wide Web. ACM, 2007, pp. 1257–1258.
- A. Rahmani, V. Rafe, S. Sedighian, and A. Abbaspour, “An mda-based modeling and design of service oriented architecture,” Computational Science–ICCS 2006, pp. 578–585, 2006.
- S. K. Johnson and A. W. Brown, “A model-driven development approach to creating service-oriented solutions,” in International Conference on Service-Oriented Computing. Springer, 2006, pp. 624–636.
- R. Kennard, E. Edmonds, and J. Leaney, “Separation anxiety: stresses of developing a modern day separable user interface,” in Human System Interactions. HSI’09. 2nd Conference on. IEEE, 2009, pp. 228–235.
- F. Rosenberg and S. Dustdar, “Business rules integration in bpel-a service-oriented approach,” in E-Commerce Technology. Seventh IEEE International Conference. IEEE, 2005, pp. 476–479.
- T. Andrews, F. Curbera, H. Dholakia, Y. Goland, J. Klein, F. Leymann, K. Liu, D. Roller, D. Smith, S. Thatte et al., “Business process execution language for web services,” 2003.
- J. I. Fernández Villamor, C. A. Iglesias Fernandez, and M. Garijo Ayestaran, “Microservices: Lightweight service descriptions for rest architectural style,” 2010.
- E. Putrycz and A. W. Kark, “Connecting legacy code, business rules and documentation,” in Rule Representation, Interchange and Reasoning on the Web. Springer, 2008, pp. 17–30.
- X. Wang, J. Sun, X. Yang, S. Maddineni et al., “Business rules extraction from large legacy systems,” in Software Maintenance and Reengineering. IEEE, 2004, pp. 249–258.
- J. Shao and C. Pound, “Extracting business rules from information systems,” BT Technology Journal, vol. 17, no. 4, pp. 179–186, 1999.