Special issue: selected papers from the 12th International Symposium on Web Systems Evolution (WSE 2010)

Authors


1 INTRODUCTION AND BACKGROUND

The International Symposium on Web Systems Evolution (WSE) is regarded as one of the premier conferences by the software evolution and maintenance community in its domain. As a symposium, an important focus of WSE is to enable stimulating discussions and interactions of researchers, ranging from the software maintenance and evolution community to the Web engineering and service-oriented computing community, from both academia and industry, while also providing a platform for presenting high-quality research papers. To give a visual impression of the topics covered by WSE from 2001 to 2011, Figure 1 shows a tag cloud constructed from the 170 paper titles published in the corresponding proceedings.

Figure 1.

Tag Cloud based on Paper Titles from WSE 2001–2011. The image has been generated with Wordle and can be accessed at http://www.wordle.net/show/wrdl/5720570/WSE_2001_to_2011.

The first edition of WSE was held in 1999 as “1st International Workshop on Web Site Evolution”, and since its sixth instantiation in 2005, it is held as a symposium. Since its third instantiation in 2001, WSE is sponsored by the IEEE Computer Society and co-located with the International Conference on Software Maintenance (ICSM). Accounting for the rapid evolution and expanding scope of research topics that surround the Web, WSE's name was changed from Web Site Evolution to Web Systems Evolution in 2009.

Web Systems Evolution covers an increasingly wide range of topics that address methodologies, techniques, and tools with respect to the architecture, design, evolution, maintenance, testing, and assessment of Web-related systems, applications, and sites. Information about WSE, including previous and upcoming events, can be found at its dedicated Web site at http://www.websiteevolution.org/. Furthermore, for interested readers, the history and topics of WSE have been summarized in papers at WSE's 5 [1] and 10 [2] years anniversaries.

This special issue presents four extended and revised papers from WSE 2010. The selected papers cover several active research topics that also represent current challenges that researchers are tackling.

SPECIAL ISSUE AND SELECTED PAPERS

This special issue is an outcome of the 12th IEEE International Symposium on Web Systems Evolution (WSE 2010) that was held on September 17–18, 2010 in Timişoara, Romania, and co-located with the 26th International Conference on Software Maintenance. WSE has had associated special issues for several years now, which have been published at the following journals: Wiley's Journal of Software Maintenance and Evolution (JSME) for WSE 2002 [3] and WSE 2006 [4], Rinton's Journal of Web Engineering (JWE) for WSE 2007 [5], and Springer's Software Tools for Technology Transfer (STTT) for WSE 2008 [6] and WSE 2009 [7].

Twenty-five technical papers (both full and short ones), from countries around the world, were submitted to WSE 2010. Each paper was reviewed at least by four members of the Program Committee, and nine full papers and six short papers were accepted for presentation at the Symposium and inclusion in the proceedings, published by the IEEE Computer Society. The WSE 2010 technical program also included a keynote speech by Carl Worms on ‘Web Services in a Global Bank – an Enterprise Architecture Perspective’ [8] and a panel on ‘Research Directions in Web Systems Evolution IV: Migrating to the Cloud’ [9].

Figure 2 shows a tag cloud generated from the titles and abstracts of all papers (including keynote and panel) from WSE 2010. Contrasting the tag clouds in Figures 1 and 2, one can see – not surprisingly – that there are Web-related themes that are a stable backbone of WSE: Web sites, applications, services, evolution, models/modeling, testing, tools, and so on. However, the increasingly diverse research around the Web is reflected by WSE 2010 with additional or more prominent themes such as interfaces, architecture, scripts, quality, requirements, autonomic/adaptation, haptic, and malware/attack. In contrast, WSE 2010 de-emphasized topics such as migrating, clustering, and accessibility.

Figure 2.

Tag Cloud based on Paper Titles and Abstracts from WSE 2010. The image has been generated with Wordle and can be accessed at http://www.wordle.net/show/wrdl/5720017/WSE_2010.

After the symposium, five papers were selected by the program chairs for submission to this special issue. The selection was based on the original assessments of members of the WSE 2010 program committee that had reviewed the submitted papers and on the presentations given at the symposium. The authors of the selected papers were asked to submit a significantly revised and extended version of their papers, and each of these papers was extensively reviewed by some of the members of the WSE 2010 program committee and the program chairs. The final selection of the papers in this issue was not easy, but after an extensive reviewing process – there were at least three reviewers and at least two reviewing rounds for each paper – four papers were ultimately accepted.

In the following, we briefly introduce these papers and, where applicable, place them in context with other WSE publications. The first two papers advance longstanding research topics of WSE (design recovery and quality models), whereas the other two papers – which tackle the issues of service composition mining, and the comparison and evaluation of software architectures for web applications – are newer topics for WSE in the areas of process recovery and autonomic computing.

