28
11 th International Workshop on Engineering Service-Oriented Applications (WESOA’2015) Goa, India, November 16 th 2015 A Web Services Infrastructure for the management of Mashup Interfaces Jesús Vallecillos, Javier Criado, Antonio Jesús Fernández-García, Nicolás Padilla and Luis Iribarne 1 Applied Computing Group, University of Almería, Spain 11 th International Workshop on Engineering Service-Oriented Applications (WESOA’2015) Goa, India, November 26 th 2015 TIN2013-41576-R P10-TIC-6114

A Web Services Infrastructure for the management of Mashup Interfaces

Embed Size (px)

Citation preview

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

A Web Services Infrastructure for the management of Mashup Interfaces

Jesús Vallecillos, Javier Criado, Antonio Jesús Fernández-García, Nicolás Padilla and Luis Iribarne

1Applied Computing Group, University of Almería, Spain

11th International Workshop on EngineeringService-Oriented Applications (WESOA’2015)

Goa, India, November 26th 2015

TIN2013-41576-R P10-TIC-6114

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

Index

• Context and Motivation• Architecture Concepts• Multiservices Web Infrastructure• Private and Public Services• Implementation of Public Web Services Example• Conclusions and Future Work

2

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

Introduction

Today, it is increasingly necessary that applications should be adapted, modified and updated over time in response to the users demands

Context and Motivation

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

• This has led to the construction of custom user interfaces through configuration of their interface.

• These interfeces are made from coarse-grained components in orderto create widget-based mashup applications.

• In our work, these component-based architectures are able to compose both dynamically and autonomously

4

Background, Context and Motivation

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

Our Work

1) Mashup User Interfaces

2) Component Based Software Engineering (CBSE)

3) COTSgets (COTS+ widgets)

4) Cloud Computing

Web Service infraestructureto allow dynamic

management of componentbased user interfaces

Architecture Concepts

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

WorkSpaceServices Menu

ServicesComponent

Component Menu

Operations

Mashup UI1) Mashup User Interfaces

2) Component Based Software Engineering (CBSE)

3) COTSgets (COTS+ widgets)

4) Cloud Computing

Architecture Concepts

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

Mashup UI

Mashup UI{Services, Components, Operations}

{Services Menu, WorkSpace, Component Menu}

Services = {Service 1, Service 2, …, Service N}

Components = {Component 1, Component 2, …, Component M}Component X = {PosX, PosY, Width, Height}

Operations = {Add, Delete, Move, Resize}

Architecture Concepts

1) Mashup User Interfaces

2) Component Based Software Engineering (CBSE)

3) COTSgets (COTS+ widgets)

4) Cloud Computing

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

1) Mashup User Interfaces

2) Component Based Software Engineering (CBSE)

3) COTSgets (COTS+ widgets)

4) Cloud Computing

8

Componentrepositories(appstores)

Organization (own rep)

External (thirds)

The UI is made up of chunks (or pieces) of smallcomponents working all together as a unique UI.

Architecture Concepts

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

9

User (client side) System (Server side)

The graphical user interface isconsidered as an abstraction, that is, a component-basedview.

The component-based viewrepresents the architecture of the GUI.

The architecture is consideredby the system as a model, and itis manipulated by means of Model-Driven Techniques.

This abstraction allow us to manage the GUI.Architecture ViewUser View

1) Mashup User Interfaces

2) Component Based Software Engineering (CBSE)

3) COTSgets (COTS+ widgets)

4) Cloud Computing

Architecture Concepts

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

10

(execute)

User (client side) System (server side)

(abstract)

Adaptation process:- Analyze Context Information- Analyze User Interaction- Model Driven Engineering (MDE)- Model Transformation Engine- Computational Intelligence

(manipulates

at run-time)

J. Criado, D. Rodriguez-Gracia, L. Iribarne and N. Padilla (2015) “Towards the Adaptation of Component-based Architectures by Model Transformation: Behind Smart User Interfaces”. Software: Practice & Experience, Volume 45, Issue 12, pages 1677–1718, December 2015. DOI: 10.1002/spe.2306.

Components Repository (appstores)

External (Third Party)

From the Organization

Architecture Concepts

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

Components AggrupationComponent 2: Geo Parks

Component 1: Cuttle Roads

Base Map

COTSgetCommercial off-the-shell

+Widgets

1) Mashup User Interfaces

2) Component Based Software Engineering (CBSE)

3) COTSgets (COTS+ widgets)

4) Cloud Computing

Architecture Concepts

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

WorkSpaceServices Menu

Services Component

COTSget Menu

COTSget

Operations

COScore Mashup UI1) Mashup User Interfaces

2) Component Based Software Engineering (CBSE)

3) COTSgets (COTS+ widgets)

4) Cloud Computing

Architecture Concepts

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

