Software Design and Architecture (CSE861) : Dr. Farooq-e-Azam
Software Design and Architecture (CSE861) : Dr. Farooq-e-Azam
Software Design and Architecture (CSE861) : Dr. Farooq-e-Azam
Submitted to:
Dr. Farooq-e-Azam
Submitted by:
Abstract: Service oriented computing is an emerging computing paradigm that utilizes services as the basic constructs to support the development of rapid and easy composition of distributed applications even in heterogeneous environments. SOA may often need to dynamically (re)organizing its topologies of interactions between the services due to unpredictable events, such as crashes or network problems, which will cause services unavailability. In this research work we will propose model to develop context aware intelligent and selforganizing SOA, that in case of any change will be able to adapt itself with minimum human interference. Literature Review: In context of autonomic computing, lot of efforts are made to produce self-organizing systems [1][2][3][4 ], however limited amount is applied to SOA. In [5] bhakti et al, elaborate the idea of adapting the autonomic computing paradigm into SOA to meat the challenges of SOA (due to its dynamic nature) in terms of service discovery, service interaction, service composition, robustness, quality of service, etc. SOA may often need to dynamically (re)organizing its topologies of interactions between the services due to unpredictable events, such as crashes or network problems, which cause services unavailability. Further the complexity and dynamism of the current global digital network systems require architecture that should be capable of autonomously changing its structure and functionality to meet dynamic changes in the requirements and environment with little human intervention. Bhakti et al, designed the architecture, along with comprehensive description and models, of the proposed autonomic SOA to meet these challenges. In [6] binder et al, claim that although the Service-oriented architectures (SOAs) provide a successful model for structuring complex distributed software systems, by reducing the cost of ownership and facilitating the creation of new applications with the composition of existing services, however, currently, the development of service-oriented applications require many manual tasks and prevailing infrastructure is often based on centralized components that are central points of failure and easily become bottlenecks. In their work, authors promote self-organizing SOA as a new approach to overcome these limitations. They consider self-organizing features for the whole life-cycle of a serviceoriented application, from the creation to the execution, optimization, and monitoring. In [7] Lie et al, propose a reference architecture to establish controlled self-organization in a service-oriented environment with respect to existing reference architectures for SOC and self-organization. The major effort in their work was to infuse the design paradigm of Organic Computing into approaches of SOC to establish controlled self-organization, while keeping the system complexity hidden from human system participants. To simplify requirements analysis and to better illustrate the reference model, they chose to use Service-oriented Architecture (SOA) as a representation of SOC-based systems in their paper.
In [8] Abdullah et al, propose to investigate about how to adapt self-organizing systems and mechanisms found in nature used to ensure robust SOA. They try to achieve this by mapping biological/nature-inspired self-organizing algorithms and models into serviceoriented architecture. Their effort was based on the expectation that the adaptation of selforganization would improve (e.g. the robustness) and solve some of the issues in SOA.
Problem statement: As mentioned earlier that in context of autonomic computing, lot of efforts are made to produce self-organizing systems but the limited amount is applied in service oriented architecture. The objective of a self-organizing service oriented system is to effectively and automatically deal with change. Change can happen at all levels (i.e., communication topology, middleware infrastructure, availability of service providers, and application environment) and needs to be properly accounted for within the service abstraction we are proposing in this roadmap. However, this intersection of service-oriented computing and autonomic computing is a rich source of problems, which needs to be studied more in depth, in order to achieve intelligent and self-organizing SOAs. All the works proposed so far, although provide solution at architectural level but at the cost of major changes in already developed SOAs, thus adding towards the complexity of SOA, which not only becomes a challenge to maintain in future but may also introduce new failure points. The intent of this research work is to propose a lightweight model with minimum adaptation at architectural level to develop flexible and intelligent SOA. The autonomic feature will enable SOA, to learn and adapt appropriately in case of any change in its context.
Proposed solution: This research work is aimed at providing a lightweight model for developing selforganizing reliable services. The model will result in the development of context aware services that by themselves will be intelligent enough to adopt them in changing environment. The change can happen at any level (i.e., communication topology, middleware infrastructure, availability of service providers, and application environment). The model will have a layer at the top of the original service. The layer will automatically detect the changes and service will adapt itself. The result will be an intelligent SOA in which all the included services will be intelligent enough and context aware and all this will come with minimum impact on the rest of SOA.
The model is equally implement able on already existing SOAs. The already existing SOAs can be adapt the model by simply placing a layer at the top of the service, thus cutting-short the cost, resources required and failure points. Objectives: 1) To have a lightweight model for developing context aware intelligent services. 2) To get less complex SOAs featuring self-organization up to maximum. 3) To get a flexible/maintainable SOA where enhancement of services impact minimum. 4) To develop a model that could be equally applicable on already existing SOAs along with minimum required cost, resources and complexity of resulting SOA
Research Methodology The research will be based on extensive literature review. Most of the already developed/implemented methodologies, both from academia and industry, will be studied to get guidance about how effectively the proposed model can be developed to achieve all the above mentioned objectives. In the end the proposed model will be analyzed on the basis of results obtained from implementation of three case studies, and conclusions will be made on the basis of these results.
References: [1] O. Babaoglu, M. Jelasity, and A. Montresor. Grassroots approach to self-management in large-scale distributed systems. In Proceedings of the EU-NSF Strategic Research Workshop on Unconventional Programming Paradigms, Mont Saint-Michel, France, September 2004. [2] R. A. Golding and T. M. Wong. Walking toward moving goalposts: agile management for evolving systems. In HotAC I, the First International Workshop on Hot Topics in Autonomic Computing, May 2006. [3] L. Baresi and L. Pasquale. Live goals for adaptive service compositions. In Proceedings of the 2010 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 10, pages 114123, 2010. [4] S. Dustdar, C. Dorn, F. Li, L. Baresi, G. Cabri, C. Pautasso, and F. Zambonelli. A roadmap towards sustainable self-aware service systems. In Proceedings of the 2010 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 10, pages 1019, 2010. [5] M.A.C., Bhakti and Azween, Abdullah and L. T. Jung. Autonomic, Self-Organizing Services-Oriented Architecture in Service Ecosystem. IEEE DEST 2010, Dubai UAE, April 2010. [6] W. Binder, D. Bonetta, C. Pautasso, A. Peternier, D. Milano, H. Schuldt, N. Stojnic, B. Faltings, I. Trummer, "Towards Self-Organizing Service-Oriented Architectures," services, pp.115-121, 2011 IEEE World Congress on Services, 2011 [7] Lei Liu, Stefan Thanheiser, and Hartmut Schmeck. A reference architecture for selforganizing service-oriented computing. In ARCS, volume 4934 of LNCS, pages 205219. Springer, 2008. [8] M. A. C. Bhakti and A. B. Abdullah, Towards a nature inspired, self organizing service oriented architecture, MASAUM Journal of Basic and Applied Sciences, vol. 1, Issue 3, October 2009.