The paper by Bernardi et al., ‘Web Applications Design Recovery and Evolution with RE-UWA’, presents a methodology and accompanying tools to support the evolution of Web applications. The methodology consists of two phases: the first phase enables the reverse engineering of an existing Web application, whereas the second phase enables forward engineering of the Web application to improve upon it in some form, depending on the particular goals of the evolution effort. The reverse engineering phase constructs a conceptual model of the Web application with semi-automatic tools such as clustering and clone detection that are realized on top of the Eclipse platform. The reverse engineering phase and its associated tools are validated with four real-world Web sites. The conceptual model of each site was analyzed manually, without tool support as well as with tool support. The authors conclude that the validation ‘showed that the approach is feasible and valid’.

Reverse engineering of Web sites and Web applications has been an active research stream at WSE. Generally, reverse engineering requires tool support (automatic or semi-automatic) to be effective. Consequently, the evaluation of a proposed reverse engineering technique needs an accompanying research tool that demonstrates the technique's feasibility. Examples of early efforts of techniques and tools that have been published at WSE 2001 include work by Hassan and Holt [10] as well as Martin and Martin [11]. These approaches confirmed that it is feasible to apply and adapt existing software engineering techniques to the domain of the Web. Examples of more specialized techniques and tools published over the years at WSE are by Estivenart et al. [12], Gui et al. [13], and Sneed [14]. Bernardi and Distante, co-authors of this special issue's paper, have presented at WSE 2008 earlier work related to the their methodology's reverse engineering phase [15] and have continued their work on the forward engineering phase with a publication at WSE 2011 [16].

The paper by Vaucher et al., ‘Automated Evaluation of Web Site Navigability: an Empirical Validation of Multi-level Quality Models’, presents a quality model for Web sites with the aim to assess a site's navigability and to possibly improve upon its usability. Quality models can provide an estimate of how users would assess a Web site without incurring the significant efforts and high costs that are typically associated with extensive user surveys. The quality model is composed of a page model that addresses navigability within a Web page, a composition model that addresses navigability between different pages, and a site model that summarizes the navigability of the whole site. These models are cascaded suitably. A key concern for such a quality model is its own quality in terms of predictive power, or as the authors phrase it, ‘a quality model is as useful as its capacity to reproduce the judgment of a human’. To address this concern, 30 Web sites were evaluated manually by 21 subjects that had to perform a number of tasks. These human judgments were then correlated to the quality model, which showed that the model could indeed ‘predict the perception of navigability by [the] subjects’. In summary, the authors present a quality model for navigability that improves upon the state of the art and that has been validated empirically.

Usability of Web sites has been an active research stream at WSE that can be traced back to a paper at WSE 2000 by Boldyreff et al., which proposed to establish dedicated metrics for evaluating Web sites [17]. At WSE 2005, a paper was published by Signore that proposes a quality model to assess Web sites on the basis of five dimensions, including navigability as one dimension [18]. In the same year, a paper, which introduces the MiLE+ methodology for evaluating Web site usability, by Triacca et al. [19] appeared. Part of MiLE+ is a so-called technical inspection by a human expert that, among other criteria, checks for navigability. At WSE 2008, Martin [20] proposed to assess usability by logging user activities. Last but not least, usability is an important concern for making the Web more accessible for persons with disabilities and low Web literacy. For instance, at WSE 2007, Cesarano et al. [21] focused on usability for the blinds, which have different usability requirements, including navigability, because they listen to content in a one-dimensional voice stream. Further references to accessibility research at WSE can be found at a dedicated overview paper [22].

The paper by Upadhyaya et al., ‘An Approach for Mining Service Composition Patterns from Execution Logs’, presents an approach to automatically identify patterns of service composition by analyzing the execution logs of various applications. First, the execution logs are collected and pre-processed to extract the service invocation events. Then, a set of associated services that frequently appear together in many execution instances are identified to generate candidate service sets and to select the one with the highest frequency as the intermediate pattern service set from which the final pattern service set is constructed. The control flow among the services in the pattern is then recovered by combining the execution flows from all execution instances to obtain the overall execution flows of the service composition pattern and to infer the control-flow structures (e.g., sequential and parallel) from it. This allows to identify structurally similar patterns (i.e., patterns whose control flow is present in the control flow of another one). Finally, functionally similar patterns are identified and represented at a higher level of abstraction, regardless of the concrete services that they were recovered from. The functional similarity among services is measured by the similarity in the names of the operations and of the input and output parameters between the involved services. The authors carried out a case study to validate the approach and conclude that the proposed approach can effectively detect service composition patterns.