COScore Enia Mashup UI

{Services, CotsGET, Components, Operations}{Services Menu, WorkSpace, CotsGET Menu}

Services = {Service 1, Service 2, …, Service N}CotsGETs= {CotsGET 1, CotsGET 2, …, CotsGET L}

Components = {Component 1, Component 2, …, Component M}

CotsGET X = {PosX, PosY, Width, Height}

Operations = {Add, Delete, Move, ResizeBigger, ResizeSmaller} + {Group, Ungroup, AddGroup, UngroupDelete, UngroupGroup} +

{Maximize, Minimize}

1) Mashup User Interfaces

2) Component Based Software Engineering (CBSE)

3) COTSgets (COTS+ widgets)

4) Cloud Computing

Architecture Concepts

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

14

Deployed in a Cloud Infrastructure

Hot topic on big data & machine learning in which we are involved

1) Mashup User Interfaces

2) Component Based Software Engineering (CBSE)

3) COTSgets (COTS+ widgets)

4) Cloud Computing

Architecture Concepts

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

15

Multiservices Web Infrastructure

Multiservices Web Infrastructure (COScore)

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

Multiservices Web Infrastructure (COScore)16

Multiservices Web Infrastructure

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

Multiservices Web Infrastructure (COScore)17

Multiservices Web Infrastructure

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

Modules

18

LRMM

DMM

TMM

Lifecycle and RelationshipsManagement Module

Display Management Module

Transaction Management Module

Responsible for handling the abstract representation of the interface by managing the components and the relationships between them.

Responsible for handling the component visualization in the device it is working on.

Allows the exchange of messages and the coordination between components.

Multiservices Web Infrastructure

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

Modules

19

IMM

UMM

COSSessionMM

Interaction Management Module

User Management Module

COScore Session Management Module

Provides an environment where the user interaction on the interface can be managed

Used for administering users in the environment, processing registration and modifications in the core of the infrastructure

For each user application running, the COScore creates the LRMM, IMM,TMM y DMM modules

Multiservices Web Infrastructure

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

Private and Public Web Services

20

Architectural Model Web Service

Register WebService

User Web Service

Private Web ServicesSession Web

Service

Component Web Service

Communication Web Service

Public Web Services

Interaction Web Service

Private and Public Web Services

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

Private and Public Web Services

21

Architectural Model Web Service

Register WebService

User Web Service

Private Web ServicesHandle the component architectures used to describe the mashup user interfaces.

Allows abstract and concrete components to be registered and removed in the system.

basic functions such as adding and removing users, and checking and modifying users' information.

Model Driven Architecture (MDA)Platform Independent Model (PIM) in MDA.Platform Specification Model (PSM) in MDA.

Private and Public Web Services

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

22

Concrete Model 1 Concrete Model 2

Abstract Model 1 Abstract Model 2Model Transformation

Model Driven Architecture (MDA)Different Layers Visualization

Private and Public Web Services

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

Private and Public Web Services

23

Manages user sessions. Initializing the modules for user when login. Initialization of the user interface.

Manages the handling of the components in the user interface (add, remove…).

Manages the communication between components. It receives a message from a component and gets which other components the information should be sent on to.

Session Web Service

Component Web Service

Communication Web Service

Public Web Services

Interaction Web Service Responsible for storing information on how the

user interacts with the application.

Private and Public Web Services

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

24

Implementation of Public Web Services

Example: Add Component operation of Component Web Service

Model Notation (BPMN) diagrams are used to show their operation and the flow of information which takes place

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

• This work describes a web services structure, which has been implemented to offer consistency and functionality to architectures, based on COTSgets components, of mashup interfaces.

• This has been achieved using Component-based Software Engineering (CBSE), Model-Driven Engineering (MDE) and Cloud computing.

25

Conclusions

Conclusions

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

• The environment could be extended to support more client applications based on other types of components (e.g. built with Java)

• Dynamic adaptation EVOLVE over time based on– Changes in users and components

– Changes in the information system

– Changes in the context

26

Discovery of behavioural

patterns

CreatePrediction

Models

Update Set of Adaptation

Rules

Future Work

Machine LearningModel Transformation

Cloud ComputingBig Data

Future Work

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

27

Contraportada

Thank you for your attention

11th International Workshop on Engineering Service-Oriented Applications (WESOA’2015)Goa, India, November 16th 2015

A Web Services Infrastructure for the management of Mashup Interfaces

Jesús Vallecillos, Javier Criado, Antonio Jesús Fernández-García, Nicolás Padilla and Luis Iribarne

[email protected]

1Applied Computing Group, University of Almería, Spain

11th International Workshop on EngineeringService-Oriented Applications (WESOA’2015)

Goa, India, November 26th 2015

TIN2013-41576-R P10-TIC-6114