RESTful, Resource-Oriented Architectures: a Model-Driven Approach Sandy Pérez 1, Frederico Durao 2, Santiago Meliá 3, Peter Dolog 2, Oscar Díaz 1 1st International.

Slides:



Advertisements
Similar presentations
Ernst Oberortner Vienna University of Technology.
Advertisements

Pierre-Johan CHARTRE Java EE - JAX-RS - Pierre-Johan CHARTRE
1. XP 2 * The Web is a collection of files that reside on computers, called Web servers. * Web servers are connected to each other through the Internet.
Give it a REST already Arnon Rotem-Gal-Oz VP R&D xsights
Chapter 1: The Database Environment
M2M middleware service Inge Grønbæk, Telenor R&I ETSI Workshop on RFID and The Internet Of Things, 3rd and 4th December 2007.
19 Copyright © 2005, Oracle. All rights reserved. Distributing Modular Applications: Developing Web Services.
18 Copyright © 2005, Oracle. All rights reserved. Distributing Modular Applications: Introduction to Web Services.
17 Copyright © 2005, Oracle. All rights reserved. Deploying Applications by Using Java Web Start.
System Wide Information Management (SWIM)
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
0 - 0.
1 Communication in Distributed Systems REKs adaptation of Tanenbaums Distributed Systems Chapter 2.
REST - Representational State Transfer
REST & SOAP Peter Drayton
Representational State Transfer (REST): Representing Information in Web 2.0 Applications this is the presentation Emilio F Zegarra CS 2650.
Service Oriented Architecture
REST Vs. SOAP.
REST Introduction 吴海生 博克软件(杭州)有限公司.
The European Organisation for the Safety of Air Navigation REST and WFS Interfaces Usage in Digital SNOWTAM Trial.
Introduction to Web Services
Server Access The REST of the Story David Cleary
CS 4720 RESTfulness CS 4720 – Web & Mobile Systems.
OASIS OData Technical Committee. AGENDA Introduction OASIS OData Technical Committee OData Overview Work of the Technical Committee Q&A.
RESTful Web Services Senthil Chinnaiyan, Senior Architect
1 The phone in the cloud Utilizing resources hosted anywhere Claes Nilsson.
Data Structures: A Pseudocode Approach with C
Tables Tables provide a means of organising the layout of data
Aligning Business and IT Models in Service-Oriented Architectures using BPMN and SoaML Brian Elvesæter, Dima Panfilenko, Sven Jacobi & Christian Hahn MDI2010.
31242/32549 Advanced Internet Programming Advanced Java Programming
Executional Architecture
Implementation Architecture
DB Relay An Introduction. INSPIRATION Database access is WAY TOO HARD The crux.
16/11/ IRS-II: A Framework and Infrastructure for Semantic Web Services Motta, Domingue, Cabral, Gaspari Presenter: Emilia Cimpian.
Addition 1’s to 20.
25 seconds left…...
XP New Perspectives on Browser and Basics Tutorial 1 1 Browser and Basics Tutorial 1.
1 PART 1 ILLUSTRATION OF DOCUMENTS  Brief introduction to the documents contained in the envelope  Detailed clarification of the documents content.
How Cells Obtain Energy from Food
Introduction Peter Dolog dolog [at] cs [dot] aau [dot] dk Intelligent Web and Information Systems September 9, 2010.
Building RESTful Interfaces
Mashup-Aware Corporate Portals Sandy Pérez and Oscar Díaz ONEKIN Research Group University of the Basque Country San Sebastián (Spain) The 11th International.
Facing Interaction-Rich RIAs: the Orchestration Model Sandy Pérez 1, Oscar Díaz 1, Santiago Meliá 2 and Jaime Gómez 2 1 ONEKIN Research Group 2 IWAD Group.
ISIS Katrinebjerg i n t e r a c t i v e s p a c e s. n e t 1 Frank Allan Hansen, Integrating the Web and the World: Contextual Trails on.
CS 415 N-Tier Application Development By Umair Ashraf July 6,2013 National University of Computer and Emerging Sciences Lecture # 9 Introduction to Web.
© 2011 IBM Corporation Overview on Modeling RESTful Services August, 2011 Manoj Paul, Software Developer, Rational,
Using MDA in Web Software Architectures Santiago Meliá Cristina Cachero Jaime Gómez Universidad de Alicante Spain.
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
Or, Hey can’t we just do it using HTTP for the envelope?
Tagging Aware Portlets Oscar Díaz, Sandy Pérez and Cristóbal Arellano ONEKIN Research Group University of the Basque Country San Sebastián (Spain) The.
REST - Introduction Based on material from InfoQ.com (Stefan Tilkov) And slides from MindTouch.com (Steve Bjorg) 1.
SNOWTAM Trial: REST Interface. AIXM XML Developers' Seminar 2 Contents Digital-SNOWTAM Trial Introduction REST Introduction REST in the Digital-SNOWTAM.
Tuning Github for SPL development Branching models and operations for product engineers Oscar Díaz University of the Basque Country ONEKIN Research Group.
1 Seminar on Service Oriented Architecture Principles of REST.
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
Representational State Transfer (REST). What is REST? Network Architectural style Overview: –Resources are defined and addressed –Transmits domain-specific.
RESTful Web Services What is RESTful?
Incorporating Cooperative Portlets in Web Application Development Nathalie Moreno, José Raúl Romero, Antonio Vallecillo Universidad de Málaga {vergara,jrromero,av}
Providing Personalized Mashups Within the Context of Existing Web Applications Oscar Díaz, Sandy Pérez and Iñaki Paz ONEKIN Research Group University of.
© 2010 IBM Corporation RESTFul Service Modelling in Rational Software Architect April, 2011.
REST API Design. Application API API = Application Programming Interface APIs expose functionality of an application or service that exists independently.
Better RESTFul API – Best Practices
WEB SERVICES.
REST: Web Services Abel Sanchez.
WEB API.
Web APIs In computer programming, an application programming interface (API) is a set of subroutine definitions, protocols, and tools for building application.
Week 05 Node.js Week 05
.NET Framework V3.5+ & RESTful web services
Presentation transcript:

