A Model-Driven Approach for REST Compliant Services

The design of applications that comply to the REST architectural style requires observing a given set of architectural constraints. Following these constraints and therefore designing REST compliant applications is a non-trivial task often not fulfilled properly. There exist several approaches for the modeling and formal description of REST applications, but most of them do not pay any attention to how these approaches can support or even force REST compliance. In this paper we propose a model-driven approach for modeling REST services. We introduce a multi layered model which enables (partially) enforcing REST compliance by separating different concerns through separate models. We contribute a multi layered meta-model for REST applications, discuss the connection to REST compliance and show an implementation of our approach based on the proposed meta-model and method. As a result our approach provides a holistic method for the design and realization of REST applications exhibiting the desired level of compliance to the constraints of the REST architectural style.

[1]  Gregor Hohpe,et al.  Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions , 2003 .

[2]  Frank Leymann,et al.  Web Services Platform Architecture: SOAP, WSDL, WS-Policy, WS-Addressing, WS-BPEL, WS-Reliable Messaging, and More , 2005 .

[3]  Roy T. Fielding,et al.  Uniform Resource Identifier (URI): Generic Syntax , 2005, RFC.

[4]  Roy T. Fielding,et al.  Uniform Resource Identifiers (URI): Generic Syntax , 1998, RFC.

[5]  Mika Siikarla,et al.  Transformations Have to be Developed ReST Assured , 2008, ICMT@TOOLS.

[6]  Bobby Woolf,et al.  Enterprise Integration Patterns , 2003 .

[7]  Kevin Waugh,et al.  A Classification of Object-Relational Impedance Mismatch , 2009, 2009 First International Confernce on Advances in Databases, Knowledge, and Data Applications.

[8]  Roy T. Fielding,et al.  Hypertext Transfer Protocol - HTTP/1.1 , 1997, RFC.

[9]  Ralf Klamma,et al.  Today's Top "RESTful" Services and Why They Are Not RESTful , 2012, WISE.

[10]  Rik Van de Walle,et al.  Capturing the functionality of Web services with functional descriptions , 2012, Multimedia Tools and Applications.

[11]  Markus Völter,et al.  Model-Driven Software Development: Technology, Engineering, Management , 2006 .

[12]  Petri Selonen,et al.  Towards a Model-Driven Process for Designing ReSTful Web Services , 2009, 2009 IEEE International Conference on Web Services.

[13]  John Domingue,et al.  Investigating Web APIs on the World Wide Web , 2010, 2010 Eighth IEEE European Conference on Web Services.

[14]  Richard Monson-Haefel,et al.  Enterprise JavaBeans , 1999, Java series.

[15]  Sam Ruby,et al.  RESTful Web Services , 2007 .

[16]  Silvia Schreier Modeling RESTful applications , 2011, WS-REST '11.

[17]  Ralph E. Johnson,et al.  REST and Web Services: In Theory and in Practice , 2011, REST: From Research to Practice.

[18]  Roy T. Fielding,et al.  Principled design of the modern Web architecture , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[19]  Marc J. Hadley,et al.  Web application description language (WADL) , 2006 .

[20]  Roy Fielding,et al.  Architectural Styles and the Design of Network-based Software Architectures"; Doctoral dissertation , 2000 .

[21]  Nathaniel S. Borenstein,et al.  Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types , 1996, RFC.