Operational Challenges and Solutions for Mashups - An ... - CiteSeerX

2 downloads 3214 Views 701KB Size Report
on describing and evaluating a mashup solution's underlying structure to enforce ... value-adding and user-oriented service, gained popularity. Hereby, the ...
Operational Challenges and Solutions for Mashups – An Experience Report Frederic Majer

Martin Nussbaumer

Patrick Freudenstein

Steinbuch Centre for Computing Karlsruhe Institute of Technology D-76128 Karlsruhe, Germany

Steinbuch Centre for Computing Karlsruhe Institute of Technology D-76128 Karlsruhe, Germany

Steinbuch Centre for Computing Karlsruhe Institute of Technology D-76128 Karlsruhe, Germany

[email protected]

[email protected]

[email protected]

ABSTRACT Mashups are characterized as complex and fragile systems as they integrate heterogeneous, distributed and evolving services into a single value-adding service. While in most cases development gains main focus, operation and maintenance of mashups become second class citizens. The increasing significance of mashup solutions, even in the enterprise context, raises questions regarding high-quality operations of these strongly interdependent - and in most cases separately operated - systems. In this paper, we describe general operational challenges from a provider’s perspective and present dedicated models and processes focusing on describing and evaluating a mashup solution’s underlying structure to enforce service level agreements.

facilitate exploration and guidance. The mashup integrates data from several services and sources, e.g. a facility management system to provide information about buildings, rooms, equipment and occupancies. Furthermore, the mashup allows authenticated users to attach data (like descriptions, hints and pictures) to significant places of the campus and presents the data on a map.

Categories and Subject Descriptors K.6.4 [Management of Computing and Information Systems]: System Management – quality assurance.

General Terms Management, Documentation, Performance, Reliability.

Keywords Mashup, service-oriented systems, operations, maintenance.

1. INTRODUCTION Recently, the development of mashups, as an integration and combination of multi-sourced applications or content into a single value-adding and user-oriented service, gained popularity. Hereby, the distinct heterogeneity, distribution and evolution of strongly interdependent components scattered over various organizations result in a high complexity and fragility of the resulting systems. Thus, the mashup is vulnerable to failures in any one of the integrated components. In this context, dedicated mashup platforms focus on solving the technical challenges of (lightweight) mashup development [3] but neglect operational aspects, resulting in poor service delivery to the end-user. Unclear service level agreements (SLAs) and missing responsibilities and failover procedures aggravate the situation. With the predicted rise of mashups in the consumer space and especially in the enterprise world [1], operational challenges gain significance and have to be addressed in order to provide the value-adding services to the end-user at high quality.

2. OPERATIONAL CHALLENGES The Campus Map is a mapping mashup developed at the Karlsruhe Institute of Technology to provide students, staff and visitors of the university a detailed overview of the campus and Copyright is held by the International World Wide Web Conference Committee (IW3C2). Distribution of these papers is limited to classroom use, and personal use by others. WWW 2009, April 20–24, 2009, Madrid, Spain. ACM 978-1-60558-487-4/09/04.

Figure 1. Dependency graph between the services and roles required for the provision of the Campus Map Figure 1 depicts an overview of the dependency graph with the main elements indispensable to provide the mashup solution. On the one hand, it illustrates the technical complexity of the solution based on strongly interrelated services and elements of the technical infrastructure. On the other hand, it presents organizational dependencies as mashup components reside in different organizational units and have several responsible teams associated. Poor service quality of the mashup in terms of availability and reliability and the importance of the service (comprising approx. 5% of the overall portal traffic) motivated the analysis of the problem domain and resulted in the definition of the following challenges to improve operations of the service: Organizational Challenges: The main organizational aspect consists in establishing an operational team’s understanding on how their associated components contribute to the mashup solution and, beyond that, in the manifestation of an operational concept – ideally spanning over all involved organizational units. Besides the definition of processes and roles with competencies and responsibilities, this includes the actual application of the processes as well as the agreement of employees to assigned roles (e.g. in the area of incident and problem management to react adequately to failures and reduce downtime). Technical Challenges: The technical challenge consists in obtaining a technical overview of a mashup’s component tangle when the solution shifts from development to operations. The knowledge about dependencies between elements composing the mashup forms the basis for the definition of operational and

service level agreements and their monitoring by dedicated tools within the organizational units. Ideally, the correlation and aggregation of the gathered status information in a holistic monitoring approach, allows the prediction and efficient resolution of disturbances and an evaluation whether predefined SLAs regarding a mashup can be met by the underlying service-enabling elements.

