We use proprietary and third party's cookies to improve your experience and our services, identifying your Internet Browsing preferences on our website; develop analytic activities and display advertising based on your preferences. If you keep browsing, you accept its use. You can get more information on our Cookie Policy
Cookies Policy
Dataflow-oriented service composition editor - FIWARE Forge Wiki

Dataflow-oriented service composition editor

From FIWARE Forge Wiki

Jump to: navigation, search


Target usage

The Composition editors are Generic Enablers that help the service provider to create application mashups and composed services. Editors should provide an environment to combine and configure applications and services in graphical way. Different editors could cater for different user expertise (from technical experts with skilled in the composition language to domain experts without technical expertise or even simple end-users with no programming or technical skills) and roles (from composed service creators, to resellers and finally to prosumers) by hiding complexity behind different types of construction blocs, trading off flexibility for simplicity. By prosumer we denote a consumer-side end-user who cannot find a service which fits her needs and therefore modifies/creates services in an ad-hoc manner for her own consumption. Editors should support facilities for consistency checking of interfaces and simple debugging. They should connect to the Execution Engines allow testing, debugging, installing, executing, controlling and post execution analysis of the composed applications. Composition descriptions and technical service descriptions should be edited/created in the editor and stored/fetched to/from the Repository. When creating compositions/mashups editors might connect to the business infrastructure:

  • Marketplace to search for services
  • Shops to purchase component services them for testing /deployment, and to expose composed services for purchase
  • USDL Registry to browse business information related to services

Editors could be connected to a user and identity management service for controlling access to the applications.

User roles

  • The service provider uses the editor to develop composite services/applications. Mainly addressed are subject matter experts, business professionals or end users.
  • Application consumers can be end users or prosumers themselves which consume the application. What is meant by prosumer is a consumer-side end-user that cannot find a service for her needs and therefore modifies/creates services in an ad-hoc manner for her own consumption.
  • Service providers are describing and operating services. The services are added to the repository and provided via the library.
  • Operator of the application composer manages and controls application composer access and functionality.

GE description

We characterize an editor for dataflow oriented compositions intended to support subject matter expert without programming competence. Service providers of different roles (subject matter experts, business professionals or end user prosumers) use the editor to describe and operate services. The services are added to the repository and provided via the library. The operator of the application composer manages and controls application composer access and functionality. The dataflow-oriented service composer is modularized, with major functionalities described next.

  • Composition studio: This module provides a graphical user interface to combine appropriate services, connect services and data flows, configure services and check consistency of the composition. It supports file transactions (open, store, rename) and display options (e.g. expand, link types, descriptions).
  • Service Library: This module provides an interface to the repository to browse information about the service categories, services, description, data input and data output.
  • Debug/Simulation: This module allows the step by step application execution. It supports to display a data flow and the change of the data for every single service.
  • Deployment and governance: This module allows configuring, deploying and managing an application. Aspects to be controlled are start and end time for service execution, authorized users and user groups to execute the application, remove and rename of an application.

The deployment feature supports composition model translation into executable languages such as BPEL. The execution is supported by the service orchestration engine (especially BPEL features).

Additional features are provided separately: (a) Extensions for design-time service composition that can be provided in separate libraries, (b) Modelling workflow, (c) Supporting complex behavioural patterns, using modelling elements such as gateways (exclusive, parallel, loops, etc), (d) Modelling data flow, including support for complex data flow mapping, transformation and consistency check, (e) Modelling of orthogonal (independent) composition work and data flow, (f) Design-time semi-assisted (in opposition to manual modelling) modelling aids, such as dynamic binding, data flow generation, data flow mapping, data flow consistency, (g) Task expansion with matching composition (sub-processes).

Critical product attributes

  • Compose, configure, deploy, and test applications in easy- to-use environment for tech-savvy end users without programming competencies.
  • Easy-to-understand descriptions of atomic services and discovery in repository.
  • Easy configuration, modification and arrangement of services and applications.
  • Providing easy-to-use control and monitoring features of application execution and management.
  • Using open web standards for technologies. Thus supports extensibility to integrate other standardised (REST, SOAP interface) services.

Existing products

Regarding mashup and gadget specification, there is a draft widgets specification published by the W3C. Software vendors (like Microsoft or Google) defined their own widget model. Mashup platforms such as NetVibes use the compelling Universal Widget Architecture (UWA), whilst others, such as OpenAjax, have no component model per se but vital strategies for fitting/putting Web components together in the same mashup.

Personal tools
Create a book