CLARIN tools for workflows Overview. Objective of this document  Determine which are the responsibilities of the different components of CLARIN workflows.

Slides:



Advertisements
Similar presentations
LEAD Portal: a TeraGrid Gateway and Application Service Architecture Marcus Christie and Suresh Marru Indiana University LEAD Project (
Advertisements

Java.  Java is an object-oriented programming language.  Java is important to us because Android programming uses Java.  However, Java is much more.
Adaptability of learning objects by appropriate knowledge representation Anastas Misev Institute of Informatics Faculty of Natural Science and Mathematics.
How Web Services are introduced in a CLARIN Workflow WSDL and WADL files for Web Service description.
Computers: Tools for an Information Age
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
The Basic Tools Presented by: Robert E., & Jonathan Chase.
SQL Reporting Services Overview SSRS includes all the development and management pieces necessary to publish end user reports in  HTML  PDF 
Programming Logic and System Analysis
Multimedia Enabling Software. The Human Perceptual System Since the multimedia systems are intended to be used by human, it is a pragmatic approach to.
Android 4: Creating Contents Kirk Scott 1. Outline 4.1 Planning Contents 4.2 GIMP and Free Sound Recorder 4.3 Using FlashCardMaker to Create an XML File.
Software design and development Marcus Hunt. Application and limits of procedural programming Procedural programming is a powerful language, typically.
TIBCO Designer TIBCO BusinessWorks is a scalable, extensible, and easy to use integration platform that allows you to develop, deploy, and run integration.
Creating a Web Page HTML, FrontPage, Word, Composer.
Chapter 7: The Object-Oriented Approach to Requirements
® IBM Software Group © 2006 IBM Corporation How to read/write XML using EGL This Learning Module shows how to utilize an EGL Library to read/write an XML.
UNIT 21 Software Engineering.
An Introduction to Content Management. By the end of the session you will be able to... Explain what a content management system is Apply the principles.
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
Managing the development and purchase of information systems (Part 1)
INTRODUCTION TO FRONTPAGE. TOPICS TO BE DISCUSSED……….  Introduction Introduction  Features Features  Starting Front Page Starting Front Page  Components.
16-1 The World Wide Web The Web An infrastructure of distributed information combined with software that uses networks as a vehicle to exchange that information.
CPS120: Introduction to Computer Science The World Wide Web Nell Dale John Lewis.
Mobile search engine for a smart phone / navigation system can be used to search and compare hundreds of stores and their products in seconds. © 2001 –
Calculation BIM Curriculum 07. Topics  Calculation with BIM  List Types  Output.
XHTML Introductory1 Linking and Publishing Basic Web Pages Chapter 3.
1 UNIT 20 Software Engineering Lecturer: Ghadah Aldehim.
© 2006 IBM Corporation IBM WebSphere Portlet Factory Architecture.
A REFACTORING TOOL FOR DESIGN PATTERNS WITH MODEL TRANSFORMATIONS Zekai Demirezen Yasemin Topaloğlu Ege University Department of Computer Engineering
1 Vulnerability Analysis and Patches Management Using Secure Mobile Agents Presented by: Muhammad Awais Shibli.
Configuration Management (CM)
Session 1 SESSION 1 Working with Dreamweaver 8.0.
1 Peter Allan14-15 Dec 2004AstroGrid Consortium Meeting: Architecture Discussion AstroGrid Architecture – the view from outside Is the description acceptable?
© 2001 Business & Information Systems 2/e1 Chapter 8 Personal Productivity and Problem Solving.
Lead Black Slide Powered by DeSiaMore1. 2 Chapter 8 Personal Productivity and Problem Solving.
(Chapter 10 continued) Our examples feature MySQL as the database engine. It's open source and free. It's fully featured. And it's platform independent.
Data Management Console Synonym Editor
Introducing the World Wide Web Internet- a structure made up of millions of interconnected computers whose users communicate with each other and share.
Moby Web Services Iván Párraga García MSc on Bioinformatics for Health Sciences May 2006.
ESO SDD - Henning Lorch ESO Instrumentation Software Workshop Henning Lorch “Reflex” Pipeline Frontend.
An Introduction to Designing, Executing and Sharing Workflows with Taverna Katy Wolstencroft myGrid University of Manchester IMPACT/Taverna Hackathon 2011.
Esri UC 2014 | Technical Workshop | Creating Geoprocessing Services Kevin Hibma.
Introduction to Taverna Online and Interaction service Aleksandra Pawlik University of Manchester.
ATLAS-specific functionality in Ganga - Requirements for distributed analysis - ATLAS considerations - DIAL submission from Ganga - Graphical interfaces.
Chapter – 8 Software Tools.
© Geodise Project, University of Southampton, Workflow Application Fenglian Xu 07/05/03.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
Registry requirements Regarding to Web Services and Workflows.
XML Extensible Markup Language
0 Copyright 2012 FUJITSU Interstage BOP SQL Query Tutorial Todd Palmer October 2012.
Requirements for Specification of workflows in CLARIN Scenario design driven.
De Rigueur - Adding Process to Your Business Analytics Environment Diane Hatcher, SAS Institute Inc, Cary, NC Falko Schulz, SAS Institute Australia., Brisbane,
Advanced Taverna Aleksandra Pawlik University of Manchester materials by Katy Wolstencroft, Aleksandra Pawlik, Alan Williams
Exploring Taverna 2 Katy Wolstencroft myGrid University of Manchester.
Introduction to Algorithm. What is Algorithm? an algorithm is any well-defined computational procedure that takes some value, or set of values, as input.
Introduction to Programming and App Inventor. Introduction What is a computer program? Introducing App Inventor Getting hands on with App Inventor.
Join the Community
Project 1 Introduction to HTML.
Database System Concepts and Architecture
AJAX.
Explain what touch develop is to your students:
Tools of Software Development
Social Media And Global Computing Introduction to Visual Studio
Getting your metadata using PROC METADATA
Manuscript Transcription Assistant Initiative
Teaching slides Chapter 6.
Mapping a network drive
Overview of the IDE Visual Studio .NET is Microsoft’s Integrated Development Environment (IDE) for creating, running and debugging programs (also.
Overview of Computer system
Software Architecture & Design
Presentation transcript:

CLARIN tools for workflows Overview

Objective of this document  Determine which are the responsibilities of the different components of CLARIN workflows.  Explain what is expected from the CLARIN Workflow tools. Requirements.

Firstly, what is a workflow?  Workflow is a definition of a process in a certain language. It is done in a non-ambiguous way.  A workflow is only the definition of a process.  Since the workflow definition is made in a non- ambiguous way, any software can execute it expecting the same results. It means that workflows can be shared between different applications.  Workflow may be a XML file that a user can write without any other help.

Workflow tools  Since a workflow is only a process description, we need 2 other components. Workflow Engine : Application that process (executes) workflow descriptions. Workflow Editors : Application for creation of workflow descriptions.  Both applications can be in the same piece of software. Workflow Workbench.

Workflow Engines: Expectations  Engines are applications that execute workflows in the way they are described.  Many engines can be developed. Some with GUI for desktop computers some other hosted in servers with schedule features, etc...

Workflow Editor: Expectations  For advanced users of CLARIN, a text editor could be enough for a workflow creation.  But CLARIN objective is easiness. In this way to create a workflow in CLARIN must be really easy.  The editors in CLARIN must help as much as possible to the user. This is done, for instance, querying the registry and taking decisions behind the scenes.  Example: User connects two web services using first’s output with second’s input. Metadata stored in the registry specifies that this operation is not possible without a conversion. Also the registry contains info about converters available. The editor must be aware of that and introduce a conversion tool between the web services. This can be done without user’s interaction at all.  SMART editors are possible since the Registry will contain all the required metadata for taking decisions automatically.

Example  User wants to connect 2 web services. Web service X Web service Y  X’s output needs to be Y’s input.  But X’s output is not in the proper format for being Y’s input.  The workflow editor must be able to find a converters.

Example. Finding a converter  The editor needs to do the following tasks: Get information about web service X. Which format has X’s output? Get information about web service Y. Which format requires Y’s input? Find a converter. How can data in format X be transformed in format Y?  All this information must be stored and accessible in the registry

Example. Get information of X  It is required to query the registry. Still it is not decided how this query will be but intuitively it should look like:  specObject = GetWebServiceSpecification(X_persistent_id)  This call will return the specification where explains that X’s output format follows the standard A.

Example. Get information of Y  Like previously with X, the editor queries the Registry for Y’s specification.  specObject = GetWebServiceSpecification(Y_persistent_id)  This call will return the specification where explains that Y’s input format follows the standard B.

Example. Finding a converter  Now the editor needs to find a converter from standard A to standard B.  It will be done using the Registry as well. Also it is not developed yet but it will be something similar to: ResourceList = GetResourceList(“/standards/converters”) The editor has downloaded the list of converters (resources under the standards/converters branch). Now inspecting this list of resource descriptions, the editor will find the required converter (if any).

Example. Introduce the converter in the workflow  Before the insertion of the converter in the workflow, depending on the user’s profile: the user will be asked for confirmation or the user will be noticed of different converters if more than one is available or simply won’t be notified at all (novice users)  The editor introduces the converter in the workflow between X and Y.  The workflow description will keep this converter information. Engines executing this workflow will need to know about this conversion.

Workflow editor: Requirements  Graphical representation of all workflow description elements. (loops, if then clauses, parallelization, exceptions, etc…)  SMART editor.  Different user profiles (Advanced users will want to know more about automatic decisions taken by the workbench while novice users won’t want to decide anything)  Drag & Drop features.  Registry browsing

Workflow workbench.  The editor can help even more to the user if it is aware of the workflow execution results. That’s why it is recommended to develop a Workbench (Workflow Editor + Workflow Engine together).  Also for basic users it is easier when everything is centralized in just one application.

Workflow Workbench: Requirements  All Editor requirements  Debugging tools: breakpoints, Start-pause execution and inspection of intermediate steps.  Partial workflow execution and reuse of data obtained in previous executions. (To avoid repeating calls to web services while testing)  Output console

Very important. SMART applications  Different profiles in CLARIN applications. Don’t bother novice users with advanced questions.  Applications remember similar situations in the past. “You connected two web services similar to this one using converter AtoB. Do you want to do it again?”  Use of community intelligence stored in the registry. “250 users connected these 2 web services in other projects using converter AtoB, do you want to do it as well?”