Implementing Context-Aware Performance Management in Intelligent SOA Middleware Jinhwan Lee, Kwei-Jay Lin Department of Electrical Engineering and Computer Science University of California, Irvine Irvine, CA 92697-2625, USA {jinhwanl, klin}@uci.edu Abstract—Service-Oriented Architecture (SOA) is a software paradigm with a uniform means to offer, discover, compose services’ capabilities to meet desired effects with measurable performance expectations. While most of today’s SOA tools sup- port service process compositions by considering only functional attributes, additional support for composing service processes by non-functional attribute is needed. In this paper, we present an approach to improve the performance of a business process by introducing context as a non-functional attribute. During normal service executions, each service’s actual performance is collected and used to build service performance profile under a context tree. We then use the K-means clustering algorithm to classify and record context dependency on the observed service performance. We also study algorithms to decide the clustering unit of context attribute values and to distinguish those context attributes that may or may not significantly affect service performance. Simulation result shows that our methodologies are effective for context aware management. I. I NTRODUCTION In a dynamic service execution environment, context, which is a set of independent parameters describing user device capability and user-surrounding environmental data, can be an important factor to integrate services into successful busi- ness model [1], [2]. Most earlier projects on context-aware computing have focused on application-specific design [3]. A context-aware application is usually designed for a specific user device, so that the application performs optimally under pre-defined state for the client. Less work has been on the general context-aware middleware design [4]. Even though there was some research using context-aware middleware SOA [5], [6], many of them used pre-defined context prototype and context-constraints rules. This paper proposes a methodology to manage service context by introducing context-based service performance profile management in SOA. Our middleware is designed to provide services which can perform optimally given a user context. In our research, context awareness is delegated to a middleware component called context manager so that a mobile user device can be relieved from the complex context processing, yet can efficiently utilize the context knowledge. The context manager collects and handles collected context data so that other application components can utilize them as service parameters. In our design, the middleware collects context data embed- ded in service performance reports, so that the context manager may analyze and predict how each service would perform in a given context. To clearly recognize the relationship between service performance and context instances, specific context attributes (among all context information) are identified to be the main factors that cause different performance results. Each of the context attributes that affect the service performance is called a critical context attribute). Our research enables the context manager to intelligently analyze performance data re- ports and identify critical attributes. Using critical attributes, an SOA middleware can make a better service recommendation given a user’s current context. The main ideas in this research are as follows; Performance profile management using context: In our middleware, the context manager collects the service performance feedback along with service context. The context manager then analyzes the massive performance information with context data to infer how the service may perform in a certain context. Heuristic methodology to extract critical context at- tribute: Most context information contains many at- tributes with dynamic values. Handling such data is expensive and resource-consuming. We use clustering algorithms to determine whether a context attribute is critical or not for processing efficiency. In this paper, we introduce context management in the context manager designed for an SOA middleware called Llama. We present the clustering methodology to identify critical context attribute and the level of sensitivity for each critical context attribute. We also perform simulations to show the effectiveness of our algorithms. The rest of the paper is organized as follows. Section II lists various related works. Section III describes background works which have previously done for this research. Section IV introduces context man- agement processed in context manager. Section V explains critical context attribute and its significance, and proposes the clustering algorithm and methodology to determine critical context threshold. Finally, we present a simulation study in Section VI and finish with conclusion in Section VII. II. RELATED WORK Much research has been done to adapt various context into applications [4] or web services [6] in the past decades. 2013 IEEE 6th International Conference on Service-Oriented Computing and Applications 978-1-4799-2701-2/13 $31.00 © 2013 IEEE DOI 10.1109/SOCA.2013.9 83 2013 IEEE 6th International Conference on Service-Oriented Computing and Applications 978-1-4799-2701-2/13 $31.00 © 2013 IEEE DOI 10.1109/SOCA.2013.9 83