@conference {rest:2015:wicsa, title = {A conversation based approach for modeling REST APIs}, booktitle = {12th Working IEEE / IFIP Conference on Software Architecture (WICSA 2015)}, year = {2015}, month = {May}, address = {Montreal, Canada}, abstract = {Conversations are a well-known concept in service design to describe complex interactions between a client and one or multiple services. The REST architectural style constrains the characteristics of clients, servers and their interactions in REST architectures which consequently has an impact on conversations in such systems. The relation between conversations and REST architectures and how such RESTful conversations can be characterized has not been studied in detail yet. In this paper we discuss the characteristics of conversations in REST architectures and introduce an initial set of commonly used conversation types. Based on this, we propose to use conversations as a modeling tool for the design of REST APIs at a higher level of abstraction. We also introduce a corresponding interaction centric metamodel for REST APIs. The characterization of RESTful conversations enables a new interaction centric viewpoint on REST architectures which can be also applied for modeling REST APIs on an abstraction level that enables users to focus on the essential functionality of their REST API.}, keywords = {conversation, model-driven engineering, REST, RESTful conversation}, url = {http://wicsa2015.org/wicsa-sessions.html$\#$WS5}, author = {Florian Haupt and Frank Leymann and Cesare Pautasso} } @inbook {jopera:2009:compiler, title = {Compiling Business Process Models into Executable Code}, booktitle = {Handbook of Research in Business Process Management}, year = {2009}, pages = {218-337}, publisher = {IGI Global}, organization = {IGI Global}, chapter = {15}, abstract = {Model-driven architecture (MDA), design and transformation techniques can be applied with success to the domain of business process modeling (BPM) with the goal of making the vision of business-driven development a reality. This chapter is centered around the idea of compiling business process models for executing them, and how this idea has been driving the design of the JOpera for Eclipse workflow management tool. JOpera presents users with a simple, graph-based process modeling language with a visual representation of both control and data-flow aspects. As an intermediate representation, the graphs are converted into Event-Condition-Action rules, which are further compiled into Java bytecode for efficient execution. These transformations of process models are performed by the JOpera process compiler in a completely transparent way, where the generated executable artifacts are kept hidden from users at all times (i.e., even for debugging process executions, which is done by augmenting the original, high level notation). We evaluate our approach by discussing how using a compiler has opened up the several possibilities for performing optimization on the generated code and also simplified the design the corresponding workflow engine architecture.}, keywords = {business process execution engines, model-driven engineering}, issn = {978-1-60566-288-6}, url = {http://www.igi-global.com/book/handbook-research-business-process-modeling/445}, author = {Cesare Pautasso} } @conference {ibm:2007:agtive, title = {Combining Quality Assurance and Model Transformations in Business-Driven Development}, booktitle = {Third International Symposium on Applications of Graph Transformations with Industrial Relevance (AGTIVE 2007)}, year = {2007}, month = {October}, pages = {1-16}, abstract = {Business-driven development is a methodology for developing IT solutions that directly satisfy business requirements. At its core are business processes, which are usually modeled by combining graphical and textual notations. During business-driven development, business process models are taken to the IT level, where they are implemented in a Service-Oriented Architecture. A major challenge in business-driven development is the semantic gap between models captured at the business and the IT level. Model transformations play a major role in bridging this gap. This paper presents a transformation framework for IBM WebSphere Business Modeler that enables programmers to quickly develop in-place model transformations, which are then made available to users of this tool. They address various user needs such as quickly correcting modeling errors, refining a process model, or applying a number of refactoring operations. Transformations are combined with quality assurance techniques, which help users to preserve or improve the correctness of their business process models when applying transformations. }, keywords = {business driven development, model-driven engineering}, doi = {10.1007/978-3-540-89020-1_1}, author = {Jana Koehler and Thomas Gschwind and Jochen Malte K{\"u}ster and Cesare Pautasso and Ksenia Ryndina and Jussi Vanhatalo and Hagen V{\"o}lzer} }