3. SOLUTIONS To address the above-mentioned challenges, we adapted the integrated information map (i2map) as an approach supporting operations of service-oriented systems. A major design principle of the i2map is the gradual definition and isolated addressing of several cross-cutting concerns (e.g. configuration, monitoring etc.) pervading the overall system landscape. This aspect-orientation allows agility and the recentralization of problem solving strategies rather than scattering parts of such a solution all over the distributed system. In the following, we briefly present the work carried out regarding the aspects configuration and monitoring to face the challenge of high-quality operations of mashup solutions. Mashup Observation

SLA Decomposer

Performance Aggregator

i2map

Costumer-oriented SLAs & mashup structure

SLA validation

Change Mngt.

CMDB Configuration

Performance information & violations Elements & responsibilities

Status information

Key performance indicators, thresholds & SLA violations

Element Observation & Reporting

Problem& Incident Mngt.

Monitoring Env.

Issue Tracking System

Monitoring

Figure 2. Overview of the operational mashup support

3.1 Configuration The organizational as well as the technical challenges implicate the necessity to gather information regarding structure and expected behavior of the mashup solutions. To allow central accessibility and maintenance of the information, we utilized the existing configuration management database (CMDB) of the university’s computer center as a registry for information about the services, service-enabling elements and dependencies. The description of services followed a top-down approach starting with the definition of the mashup’s primary owner (person liable to deliver the service at defined quality levels) and the customeroriented description of the service for the product portfolio. Based on the assignment of existing assets within the CMDB and newlycreated specifications for service elements (e.g. for external services) to the mashup service, the technical and organizational structure of the mashup was gathered iteratively.

3.2 Monitoring As depicted in figure 2, the observation and reporting about the status of service-enabling elements is accomplished by dedicated monitoring environments. These tools enable the operator teams (according to the predefined responsibilities) to monitor elementconstricted, (non)-functional quality parameters. The coupling of the monitoring systems to established messaging and issue tracking systems allows the resolution of disturbances – especially regarding elements affecting the mashup service – more efficiently, leading to better service quality.

3.3 Integrated information map (i2map) To overcome the common problem of the missing linking between costumer-oriented and vague definitions of SLAs of a mashup and the element-constricted status observation, we use the i2map as a mediating and managing instance between the concerns configuration and monitoring. Hereby, the i2map consumes the specified mashups structure and SLAs from the CMDB, transforms the information according to the Common Information Model (CIM), an extensible standard defining how elements in an IT environment are described and managed, and conducts further processing. This includes the analysis of identifiable quality parameters within the SLA, their correlation to several key performance indicators (e.g. throughput, response time etc.), the definition of thresholds and the breakdown to quantifiable element-constricted parameters based on the mashups structure (SLA Decomposer). The result depicts the input for the monitoring environment and facilitates the observation of the service-enabling elements according to the mashup’s SLAs. Furthermore, the recentralization and aggregation of performance information based on the mashup structure through the Performance Aggregator allows the fine-grained determination of the mashup’s status as well as an efficient problem analysis in case of disturbances. In turn, sophisticated performance information about elements and element compounds can be used to support the definition of consistent and reasonable SLAs (e.g. prior to operations during the identification of different (qualitative) service variants for dedicated audiences) and influence the development of mashups (e.g. service selection).

3.4 Lessons Learned The information about the mashup structure improved the awareness of the operator teams about their contribution to meet the expectations of end-users and formed the motivation to provide high-quality services. Furthermore, the amount of failures due to uncoordinated changes was reduced as the mashup solution was set under established change management mechanisms within the CMDB and the structural overview allowed an impact analysis of changes. The decomposition of SLAs into quantifiable parameters and the instrumentation of monitoring tools to observe service-enabling elements is a promising approach to improve operations of mashup solutions. Herby, more work regarding the definition and semantic analysis of SLAs as well as the sophisticated analysis of the mashup’s structure will be conducted. Regarding the latter, we are currently working on an integration of semantic web frameworks for inferring further knowledge about the mashup structure. Altogether, the presented approach improved operations of the campus map mashup significantly and an example version (constricted regarding user generated content features to prevent data pollution) of the Campus Map is available at: http://research.tm.uni-karlsruhe.de/CampusMap/

4. REFERENCES [1] Gartner, Inc. Gartner Identifies the Top 10 Strategic Technologies for 2009. http://www.gartner.com/it/page.jsp?id=777212. 2008.

[2] Majer, F., Freudenstein, P., Nussbaumer, M. Roadmap towards Lifecycle Support for Highly Distributed Web-based Systems in Proceedings of 8th International Conference on Web Engineering (ICWE2008), New York, USA. 2008

[3] Merrill, D. Mashups: The new breed of Web app. http://www.ibm.com/developerworks/xml/library/xmashups.html. 2006