RESTful, Resource-Oriented Architectures: a Model-Driven Approach Sandy Pérez 1, Frederico Durao 2, Santiago Meliá 3, Peter Dolog 2, Oscar Díaz 1 1st International Symposium on Web Intelligent Systems & Services December 12th, ONEKIN Research Group Univ. of the Basque Country San Sebastián (Spain) 2 IWIS Group Aalborg University Aalborg (Denmark) 3 IWAD Group University of Alicante Alicante (Spain)

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz MODEL DRIVEN DEVELOPMENT

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz Model Driven Development

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz 4 Data-intensive Web Applications Data-intensive Web applications are built around the so- called Domain Model This Domain Model is then complemented with other models that capture additional perspectives of the applications: Navigational Model Presentation Model Architectural Model

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz 5 Domain model The Domain Model captures the main entities and relationships found in the application domain.

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz Navigational Model It specifies the data to be presented as a view of the Domain Model, and the order in which this data is to be presented 6

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz 7 Architectural Model It is a component-based architectural style that represents a structural view of the application

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz 8 From Navigational Model to Architectural Model client server

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz NEW ARQUITECTURAL STYLE: REST

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz 10 REST is becoming very popular

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz Platform Evolution: REST Order PSM REST

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz GET /users HTTP/ RESTful, Resource-Oriented Architectures (ROAs) ROA is a specific set of guidelines of an implementation of the REST-style architecture. ROAs are based on four concepts: Resources Their names (URIs). The URI is the name and address of a resource. Their representations. A resource is a source of representations. The links between them. Client Server friends

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz 13 RESTful Web Services RESTful Web services are simple Web services implemented using HTTP and the principles of REST. They expose standard HTTP objects (i.e. resources) that respond to one or more of the six standard HTTP methods: GET, HEAD, POST, PUT, DELETE, and OPTIONS. Client Server GET /users HTTP/1.1 users

Problem Statement

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz Can RESTful services be generated? Order PSM REST

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz 16 From a RPC façade to a RESTful facade client server GET HEAD PUT POST DELETE OPTIONS How?

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz 17 The Architectural Model in Details GET HEAD PUT POST DELETE OPTIONS

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz 18 Resources + URIs + OperationType + Parameters

Contribution Application Facade Component Model

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz Obtaining RESTful interfaces from PIM Order PSM REST

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz …any NavigationalClass with at least one outgoing traversal link or service link at the Navigational Model. Resource are obtained from …

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz 22 URIs are obtained from …

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz + Operation Types are obtained from …

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz 24 Representations: JSON By Default

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz 1.Path 2.Link stereotypes Parameters are obtained from …

Conclusions

S. Pérez, F. Durao, S. Meliá, P. Dolog & O. Díaz 27 Conclusions Data-intensive Web Applications naturally match the REST architectural style (Part of) the RESTful interface can be derived from the Domain & Navigation model Except: –the representation type: JSON by default –the operation type (delete, post): it should be annotated by the designer