Web services and the evolution of (Web) applications towards Web services has been another one of the outstanding issues of more recent editions of WSE. The issue of mining of Web services in existing applications was dealt with by Aversano et al. [23] at WSE 2008, whereas at WSE 2009, an approach to compose Web services was presented by Jafarpour et al. [24]. However, the main issue related to Web services addressed by WSE over the years has been the migration of existing applications towards Web services. WSE 2002 is the first edition where we can find research dealing with that by Lavery et al. [25], Litoiu [26], and Tilley et al. [27]. Sneed has been one of the authors that made a large contribution on the issue of Web services with several papers presented at WSE addressing the migration towards Web services [[14, 28]], testing of Web services [29], and the complexity and quality assessment of Web service interfaces [30]. Other contributions on the migration towards Web services have been made by Bhallamudi et al. [31], Marchetto et al. [32], and Yang et al. [33]. Xu et al. [34] address the testing of Web services, whereas the issue of synchronization among multiple service versions is dealt with by Wang et al. [35].

The paper by Litoiu and Barna, ‘A Performance Evaluation Framework for Web Applications’, presents a formal framework, called Software Performance for Autonomic Computing (SPAC), which supports a software engineer designing a Web application in the task of choosing from many possible architecture styles the one most suitable with respect to performance requirements. The proposed framework allows to compare and rank software architectures in the presence of complex performance requirements. SPAC considers and acts on the base of the performance requirements, the software architecture alternatives, and a performance model of the system along with its workloads. The framework produces a list of ranked architecture alternatives that is obtained by solving the performance models associated with each of the architectures, matching the actual performance metrics computed from the solved models against the performance requirements, and aggregating the results of the matching. The framework can be used both at design and run time. It introduces an architecture performance specification language, a solver and an optimization technique, that quantifies a software architecture in light of the performance attributes. The tool OPERA (Optimization Performance Evaluation and Resource Allocation) was developed to support the framework's application. Finally, the authors present and discuss a case study to validate that the proposed framework selects the most appropriate architecture with regard to performance requirements and architecture characteristics.

The topic of this paper is quite new for WSE; indeed, just two papers were presented in previous editions about the evaluation or comparison of architectures for Web applications. Both were presented at WSE 2003: one by Smith et al. [36], and the other one by Sun et al. [37].

ACKNOWLEDGEMENTS

Our thanks go to the members of the WSE 2010 program committee and in particular to the reviewers for this special issue, who provided us with in-depth, high-quality reviews. Many thanks to Scott Tilley for his invaluable help when organizing WSE 2010 and to Alice Wood and Gerardo Canfora for their support when preparing this special issue.

Biographies

  • imageHolger M. Kienle holds a PhD degree from the University of Victoria, Canada (2006), a Diploma in Computer Science from the University of Stuttgart, Germany (1999), and a Master of Science degree in Computer Science from the University of Massachusetts Dartmouth (1995). He received a Research Fellowship (1997–1998) from the University of California Santa Barbara and a fellowship from IBM Canada CAS, (2003–2005). For 2 years, he was a part-time researcher with Mälardalen University's PROGRESS center (2010–2011). He is a part-time Postdoc at the Computer Science Department at the University of Victoria, Canada (Prof. Hausi Müller). He has made scientific contributions in the areas of reverse engineering and component-based development. He was general chair for WSE 2011, program co-chair for WSE 2010, and co-organizer of the WASDeTT workshop series. He has served on the program committees of several conferences (CSMR, ICSM, WCRE, and WSE) and workshops (SEAMS and RELAW).

  • imageGiuseppe Di Lucca is an associate professor of Software Engineering at the Department of ‘Ingegneria’ of the University of Sannio. He received the Laurea degree in Electronic Engineering from the University of Naples ‘Federico II’, Italy, in 1987 and the PhD degree in Electronic Engineering and Computer Science from the same University in 1992. Since 1987, he has been a researcher in the field of software engineering, and his list of publications contains more than 100 papers published in journals, conference proceedings, and book chapters. His main research interests include software engineering, software maintenance, software testing, reverse engineering, software reuse, software re-engineering, software migration, aspect oriented software development, and web engineering. He was program co-chair for WSE 2010 and serves both as a member of the program and organizing committees of conferences and as a reviewer of papers submitted to some of the main journals and magazines in the field of software engineering, software maintenance, and program comprehension.

  • imageKostas Kontogiannis is an associate professor at the Department of Electrical and Computer Engineering at the National Technical University of Athens, Greece, where he is leading the Software Engineering group. Prior to joining his current position, he served as a tenured associate professor at the Department of Electrical and Computer Engineering as at the University of Waterloo, Canada. Kostas received a BSc degree in Mathematics from the University of Patras, Greece, an MSc degree in Computer Science from Katholieke Universiteit Leuven, Belgium, and a PhD degree in Computer Science from McGill University, Canada. Kostas is working in the areas of software analysis, software evolution, model driven engineering, and software systems integration. He has been the recipient of three IBM University Partnership Awards and a Canada Foundation for Innovation (CFI) Award. Kostas is a faculty fellow at the IBM Center for Advanced Studies in IBM Toronto Laboratory.

Ancillary