@conference {2025:fc4mc:icsoc,
	title = {BPMN4BC: A Simple BPMN Extension for Blockchain-Enabled Business Process Modeling},
	booktitle = {23rd International Conferene on Service-Oriented Computing (ICSOC)},
	volume = {16321},
	year = {2025},
	month = {December},
	publisher = {Springer},
	organization = {Springer},
	address = {Shenzhen, China},
	abstract = {Blockchain technology has recently gained significant traction to support collaborative processes due to its ability to enable decentralization in environments that do not require a central authority. While there are numerous model-to-code approaches to facilitate the deployment and execution of processes on the blockchain, few have addressed the critical aspect of explicit modeling and designing blockchain-enabled processes. This paper introduces BPMN4BC, an extended set of notations designed to represent blockchain properties in process diagrams. These notations help distinguish on-chain from off-chain logic, preventing their overlap and accurately representing blockchain transactions. BPMN4BC enables business users and domain experts to capture blockchain-specific properties within their collaborative process models explicitly. We also introduce the BPMN4BC compiler that generates and deploys the corresponding Solidity code. To assess the consequences of different modeling choices, we compare the execution cost associated with two alternative deployment strategies, thereby demonstrating how modeling decisions influence blockchain properties such as gas usage.},
	keywords = {blockchain, BPMN, process modeling},
	doi = {10.1007/978-981-95-5015-9_22},
	author = {Hassan Atwi and Cesare Pautasso}
}
@article {2026:fc4mc:jbcra,
	title = {Enhancing Transparency in Transaction Ordering: Dynamic Orderer Selection in Blockchain-driven Collaborative Processes},
	journal = {Blockchain: Research and Applications},
	year = {2025},
	chapter = {100412},
	abstract = {Supporting decentralized and trustless coordination among organizations, blockchain technology holds significant potential for addressing trust-related issues in inter-organizational collaborative processes. In this context, basic blockchain consensus mechanisms often introduce vulnerabilities, such as transaction reordering, manipulation, or censorship by malicious nodes, which can distort business objectives and undermine trust among collaborators.
This paper examines the influence of transaction ordering on decentralized business process choreography, highlighting competitive scenarios where malicious ordering can create unfair advantages. To counter such maximal extractable value attacks, we propose to align transaction ordering with business process logic with three novel strategies for process-aware transaction ordering. Our approach has proven effective in mitigating malicious transaction ordering, thereby enhancing fairness and transparency in the collaborative process execution. However, this comes with a trade-off in terms of time and computational cost, as observed in our extensive experimental evaluation.},
	keywords = {Block selection, blockchain, Process choreography, Transaction ordering Transparency},
	doi = {10.1016/j.bcra.2025.100412},
	author = {Hassan Atwi and Tom Lichtenstein and Cesare Pautasso and Mathias Weske}
}
@demo {2025:apiace:vissoft,
	title = {EVOSCAT: Exploring Software Change Dynamics in Large-Scale Historical Datasets},
	year = {2025},
	month = {September},
	publisher = {IEEE},
	address = {Auckland, New Zealand},
	abstract = {Long lived software projects encompass a large number of artifacts, which undergo many revisions throughout their history. Empirical software engineering researchers studying software evolution gather and collect datasets with millions of events, representing changes introduced to specific artifacts. In this paper, we propose EVOSCAT, a tool that attempts addressing temporal scalability through the usage of interactive density scatterplot to provide a global overview of large historical datasets mined from open source repositories in a single visualization.  EVOSCAT intends to provide researchers with a mean to produce scalable visualizations that can help them explore and characterize evolutions datasets, as well as comparing the histories of individual artifacts, both in terms of 1) observing how rapidly different artifacts age over multiple-year-long time spans 2) how often metrics associated with each artifacts tend towards an improvement or worsening. The paper shows how the tool can be tailored to specific analysis needs (pace of change comparison, clone detection, freshness assessment) thanks to its support for flexible configuration of history scaling and alignment along the time axis, artifacts sorting and interactive color mapping, enabling the analysis of millions of events obtained by mining the histories of tens of thousands of software artifacts. We include in this paper a gallery showcasing datasets gathering specific artifacts (OpenAPI descriptions, GitHub workflow definitions) across multiple repositories, as well as diving into the history of specific popular open source projects.},
	keywords = {Interactive Scatterplot, Large-Scale Historical Data, Software Evolution Visualization},
	doi = {10.1109/VISSOFT67405.2025.00021},
	url = {https://arxiv.org/abs/2508.10852},
	author = {Souhaila Serbout and Diana Carolina Mu{\~n}oz Hurtado and Hassan Atwi and Edoardo Riggio and Cesare Pautasso}
}
@inproceedings {2025:fc4mc:dlt4bpm,
	title = {Gas Management Patterns in Blockchain-enabled Process Execution},
	year = {2025},
	month = {September},
	publisher = {Springer},
	address = {Seville, Spain},
	abstract = {In this paper, we present a methodology for modeling efficient gas management in blockchain-enabled collaborative business processes. We introduce four patterns designed to optimize and manage gas fees throughout business process execution. These patterns are formally represented using BPMN to provide a clear visual framework for integration into business workflows. Furthermore, we translate these patterns into Solidity smart contracts and evaluate their performance within a real-world business scenario. Our approach aims to enhance the efficiency and cost-effectiveness of blockchain-based process execution.},
	keywords = {blockchain, BPMN, Collaborative processes, Gas Management, Solidity},
	url = {https://dlt4bpm.github.io/assets/papers/BPM_2025_paper_348.pdf},
	author = {Hassan Atwi and Cesare Pautasso}
}
@proceedings {2024:fc2mc:bpm,
	title = {Transparent Transaction Ordering in Blockchain-based Collaborative Processes},
	year = {2024},
	month = {September},
	publisher = {Springer},
	address = {Krakow, Poland},
	abstract = {Blockchain technology offers a promising solution for overcoming trust-related challenges, such as transparency in interorganizational collaborative processes. However, since the ordering of transactions in a block can affect the outcome of a process instance, fairness and transparency concerns regarding block selection may arise. This paper presents a consensus-agnostic approach to promote transparency in transaction ordering in blockchain-based business processes. The approach allows participants to align the execution order of their transactions with their business objectives, effectively mitigating the lack of transparency associated with the arbitrary selection and ordering of transactions during block selection. Our experiments reveal that the increased transparency mitigates the risks of suppression and displacement attacks at the cost of introducing additional latency and cost.},
	keywords = {Block selection, blockchain, choreography, Transaction ordering, Transparency},
	author = {Hassan Atwi and Tom Lichtenstein and Cesare Pautasso and Mathias Weske}
}
@conference {fc4mc:2023:bpm,
	title = {Loose Collaborations on the Blockchain: Survey and Challenges},
	booktitle = {21st International Conference on Business Process Management - Blockchain Forum},
	year = {2023},
	month = {September},
	pages = {21--35},
	publisher = {Springer},
	organization = {Springer},
	address = {Utrecht, the Netherlands},
	abstract = {Blockchain technology has emerged as a promising infrastructure for enabling collaboration between mutually distrustful organizations. The enactment of blockchain-based collaborative processes typically requires a profound understanding of the process being executed, limiting support for flexible processes that cannot be fully prespecified at design time. To overcome this limitation, support for looseness, dealing with the configuration and execution of underspecified processes, is essential. In this paper, we conduct a systematic literature review to examine looseness support for blockchain-based collaborative processes from a behavioral and organizational perspective. In addition, we identify open research challenges to pave the way for further research in this area.},
	keywords = {blockchain, Collaborative processes, Flexibility, Looseness},
	doi = {10.1007/978-3-031-43433-4_2},
	url = {https://link.springer.com/chapter/10.1007/978-3-031-43433-4_2},
	author = {Tom Lichtenstein and Hassan Atwi and Mathias Weske and Cesare Pautasso}
}
@article {2019:rest:sawq,
	title = {SAW-Q: a dynamic composition approach of REST services based on queue model},
	journal = {International Journal of Web and Grid Services},
	volume = {15},
	year = {2019},
	month = {January},
	pages = {29 - 58},
	abstract = {Service composition is one of the principles of service-oriented architecture; it enables reuse and allows developers to combine existing services in order to create new services that in turn can be part of another composition. Dynamic composition requires that service components are chosen from a set of services with equal or similar functionality at runtime and possibly automatically. The adoption of the REST services in the industry has led to a growing number of services of this type, many with similar functionality. The existing dynamic composition techniques are method-oriented whereas REST is resource-oriented and consider only traditional (WSDL/SOAP) services. We propose SAW-Q, an extension of simple additive weighting (SAW), as a novel dynamic composition technique that follows the principles of the REST style. Additionally, SAW-Q models quality attributes as a function of the actual service demand instead of the traditional constant values. Our model is much more accurate when compared to real implementation, positively improving the quality of dynamic service compositions.},
	keywords = {automatic composition, dynamic composition, quality of service, REST, SOA, Web services},
	doi = {10.1504/IJWGS.2019.096555},
	author = {Bellido, Jesus and Rosa Alarc{\'o}n and Cesare Pautasso and Carla Vairetti}
}
@article {2017:sw:ms1,
	title = {Microservices in Practice (Part 1): Reality Check and Service Design},
	journal = {IEEE Software},
	volume = {34},
	year = {2017},
	month = {January-February},
	pages = {91-98},
	keywords = {Microservices},
	doi = {10.1109/MS.2017.24},
	url = {http://ieeexplore.ieee.org/document/7819415/},
	author = {Cesare Pautasso and Olaf Zimmermann and Mike Amundsen and James Lewis and Nicolai Josuttis}
}
@article {2017:sw:ms2,
	title = {Microservices in Practice (Part 2): Service Integration and Sustainability},
	journal = {IEEE Software},
	volume = {34},
	year = {2017},
	month = {March-April},
	pages = {97-104},
	keywords = {Microservices},
	doi = {10.1109/MS.2017.56},
	url = {http://ieeexplore.ieee.org/document/7888407/},
	author = {Cesare Pautasso and Olaf Zimmermann and Mike Amundsen and James Lewis and Nicolai Josuttis}
}
@phdthesis {phd:2014:saeed.aghaee,
	title = {End-User Development of Mashups Using Live Natural Language Programming},
	volume = {PhD},
	year = {2014},
	month = {February},
	school = {University of Lugano},
	type = {PhD},
	address = {Lugano, Switzerland},
	abstract = {The emergence of the long-tail in the market of software applications is shifting the role of end-users from mere consumers to becoming developers of applications addressing their unique, personal, and transient needs. On the Web, a popular form of such applications is called mashup, built out of the lightweight composition of Web APIs (reusable software components delivered as a service through the Web). To enable end-users to build mashups, there is a key problem that must be overcome: End-users lack programming knowledge as well as the interest to learn how to master the complex set of Web technologies required to develop mashups. End-User Development (EUD) is an emerging research field dealing with this type of problems. Its main goal is to design tools and techniques facilitating the development of software applications by non-programmers.

In this dissertation, we designed and implemented NaturalMash, an EUD system that empowers end-users to develop mashups. NaturalMash adopts a novel hybrid end-user programming technique combining natural language programming with a what-you-see-is-what-you-get interface in a live programming environment. We followed an iterative user-centered design process, in which three formative evaluations drove the incremental design of our system. At the end of the process, we conducted a summative usability evaluation, whose results suggest that the system is highly usable by non-programmers. Also, we proposed a novel benchmarking framework to evaluate mashup tools against each other. Using the framework, we conducted a comparative evaluation of 28 state-of-the-art mashup tools (NaturalMash included) against their expressive power. According to the results, our proposed system has a moderate yet competitive level of expressiveness. All in all, NaturalMash contributes a novel design featuring a unique combination of end-user programming techniques, a suitable metaphor, and the ability to enable an optimal learning experience. Our extensive evaluation results indicate that NaturalMash is located at a sweet spot along the classical trade-off between expressiveness and usability/learnability.
},
	keywords = {end-user software engineering, live programming, natural language programming, NaturalMash, Web mashups},
	url = {http://doc.rero.ch/record/210369/files/2014INFO002.pdf},
	author = {Saeed Aghaee}
}
@article {naturalmash:2014,
	title = {End-User Development of Mashups with NaturalMash},
	journal = {Journal of Visual Languages \& Computing},
	volume = {25},
	year = {2014},
	month = {August},
	pages = {414{\textendash}432},
	abstract = {Context: The emergence of the long-tail in the market of software applications is shifting the role of end-users from mere consumers to becoming developers of applications addressing their unique, personal, and transient needs. On the Web, a popular form of such applications is called mashup, built out of the lightweight composition of Web APIs (reusable software components delivered as a service through the Web). To enable end-users to build mashups, there is a key problem that must be overcome: End-users lack programming knowledge as well as the interest to learn how to master the complex set of Web technologies required to develop mashups. End-User Development (EUD) is an emerging research field dealing with this type of problems. Its main goal is to design tools and techniques facilitating the development of software applications by non-programmers.

Objective: The paper describes the design and evaluation of NaturalMash, an innovative EUD tool for mashups (a mashup tool). NaturalMash aims at enabling non-professional users without any knowledge of programming languages and skills to create feature-rich, interactive, and useful mashups.

Methods: The design of NaturalMash adopts a formative evaluation approach, and has completed three design and evaluation iterations. The formative evaluations utilize usability testing, think aloud protocol, questionnaires, observation, and unstructured interviews. Additionally, we compare the expressive power of naturalmash with the state-of-the-art mashup tools.

Results: The results from the formative evaluations helped us identify important usability problems. From an assessment point of view, the results were promising and sggested that the proposed tool has a short and gentle learning curve in a way that even non-programmers are able to rapidly build useful mashups. Also, the comparative evaluation results showed that NaturalMash offers a competitive level of expressive power compared with existing mashup tools targeting non-programmers.

Conclusion: As the evaluation results indicate, NaturalMash provides a high level of expressive power while it is still highly usable by non-programmers. These suggest that we have successfully achieved the objective of the proposed tool, distinguishing it from existing mashup tools that are either too limited or highly specialized for non-professional users.},
	keywords = {mashup tools, mashups, natural language programming, NaturalMash, programming by demonstration, wysiwyg},
	doi = {http://dx.doi.org/10.1016/j.jvlc.2013.12.004},
	author = {Saeed Aghaee and Cesare Pautasso}
}
@article {105,
	title = {Improving execution unit occupancy on SMT-based processors through hardware-aware thread scheduling},
	journal = {Future Generation Computer Systems},
	volume = {30},
	year = {2014},
	month = {January},
	pages = {229 - 241},
	abstract = {Modern processor architectures are increasingly complex and heterogeneous, often requiring software solutions tailored to the specific hardware characteristics of each processor model. In this article, we address this problem by targeting two processors featuring Simultaneous MultiThreading (SMT) to improve the occupancy of their internal execution units through a sustained stream of instructions coming from more than one thread. We target the AMD Bulldozer and IBM POWER7 processors as case studies for specific hardware-oriented performance optimizations that increase the variety of instructions sent to each core to maximize the occupancy of all its execution units. WorkOver, presented in this article, improves thread scheduling by increasing the performance of floating point-intensive workloads on Linux-based operating systems. WorkOver is a user-space monitoring tool that automatically identifies FPU-intensive threads and schedules them in a more efficient way without requiring any patches or modifications at the kernel level. Our measurements using standard benchmark suites show that speedups of up to 20\% can be achieved by simply allowing WorkOver to monitor applications and schedule their threads, without any modification of the workload.},
	keywords = {multicores, Overseer},
	issn = {0167739X},
	doi = {10.1016/j.future.2013.06.015},
	author = {Achille Peternier and Danilo Ansaloni and Daniele Bonetta and Cesare Pautasso and Walter Binder}
}
@book {rest:2014,
	title = {REST: Advanced Research Topics and Practical Applications},
	year = {2014},
	pages = {1-214},
	publisher = {Springer},
	organization = {Springer},
	keywords = {REST},
	isbn = {978-1-4614-9298-6},
	url = {http://ws-rest.org/book/2/},
	editor = {Cesare Pautasso and Erik Wilde and Rosa Alarc{\'o}n}
}
@article {rest:tweb:2013,
	title = {Control-Flow Patterns for Decentralized RESTful Service Composition},
	journal = {ACM Transactions on the Web (TWEB)},
	volume = {8},
	year = {2013},
	month = {December},
	pages = {5:1{\textendash}5:30},
	abstract = {The REST architectural style has attracted a lot of interest from industry due to the nonfunctional properties it contributes to Web-based solutions. SOAP/WSDL-based services, on the other hand, provide tools and methodologies that allow the design and development of software supporting complex service arrangements, enabling complex business processes which make use of well-known control-flow patterns. It is not clear if and how such patterns should be modeled, considering RESTful Web services that comply with the statelessness, uniform interface and hypermedia constraints. In this article, we analyze a set of fundamental control-flow patterns in the context of stateless compositions of RESTful services. We propose a means of enabling their implementation using the HTTP protocol and discuss the impact of our design choices according to key REST architectural principles. We hope to shed new light on the design of basic building blocks for RESTful business processes.},
	keywords = {business process management, control flow, control-flow patterns, REST, service composition, Web services},
	issn = {1559-1131},
	doi = {10.1145/2535911},
	url = {http://doi.acm.org/10.1145/2535911},
	author = {Bellido, Jesus and Rosa Alarc{\'o}n and Cesare Pautasso}
}
@conference {aghaee2013iseud,
	title = {Guidelines for Efficient and Effective End-User Development of Mashups},
	booktitle = {Fourth International Symposium on End-User Development (IS-EUD 2013)},
	year = {2013},
	month = {June},
	pages = {260-265},
	address = {Copenhagen, Denmark},
	abstract = {End-User Development (EUD) is an emerging research area aiming at empowering non-technical users to somehow create or design software artifacts. Mashups provide a high potential for EUD activities on the Web. Users on the Web can tap into a vast resource of off-the-shelf components in order to rapidly compose new lightweight software applications called mashups. In this paper, we provide a set of guidelines to design EUD systems for mashups that are widely referred to as mashup tools. The guidelines are derived from our experience with the (ongoing) design and evaluation of NaturalMash, a novel mashup tool targeted for a wide range of users to create feature-rich mashups.},
	keywords = {end-user software engineering, NaturalMash, Web mashups},
	doi = {10.1007/978-3-642-38706-7_23},
	author = {Saeed Aghaee and Cesare Pautasso}
}
@inproceedings {aghaee2013live,
	title = {Live Mashup Tools: Challenges and Opportunities},
	year = {2013},
	month = {May},
	address = {San Francisco, CA, USA},
	abstract = {Live programming is a programming style in which the repetitive task of compiling and running the software being programmed is managed automatically. This style can be a helpful practice in End-User Development (EUD) where the non-professional end-users are to be supported through techniques and tools that empower them to create or modify software artifacts. Mashups {\textemdash} a form of lightweight Web applications composing reusable content and functionalities available on the Web {\textemdash} are a popular target for EUD activities on the Web. EUD for mashups is enabled by intuitive composition environments, called mashup tools. In this paper, we introduce live mashup tools, a new class of mashup tools based on the live programming style. We give a comprehensive definition and classification of live mashup tools, giving examples of how well existing tools fit in this category and discuss open research challenges and opportunities.},
	keywords = {live programming, NaturalMash, Web mashups},
	doi = {10.1109/LIVE.2013.6617338},
	author = {Saeed Aghaee and Cesare Pautasso}
}
@conference {naturalmash:vlhcc:2013,
	title = {Natural End-User Development of Web Mashups},
	booktitle = {IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2013)},
	year = {2013},
	month = {September},
	pages = {111 - 118 },
	publisher = {IEEE},
	organization = {IEEE},
	address = {San Jose, CA, USA},
	abstract = {End-User Development (EUD) can be exploited on the Web, where users have the opportunity to create niche {\textquotedblleft}Web Mashup{\textquotedblright} applications as a means to address their long tail of situational needs in different domains of application. In this paper, we describe the design and evaluation of NaturalMash, an innovative EUD system for mashups. NaturalMash provides a high level of expressive power while it is still usable by non-professional users. This clearly distinguishes NaturalMash from existing mashup EUD tools that are either too limited or highly specialized for inexperienced users. The NaturalMash user interface efficiently combines different techniques such as live programming, natural language programming, What You See Is What You Get (WYSIWYG), and Programming by Demonstration (PbD). The design of NaturalMash adopts a formative evaluation approach, and has completed two design and evaluation iterations. The paper reports the results of the last formative evaluation and discusses the implications of the findings. The results are promising and suggest that the proposed system has a short and gentle learning curve and enables even non-professional users to rapidly build useful mashups.},
	keywords = {end-user software engineering, natural language processing, NaturalMash, service composition, Web mashups},
	doi = {10.1109/VLHCC.2013.6645253},
	author = {Saeed Aghaee and Cesare Pautasso and Antonella De Angeli}
}
@inproceedings {naturalmash:cweb:2012,
	title = {EnglishMash: Usability Design for a Natural Mashup Composition Environment},
	volume = {7703},
	year = {2012},
	month = {July},
	pages = {109-120},
	publisher = {Springer},
	address = {Berlin, Germany},
	abstract = {The design of mashup tools combines elements from end-user development and software composition in the context of the Web. The challenge for mashup tool designers is to provide end-users with suitable abstractions, programming models and tool support for easily composing mashups out of existing Web services and Web data sources. In this paper we describe the design of a natural mashup composition environment based on the EnglishMash controlled natural language. The environment proactively supports users as they are learning the syntax of the EnglishMash language with features such as auto-completion, immediate feedback, live preview of the mashup execution and component discovery and selection based on natural language descriptions.},
	keywords = {NaturalMash, Web mashups},
	doi = {10.1007/978-3-642-35623-0_12},
	author = {Saeed Aghaee and Cesare Pautasso}
}
@conference {peternier2012ICPADS,
	title = {Hardware-aware thread scheduling: the case of asymmetric multicore processors},
	booktitle = {18th International Conference on Parallel and Distributed Systems (ICPADS)},
	year = {2012},
	month = {December},
	pages = {400-407},
	address = {Singapore},
	abstract = {Modern processor architectures are increasingly complex and heterogeneous, often requiring solutions tailored to the specific characteristics of each processor model. In this paper we address this problem by targeting the AMD Bulldozer processor as case study for specific hardware-oriented performance optimizations. The Bulldozer architecture features an asymmetric simultaneous multithreading implementation with shared floating point units (FPUs) and per-core arithmetic logic units (ALUs). Bulld Over, presented in this paper, improves thread scheduling by exploiting this hardware characteristic to increase performance of floating point-intensive workloads on Linux-based operating systems. Bulld Over is a user-space monitoring tool that automatically identifies FPU-intensive threads and schedules them in a more efficient way without requiring any patches or modifications at the kernel level. Our measurements using standard benchmark suites show that speedups of up to 10\% can be achieved by simply allowing Bulld Over to monitor applications, without any modification of the workload.},
	doi = {http://doi.ieeecomputersociety.org/10.1109/ICPADS.2012.62},
	author = {Achille Peternier and Danilo Ansaloni and Daniele Bonetta and Cesare Pautasso and Walter Binder}
}
@conference {bonetta2012EuroPar,
	title = {Node.Scala: Implicit Parallel Programming for High-Performance Web Services},
	booktitle = {International European Conference on Parallel and Distributed Computing (EuroPar 2012)},
	volume = {7484},
	year = {2012},
	month = {August},
	pages = {626{\textendash}637},
	publisher = {Springer},
	organization = {Springer},
	address = {Rhodes Island, Greece},
	keywords = {Node.JS, REST, Scala, scalability, Web services},
	isbn = {978-3-642-32819-0},
	url = {http://sosoa.inf.unisi.ch/files/sosoa_europar2012.pdf},
	author = {Daniele Bonetta and Danilo Ansaloni and Achille Peternier and Cesare Pautasso and Walter Binder}
}
@conference {DBLP:conf/eics/AghaeeNP12,
	title = {Reusable decision space for mashup tool design},
	booktitle = {4th ACM SIGCHI symposium on Engineering interactive computing systems (EICS 2012)},
	year = {2012},
	month = {June},
	pages = {211-220},
	address = {Copenhagen, Denmark},
	abstract = {Mashup tools are a class of integrated development environments that enable rapid, on-the-fly development of mashups - a type of lightweight Web applications mixing content and services provided through the Web. In the past few years there have been growing number of projects, both from academia and industry, aimed at the development of innovative mashup tools. From the software architecture perspective, the massive effort behind the development of these tools creates a large pool of reusable architectural decisions from which the design of future mashup tools can derive considerable benefits. In this paper, focusing on the design of mashup tools, we explore a design space of decisions comprised of design issues and alternatives. The design space knowledge not only is broad enough to explain the variability of existing tools, but also provides a road-map towards the design of next generation mashup tools.},
	keywords = {architectural decisions, design space, survey, Web mashups},
	doi = {10.1145/2305484.2305520},
	author = {Saeed Aghaee and Marcin Nowak and Cesare Pautasso}
}
@proceedings {wsrest2012,
	title = {Third International Workshop on RESTful Design (WS-REST 2012)},
	year = {2012},
	month = {March},
	publisher = {ACM},
	address = {Lyon, France},
	keywords = {proceedings, REST},
	isbn = {978-1-4503-1190-8},
	doi = {10.1145/2307819.2307821},
	url = {http://dl.acm.org/citation.cfm?id=2307819},
	editor = {Rosa Alarc{\'o}n and Cesare Pautasso and Erik Wilde}
}
@article {DBLP:conf/icwe/AghaeeP11a,
	title = {End-User Programming for Web Mashups - Open Research Challenges},
	volume = {7059},
	year = {2011},
	month = {June},
	pages = {347-351},
	publisher = {Springer},
	address = {Paphos, Cyprus},
	abstract = {Mashup is defined as the practice of lightweight composition, serendipitous reuse, and user-centric development on the Web. In spite of the fact that the development of mashups is rather simple due to the reuse of all the required layers of a Web application (functionality, data, and user interface), it still requires programming experience. This is a significant hurdle for non-programmers (end-users with minimal or no programming experience), who constitute the majority of Web users. To cope with this, an End-User Programming (EUP) tool can be designed to reduce the barriers of mashup development, in a way that even non-programmers will be able to create innovative, feature-rich mashups. In this paper, we give an overview of the existing EUP approaches for mashup development, as well as a list of open research challenges.},
	keywords = {end-user software engineering, Web mashups},
	doi = {10.1007/978-3-642-27997-3_38},
	author = {Saeed Aghaee and Cesare Pautasso}
}
@inproceedings {icwe:2011:naturalmash,
	title = {An Evaluation of Mashup Tools Based on Support for Heterogeneous Mashup Components},
	volume = {7059},
	year = {2011},
	month = {June},
	pages = {1-12},
	publisher = {Springer},
	address = {Paphos, Cyprus},
	abstract = {Mashups are built by combining building blocks, which are commonly referred to as mashup components. These components are characterized by a high level of heterogeneity in terms of technologies, access methods, and the behavior they may exhibit within a mashup. Abstracting away this heterogeneity is the mission of the so-called mashup tools aiming at automating or semi-automating mashup development to serve non-programmers. The challenge is to ensure this abstraction mechanism does not limit the support for heterogeneous mashup components. In this paper, we propose a novel evaluation framework that can be applied to assess the degree to which a given mashup tool addresses this challenge. The evaluation framework can serve as a benchmark for future improved design of mashup tools with respect to heterogeneous mashup components support. In order to demonstrate the applicability of the framework, we also apply it to evaluate some existing tools.},
	doi = {10.1007/978-3-642-27997-3_1},
	author = {Saeed Aghaee and Cesare Pautasso}
}
@conference {naturalmash:iiwas:2012,
	title = {The mashup component description language},
	booktitle = {13th International Conference on Information Integration and Web-based Applications and Services  (iiWAS 2011)},
	year = {2011},
	month = {December},
	pages = {311-316},
	address = {Ho Chi Minh City, Vietnam},
	abstract = {Mashups can be seen as the result of software composition applied to the Web. One of the characteristics of mashup development is the heterogeneity of its building components in terms of logical layering (e.g., user interface, application logic, and data), access method (e.g., REST, SOAP), and composition technique (e.g., scraping vs. clipping, synchronous vs. asynchronous interaction, discrete vs. streaming). This poses a challenge towards the design of mashup tools aiming at lowering the barriers of mashup development, as this heterogeneity needs to be abstracted. In this paper, we address this challenge by proposing a new JSON-based domain-specific language for describing heterogeneous mashup components, called the Mashup Component Description Language (MCDL). MCDL lies at the core of a meta-model for mashup component modeling, and can be used for component discovery and classification but also for user-centric mashup development as it decouples the interface of a mashup component from its underlying implementation technologies.},
	keywords = {natural language processing, NaturalMash, service contracts, Web mashups},
	doi = {10.1145/2095536.2095591},
	author = {Saeed Aghaee and Cesare Pautasso}
}
@conference {www:wsrest2011,
	title = {Second international workshop on RESTful design (WS-REST 2011)},
	booktitle = {WWW (Companion Volume)},
	year = {2011},
	month = {March},
	pages = {311-312},
	publisher = {ACM},
	organization = {ACM},
	address = {Hyderabad, India},
	keywords = {proceedings, REST},
	isbn = {978-1-4503-0637-9},
	doi = {http://doi.acm.org/10.1145/1963192.1963327},
	author = {Cesare Pautasso and Erik Wilde and Rosa Alarc{\'o}n}
}
@inproceedings {mashups:2010:html5,
	title = {Mashup Development with HTML5},
	year = {2010},
	month = {December},
	pages = {10:1{\textendash}10:8},
	publisher = {ACM},
	address = {Ayia Napa, Cyprus},
	abstract = {HTML5 is a new technology standard promising to empower browsers to become a suitable platform for developing rich Web applications. Whilst it is still considered an emerging technology, in this paper we attempt to capture and explore its impacts on mashup development. To do so, we start with a mashup case study showcasing new HTML5 features. We then move on to explore those aspects of mashup development that are affected and will possibly be enabled by HTML5 in the near future. These aspects are grouped into two categories: short-term impacts, that can be harnessed by mashup developers, and long-term impacts, that should be considered by service/content providers.},
	keywords = {HTML5, mashup, mashup development},
	isbn = {978-1-4503-0418-4},
	doi = {10.1145/1944999.1945009},
	author = {Saeed Aghaee and Cesare Pautasso}
}
@conference {ccgrid2008,
	title = {Initializing a National Grid Infrastructure Lessons Learned from the Swiss National Grid Association Seed Project},
	booktitle = {8th IEEE International Symposium on Cluster Computing and the Grid (CCGRID 2008)},
	year = {2008},
	month = {May},
	pages = {169-176},
	publisher = {IEEE},
	organization = {IEEE},
	address = {Lyon, France},
	abstract = {In addition to multi-national Grid infrastructures, several countries operate their own national Grid infrastructures to support science and industry within national borders. These infrastructures have the benefit of better satisfying the needs of local, regional and national user communities. Although Switzerland has strong research groups in several fields of distributed computing, only recently a national Grid effort was kick-started to integrate a truly heterogeneous set of resource providers, middleware pools, and users. In the following article we discuss our efforts to start Grid activities at a national scale to combine several scientific communities and geographical domains. We make a strong case for the need of standards that have to be built on top of existing software systems in order to provide support for a heterogeneous Grid infrastructure.},
	keywords = {distributed computing, grid computing, middleware, national grid infrastructure},
	doi = {10.1109/CCGRID.2008.62},
	author = {Nabil Abdennadher and Peter Engel and Derek Feichtinger and Dean Flanders and Placi Flury and Sigve Haug and Pascal Jermini and Sergio Maffioletti and Cesare Pautasso and Heinz Stockinger and Wibke Sudholt and Michela Thi{\'e}mard and Nadya Williams and Christoph Witzig}
}
@article {DBLP:journals/bioinformatics/QuandtHMHMPAL08,
	title = {swissPIT: a novel approach for pipelined analysis of mass spectrometry data},
	journal = {Bioinformatics},
	volume = {24},
	number = {11},
	year = {2008},
	pages = {1416-1417},
	abstract = {The identification and characterization of peptides from tandem mass spectrometry (MS/MS) data represents a critical aspect of proteomics. Today, tandem MS analysis is often performed by only using a single identification program achieving identification rates between 10-50\% (Elias and Gygi, 2007). Beside the development of new analysis tools, recent publications describe also the pipelining of different search programs to increase the identification rate (Hartler et al., 2007; Keller et al., 2005). The Swiss Protein Identification Toolbox (swissPIT) follows this approach, but goes a step further by providing the user an expandable multi-tool platform capable of executing workflows to analyze tandem MS-based data. One of the major problems in proteomics is the absent of standardized workflows to analyze the produced data. This includes the pre-processing part as well as the final identification of peptides and proteins. The main idea of swissPIT is not only the usage of different identification tool in parallel, but also the meaningful concatenation of different identification strategies at the same time. The swissPIT is open source software but we also provide a user-friendly web platform, which demonstrates the capabilities of our software and which is available at http://swisspit.cscs.ch upon request for account.},
	keywords = {bioinformatics, scientific workflow management},
	doi = {10.1093/bioinformatics/btn139},
	url = {http://www.ncbi.nlm.nih.gov/pubmed/18436540},
	author = {Andreas Quandt and Patricia Hernandez and Alexandre Masselot and C{\'e}line Hernandez and Sergio Maffioletti and Cesare Pautasso and Ron D. Appel and Fr{\'e}d{\'e}rique Lisacek}
}
@article {jopjauto07,
	title = {Autonomic resource provisioning for software business processes},
	journal = {Information and Software Technology},
	volume = {49},
	year = {2007},
	month = {January},
	pages = {65-80},
	abstract = {Software development nowadays involves several levels of abstraction: starting from the programming of single objects, to their combination into components, to their publication as services and the overall architecture linking elements at each level. As a result, software engineering is dealing with a wider range of artifacts and concepts (i.e., in the context of this paper: services and business processes) than ever before. In this paper we explore the importance of having an adequate engine for executing business processes written as compositions of Web services. The paper shows that, independently of the composition language used, the overall scalability of the system is determined by how the run-time engine treats the process execution. This is particularly relevant at the service level because publishing a process through a Web service interface makes it accessible to an unpredictable and potentially very large number of clients. As a consequence, the process developer is confronted with the difficult question of resource provisioning. Determining the optimal configuration of the distributed engine that runs the process becomes sensitive both to the actual number of clients and to the kinds of processes to be executed. The main contribution of the paper is to show how resource provisioning for software business processes can be solved using autonomic computing techniques. The engine separates execution in two stages (navigation and dispatching) and uses a controller to allocate the node of a cluster of computers to each one of those stages as the workload changes. The controller can be configured with different policies that define how to reconfigure the system. To prove the feasibility of the concept, we have implemented the autonomic controller and evaluated its performance with an extensive set of experiments.},
	keywords = {autonomic computing, distributed business process execution engines, service oriented architectures, Web service composition},
	doi = {10.1016/j.infsof.2006.08.010},
	author = {Cesare Pautasso and Thomas Heinis and Gustavo Alonso}
}
@conference {jophealthgrid07,
	title = {Grid-based Analysis of Tandem Mass Spectrometry Data in Clinical Proteomics},
	booktitle = {Health Grid 2007},
	year = {2007},
	address = {Geneva, Switzerland},
	abstract = {Biomarker detection is one of the greatest challenges in Clinical Proteomics. Today, great hopes are placed into tandem mass spectrometry (MS/MS) to discover potential biomarkers. MS/MS is a technique that allows large scale data analysis, including the identification, characterization, and quantification of molecules. Especially the identification process, that implies to compare experimental spectra with theoretical amino acid sequences stored in specialized databases, has been subject for extensive research in bioinformatics since many years. Dozens of identification programs have been developed addressing different aspects of the identification process but in general, clinicians are only using a single tools for their data analysis along with a single set of specific parameters. Hence, a significant proportion of the experimental spectra do not lead to a confident identification score due to inappropriate parameters or scoring schemes of the applied analysis software. The swissPIT (Swiss Protein Identification Toolbox) project was initiated to provide the scientific community with an expandable multi-tool platform for automated and in-depth analysis of mass spectrometry data. The swissPIT uses multiple identification tools to automatic analyze mass spectra. The tools are concatenated as analysis workflows. In order to realize these calculation-intensive workflows we are using the Swiss Bio Grid infrastructure. A first version of the web-based front-end is available (http://www.swisspit.cscs.ch) and can be freely accessed after requesting an account. The source code of the project will be also made available in near future.},
	keywords = {grid computing, JOpera, scientific workflow management},
	url = {http://www.ncbi.nlm.nih.gov/pubmed/17476043},
	author = {Andreas Quandt and Patricia Hernandez and Peter Kunzst and Cesare Pautasso and Marc Tuloup and Ron D. Appel}
}
@inbook {116,
	title = {Autonomic Computing for Virtual Laboratories},
	booktitle = {Dependable Systems: Software, Computing, Networks},
	number = {4028},
	year = {2006},
	pages = {211-230},
	publisher = {Springer},
	organization = {Springer},
	abstract = {Virtual laboratories can be characterized by their long-lasting, large-scale computations, where a collection of heterogeneous tools is integrated into data processing pipelines. Such virtual experiments are typically modeled as scientific workflows in order to guarantee their reproduceability. In this chapter we present JOpera, one of the first autonomic infrastructures for managing virtual laboratories. JOpera provides a sophisticated Eclipse-based graphical environment to design, monitor and debug distributed computations at a high level of abstraction. The chapter describes the architecture of the workflow execution environment, emphasizing its support for the integration of heterogeneous tools and evaluating its autonomic capabilities, both in terms of reliable execution (self-healing) and automatic performance optimization (self-tuning).},
	keywords = {autonomic computing, JOpera, scientific workflow management},
	isbn = {3-540-36821-3},
	doi = {10.1007/11808107_10},
	author = {Cesare Pautasso and Win Bausch and Gustavo Alonso},
	editor = {J{\"u}rg Kohlas and Bertrand Meyer and Andr{\'e} Schiper}
}
@conference {jopera:2006:scc,
	title = {Control the Flow: How to Safely Compose Streaming Services into Business Processes},
	booktitle = {2006 IEEE International Conference on Services Computing},
	year = {2006},
	pages = {206 - 213},
	publisher = {IEEE},
	organization = {IEEE},
	address = {Chicago, USA},
	abstract = {Although workflow languages are widely used for composing discrete services, these are not suitable for stream based interactions. In this paper we address the problem of how to extend a conventional Web service composition language with the ability to deal with data streaming services. The paper discusses several modeling alternatives and presents a marker based semantics for safely dealing with pipelined processing in service compositions. The paper also presents application examples that illustrate the advantages of the proposed approach},
	keywords = {JOpera, streaming, Web service composition},
	doi = {10.1109/SCC.2006.38},
	author = {Bi{\"o}rn Bi{\"o}rnstad and Cesare Pautasso and Gustavo Alonso}
}
@article {119,
	title = {Developing scientific workflows from heterogeneous services},
	journal = {SIGMOD Rec.},
	volume = {35},
	year = {2006},
	month = {June},
	pages = {22{\textendash}28},
	abstract = {Scientific Workflows (SWFs) need to utilize components and applications in order to satisfy the requirements of specific workflow tasks. Technology trends in software development signify a move from component-based to service-oriented approach, therefore SWF will inevitably need appropriate tools to discover and integrate heterogeneous services. In this paper we present the SODIUM platform consisting of a set of languages and tools as well as related middleware, for the development and execution of scientific workflows composed of heterogeneous services.},
	keywords = {JOpera, scientific workflow management},
	issn = {0163-5808},
	doi = {10.1145/1147376.1147380},
	author = {Aphrodite Tsalgatidou and Georgios Athanasopoulos and Michael Pantazoglou and Cesare Pautasso and Thomas Heinis and Roy Gr{\o}nmo and Hoff Hj{\o}rdis and Arne-J{\o}rgen Berre and Magne Glittum and Simela Topouzidou}
}
@article {115,
	title = {Enforcing Web Services Business Protocols at Run-Time: a Process Driven Approach},
	journal = {International Journal of Web Engineering and Technology (IJWET)},
	volume = {2},
	year = {2006},
	pages = {396-411},
	abstract = {Business processes provide abstractions for modelling business protocols that define the correct interactions between two or more Web services (WS). It has been shown that it is possible to automatically derive role-specific processes from a global protocol definition and also statically verify the compliance of a local process with the corresponding global business process. In this paper, we show that a similar approach can be used at run-time. We propose to employ process-based tools to enforce that the messages exchanged between different WS comply with a given business protocol, both in terms of sequencing constraints and data flow characteristics. Our solution simplifies the implementation of WS because it helps to separate the concern of business protocol compliance from the actual service implementation. To do so, we show how to transparently add a protocol enforcement layer to the WS messaging stack. Our experimental results indicate that this imposes a minimal overhead.},
	keywords = {business process modeling, business protocols, choreography, conversation controller, data flow, JOpera, Web services},
	issn = {1476-1289},
	doi = {10.1504/IJWET.2006.010422},
	url = {http://www.inderscience.com/info/inarticle.php?artid=10422},
	author = {Bi{\"o}rn Bi{\"o}rnstad and Cesare Pautasso and Gustavo Alonso}
}
@article {117,
	title = {JOpera: Autonomic Service Orchestration},
	journal = {IEEE Data Engineering Bulletin},
	volume = {29},
	year = {2006},
	month = {September},
	pages = {32-39},
	keywords = {autonomic computing, JOpera, Web service composition},
	url = {ftp://ftp.research.microsoft.com/pub/debull/A06sept/issue1.htm},
	author = {Cesare Pautasso and Thomas Heinis and Gustavo Alonso}
}
@conference {jopera:2006:ccgrid,
	title = {Mirroring Resources or Mapping Requests: implementing WS-RF for Grid workflows},
	booktitle = {6th IEEE International Symposium on Cluster Computing and the Grid (CCGrid2006)},
	year = {2006},
	month = {May},
	address = {Singapore},
	abstract = {The Web Services Resource Framework (WS-RF) and the Web Services Notification (WS-N) specifications are a crucial component of Grid infrastructures. They provide a standardized interface to stateful services so that they can be managed remotely. There are already several implementations of these specifications and initial performance studies have compared them in terms of the overhead observed by a single client. In this paper we address the problem of implementing the WS-RF and WS-N specifications for large scale systems. In particular, we discuss how to implement WS-RF and WSN as the management interfaces to a Grid workflow engine. In the paper we describe and compare two different architectures for mapping resources to processes. The first one mirrors the state of the process as a resource. The second one maps the client requests to access the state of a resource embedded into the Grid workflow engine. We include an extensive performance evaluation, comparing the resulting systems in terms of scalability when servicing a large number of concurrent clients. },
	keywords = {grid computing, JOpera, scientific workflow management},
	doi = {10.1109/CCGRID.2006.69},
	author = {Thomas Heinis and Cesare Pautasso and Gustavo Alonso}
}
@inproceedings {jopera:2006:works,
	title = {Parallel Computing Patterns for Grid Workflows},
	year = {2006},
	month = {June},
	address = {Paris, France},
	abstract = {Whereas a consensus has been reached on defining the set of workflow patterns for business process modeling languages, no such patterns exists for workflows applied to scientific computing on the Grid. By looking at different kinds of parallelism, in this paper we identify a set of workflow patterns related to parallel and pipelined execution. The paper presents how these patterns can be represented in different Grid workflow languages and discusses their implications for the design of the underlying workflow management and execution infrastructure. A preliminary classification of these patterns is introduced by surveying how they are supported by several existing advanced scientific and Grid workflow languages.},
	keywords = {grid computing, scientific workflow management, survey, workflow patterns},
	author = {Cesare Pautasso and Gustavo Alonso}
}
@inbook {jopera:2006:acbook,
	title = {A Self-Configuring Service Composition Engine},
	booktitle = {Autonomic Computing: Concepts, Infrastructure, and Applications},
	year = {2006},
	pages = {237-252},
	publisher = {CRC Press},
	organization = {CRC Press},
	chapter = {12},
	keywords = {autonomic computing},
	isbn = {0-8493-9367-1},
	doi = {10.1201/9781420009354.ch12},
	author = {Thomas Heinis and Cesare Pautasso and Gustavo Alonso},
	editor = {Manish Parashar and Salim Hariri}
}
@conference {jopera:2005:icws,
	title = {Autonomic Execution of Service Compositions},
	booktitle = {3rd International Conference on Web Services (ICWS 2005)},
	year = {2005},
	month = {July},
	publisher = {IEEE},
	organization = {IEEE},
	address = {Orlando, Florida},
	abstract = {An increasing amount of Web services are being implemented using process management tools and languages (BPML, BPEL, etc.). The main advantage of processes is that designers can express complex business conversations at a high level of abstraction, even reusing standardized business protocols. The downside is that the infrastructure behind the Web service becomes more complex. This is particularly critical for Web services that may be subjected to high variability in demand and suffer from unpredictable peaks of heavy load. In this paper we present a flexible architecture for process execution that has been designed to support autonomic scalability. The system runs on a cluster of computers and reacts to workload variations by altering its configuration in order to optimally use the available resources. Such changes happen automatically and without any human intervention. This feature completely removes the need for the manual monitoring and reconfiguration of the system, which in practice is a difficult and time-consuming operation. In the paper we describe the architecture of the system and present an extensive performance evaluation of its autonomic capabilities.},
	keywords = {autonomic computing, JOpera, Web service composition},
	doi = {10.1109/ICWS.2005.28},
	author = {Cesare Pautasso and Thomas Heinis and Gustavo Alonso}
}
@conference {jopera:2005:icac,
	title = {Design and Evaluation of an Autonomic Workflow Engine},
	booktitle = {2nd International Conference on Autonomic Computing (ICAC-05)},
	year = {2005},
	month = {June},
	pages = {27 - 38},
	publisher = {IEEE},
	organization = {IEEE},
	address = {Seattle, Washington},
	abstract = {In this paper we present the design and evaluate the performance of an autonomic workflow execution engine. Although there exist many distributed workflow engines, in practice, it remains a difficult problem to deploy such systems in an optimal configuration. Furthermore, when facing an unpredictable workload with high variability, manual reconfiguration is not an option. Thanks to its autonomic controller, the engine features self-configuration, self-tuning and self-healing properties. The engine runs on a cluster of computers using a tuple space to coordinate its various components. Its autonomic controller monitors its performance and responds to workload variations by altering the configuration. In case failures occur, the controller can recover the workflow execution state from persistent storage and migrate it to a different node of the cluster. Such interventions are carried out without any human supervision. As part of the results of our performance evaluation, we compare different autonomic control strategies and discuss how they can automatically tune the system},
	keywords = {automatic configuration, autonomic computing, JOpera, Web service composition},
	doi = {10.1109/ICAC.2005.21},
	author = {Thomas Heinis and Cesare Pautasso and Gustavo Alonso}
}
@inproceedings {jopera:2005:sc,
	title = {Flexible Binding for Reusable Composition of Web Services},
	year = {2005},
	month = {April},
	pages = {151-166},
	publisher = {Springer},
	address = {Edinburg, Scotland},
	abstract = {In addition to publishing composite services as reusable services, compositions can also be reused by applying them to orchestrate different component services. To do so, it is important to describe compositions using flexible bindings, which define only the minimal constraints on the syntax and semantics of the services to be composed. This way, the choice of which service to invoke can be delayed to later stages in the life cycle of the composition. In the context of Web service composition, we refine the concept of binding beyond the basic distinction of static and dynamic binding. Bindings can be evaluated during the design, the compilation, the deployment, the beginning of the execution of a composition, or just before the actual service invocation takes place. Considering the current limited support of dynamic binding in the BPEL service composition language, we show how we addressed the problem in JOpera, where modeling bindings does not require a specific language construct as it can be considered a special application of reflection.},
	keywords = {dynamic binding, JOpera, Web service composition},
	doi = {10.1007/11550679_12},
	author = {Cesare Pautasso and Gustavo Alonso}
}
@article {106,
	title = {The JOpera visual composition language},
	journal = {J. Vis. Lang. Comput.},
	volume = {16},
	year = {2005},
	month = {February},
	pages = {119{\textendash}152},
	abstract = {Composing Web services into a coherent application can be a tedious and error-prone task when using traditional textual scripting languages or emerging XML-based approaches. As an alternative, complex interactions patterns and data exchanges between different Web services can be effectively modeled using a visual language. In this paper, we discuss the requirements of such an application scenario and we fully describe the JOpera Visual Composition Language. An extensive set of visual editing tools, a compiler and a debugger for the language have been implemented as part of the JOpera system with the goal of providing a true visual environment for Web service composition with usability features emphasizing rapid development and visual scalability. },
	keywords = {data flow, JOpera, visual composition languages, Web service composition, Web services},
	issn = {1045-926X},
	doi = {10.1016/j.jvlc.2004.08.004},
	author = {Cesare Pautasso and Gustavo Alonso}
}
@conference {jopera:2005:escience,
	title = {Publishing Persistent Grid Computations as WS Resources},
	booktitle = {1st IEEE International Conference on e-Science and Grid Computing (e-Science 2005)},
	year = {2005},
	month = {December},
	publisher = {IEEE},
	organization = {IEEE},
	address = {Melbourne, Australia},
	abstract = {Grid services can be composed into processes, providing a high level definition of the computations involved in terms of their data exchanges and control flow dependencies. We show how processes themselves can be efficiently published as Grid services by mapping the persistent state of the process executions to standard compliant interfaces as defined by the Web Services Resource Framework (WS-RF). Mapping processes to resources is a fundamental step to enable recursive Grid service composition, where composite Grid services are themselves published as services. This gives processes a standardized and wellunderstood interface that enables their management, monitoring, steering and adaptation. Additionally it eases their reusability and simplifies integration into existing Grid applications and portals. In order to determine the mapping{\textquoteright}s overhead, we include the results of a comprehensive performance evaluation.},
	keywords = {grid computing, JOpera, scientific workflow management},
	doi = {10.1109/E-SCIENCE.2005.67},
	author = {Thomas Heinis and Cesare Pautasso and Oliver Deak and Gustavo Alonso}
}
@inproceedings {95,
	title = {From Web Service Composition to Megaprogramming},
	volume = {3324},
	year = {2004},
	month = {August},
	pages = {39 - 53},
	publisher = {Springer},
	address = {Toronto, Canada},
	abstract = {With the emergence of Web service technologies, it has become possible to use high level megaprogramming models and visual tools to easily build distributed systems using Web services as reusable components. However, when attempting to apply the Web service composition paradigm in practical settings, some limitations become apparent. First of all, all kinds of existing {\textquotedblleft}legacy{\textquotedblright} components must be wrapped as Web services, incurring in additional development, maintenance, and unnecessary runtime overheads. Second, current implementations of Web service protocols guarantee interoperability at high runtime costs, which justifies the composition of only coarse-grained Web services. To address these limitations and support the composition of also fine-grained services, in this paper we generalize the notion of service by introducing an open service meta-model. This offers freedom of choice between different types of services, which also include, but are not limited to, Web services. As a consequence, we argue that service composition {\textendash} defined at the level of service interfaces {\textendash} should be orthogonal from the mechanisms and the protocols which are used to access the actual service implementations.},
	keywords = {heterogeneity, JOpera, megaprogramming, Web services},
	isbn = {978-3-540-25049-4},
	doi = {10.1007/b10662610.1007/978-3-540-31811-8_4},
	author = {Cesare Pautasso and Gustavo Alonso}
}
@article {96,
	title = {JOpera: a Toolkit for Efficient Visual Composition of Web Services},
	journal = {International Journal of Electronic Commerce (IJEC)},
	volume = {9},
	year = {2004},
	month = {Winter 2004/2005},
	pages = {107-141},
	abstract = {Web services are attracting attention because of their ability to provide standard interfaces to heterogeneous distributed services. Standard interfaces make it possible to compose more complex services out of basic ones. This paper tackles the problem of visual service composition and the efficient and scalable execution of the resulting composite services. The effort revolves around the JOpera system, which combines a visual programming environment for Web services with a flexible execution engine that interacts with Web services through the simple object access protocol (SOAP), described with Web services language description (WSDL) and registered with a universal description discovery and integration (UDDI) registry. The paper explains the syntax and implementation of the JOpera Visual Composition Language (JVCL) and its ability to provide different quality of service (QoS) levels in the execution of composite services. },
	keywords = {JOpera, Scalable Process Execution, visual languages, Web service composition},
	issn = {1086-4415 },
	url = {http://www.ijec-web.org/past-issues/volume-9-number-2-winter-2004-05/ijecv9n2-6/},
	author = {Cesare Pautasso and Gustavo Alonso}
}
@conference {93,
	title = {Programming for dependability in a service-based grid},
	booktitle = {3rd IEEE/ACM International Symposium on Cluster Computing and the Grid, 2003 (CCGrid 2003)},
	year = {2003},
	month = {May},
	pages = {164 - 171},
	publisher = {IEEE},
	organization = {IEEE},
	address = {Tokyo, Japan},
	abstract = {Service-based Grid infrastructures emphasize service composition rather than sharing of low level resources. The idea is to build Grid applications out of computational services provided by the different sites of the Grid. Recent developments in the area of Web services have strengthened this idea by standardizing procedures like service description, publication and invocation. What is still missing is the infrastructure necessary to support the complete life cycle of applications running on service based Grids, i.e., suitable programming paradigms, execution infrastructure, and the ability to monitor and control such computations. Moreover, once computations are made of composable services, dependability becomes a key issue that needs to be addressed by the infrastructure as it cannot be addressed separately by each individual service. To address these concerns, we have developed the BioOpera Grid computing platform. BioOpera is a process support system for dependable cluster computing that has been extended with additional functionality to provide adequate support for service-based Grids. In this paper we describe how BioOpera can be used to develop, execute, and administer highly dependable computations over service-based Grids.},
	keywords = {BioOpera, distributed business process execution engines, grid computing, Web services},
	isbn = {0-7695-1919-9},
	doi = {10.1109/CCGRID.2003.1199365},
	url = {http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=1199365},
	author = {Win Bausch and Cesare Pautasso and Gustavo Alonso}
}
@conference {94,
	title = {Visual composition of Web services},
	booktitle = {IEEE Symposium on Human Centric Computing Languages and Environments (HCC 2003)},
	year = {2003},
	month = {October},
	pages = {92 - 99},
	publisher = {IEEE},
	organization = {IEEE},
	address = {Auckland, New Zealand},
	abstract = {Composing Web services into a coherent application can be a tedious and error prone task when using traditional textual scripting languages. As an alternative, complex interactions patterns and data exchanges between different Web services can be effectively modeled using a visual language. In this paper we discuss the requirements of such an application scenario and we present the design of the BioOpera Flow Language. This visual composition language has been fully implemented in a development environment for Web service composition with usability features emphasizing rapid development and visual scalability.},
	keywords = {JOpera, visual languages, visual service composition, Web service composition, Web services},
	doi = {10.1109/HCC.2003.1260208},
	url = {http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=1260208},
	author = {Cesare Pautasso and Gustavo Alonso}
}
@conference {92,
	title = {BioOpera: cluster-aware computing},
	booktitle = {IEEE International Conference on Cluster Computing (CLUSTER 2002)},
	year = {2002},
	month = {September},
	pages = {99 - 106},
	publisher = {IEEE},
	organization = {IEEE},
	address = {Chicago, IL, USA},
	abstract = {In this paper we present BioOpera, an extensible process support system for cluster-aware computing. It features an intuitive way to specify computations, as well as improved support for running them over a cluster providing monitoring, persistence, fault tolerance and interaction capabilities without sacrificing efficiency and scalability.},
	keywords = {BioOpera, cluster computing, scientific workflow management},
	doi = {10.1109/CLUSTR.2002.1137734},
	url = {http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=1137734},
	author = {Win Bausch and Cesare Pautasso and Reto Schaeppi and Gustavo Alonso}
}
@conference {91,
	title = {Dependable computing in virtual laboratories},
	booktitle = {17th IEEE International Conference on Data Engineering (ICDE 2001)},
	year = {2001},
	month = {April},
	pages = {235 - 242},
	publisher = {IEEE},
	organization = {IEEE},
	address = {Heidelberg, Germany},
	abstract = {Many scientific disciplines are shifting from in vitro to in silico research as more physical processes and natural phenomena are examined in a computer (in silico) instead of being observed (in vitro). In many of these virtual laboratories, the computations involved are very complex and long lived. Currently, users are required to manually handle almost all aspects of such computations, including their dependability. Not surprisingly, this is a major bottleneck and a significant source of inefficiencies. To address this issue, we have developed BioOpera, an extensible process support management system for virtual laboratories. The authors briefly discuss the architecture and functionality of BioOpera and show how it can be used to efficiently manage long lived computations},
	keywords = {bioinformatics, BioOpera, scientific workflow management, virtual laboratories},
	doi = {10.1109/ICDE.2001.914834},
	url = {http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=914834},
	author = {Gustavo Alonso and Win Bausch and Cesare Pautasso and Ari Kahn}
}
