Integrating Distributed End-User Experiences Business Scenarios and Use Cases www.oasis-open.org/committees/wsia/scenarios/index.shtml Embedded Consumer.

Slides:



Advertisements
Similar presentations
31242/32549 Advanced Internet Programming Advanced Java Programming
Advertisements

Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
RPC Robert Grimm New York University Remote Procedure Calls.
The Web Warrior Guide to Web Design Technologies
MP IP Strategy Stateye-GUI Provided by Edotronik Munich, May 05, 2006.
Interactive Portlets Presentation for WSRP Meeting March 18, 2002 Eilon Reshef VP Products and Co-Founder WebCollage.
Component Patterns – Architecture and Applications with EJB copyright © 2001, MATHEMA AG Component Patterns Architecture and Applications with EJB JavaForum.
G O B E Y O N D C O N V E N T I O N WORF: Developing DB2 UDB based Web Services on a Websphere Application Server Kris Van Thillo, ABIS Training & Consulting.
The KB on its way to Web 2.0 Lower the barrier for users to remix the output of services. Theo van Veen, ELAG 2006, April 26.
Web Services Andrea Miller Ryan Armstrong Alex. Web services are an emerging technology that offer a solution for providing a common collaborative architecture.
Apache Axis: A Set of Java Tools for SOAP Web Services.
Communication in Distributed Systems –Part 2
Objectives Explain the purpose and objectives of object- oriented design Develop design class diagrams Develop interaction diagrams based on the principles.
4/25/ Application Server Issues for the Project CSEP 545 Transaction Processing for E-Commerce Philip A. Bernstein Copyright ©2003 Philip A. Bernstein.
Processing of structured documents Spring 2003, Part 6 Helena Ahonen-Myka.
Chapter 7: The Object-Oriented Approach to Requirements
The Design Discipline.
Systems Analysis and Design in a Changing World, Fifth Edition
A Scalable Application Architecture for composing News Portals on the Internet Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta Famagusta.
WSRP Technical Committee Use Case Review Sixth face to face meeting May 12 th – 14 th, 2003 SUN, Grenoble, France.
Software Architecture Classification for Estimating the Costs of COTS Integration Yakimovich, Bieman, Basili; icse 99.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Web Services Experience Language Web Services eXperience Language Technical Overview Ravi Konuru e-Business Tools and Frameworks,
THE GITB TESTING FRAMEWORK Jacques Durand, Fujitsu America | December 1, 2011 GITB |
An Introduction to Software Architecture
Module 14: WCF Send Adapters. Overview Lesson 1: Introduction to WCF Send Adapters Lesson 2: Consuming a Web Service Lesson 3: Consuming Services from.
12 Systems Analysis and Design in a Changing World, Fifth Edition.
Lecture 15 Introduction to Web Services Web Service Applications.
Web Services Week 7 Aims: A detailed look at the underlying mechanisms for communication between web services Objectives: SOAP, WSDL, UDDI.
1 ITEC 3010 “Systems Analysis and Design, I” LECTURE 10: Use Case Realizations [Prof. Peter Khaiter]
Web Services based e-Commerce System Sandy Liu Jodrey School of Computer Science Acadia University July, 2002.
XRules An XML Business Rules Language Introduction Copyright © Waleed Abdulla All rights reserved. August 2004.
1 Schema Registries Steven Hughes, Lou Reich, Dan Crichton NASA 21 October 2015.
Systems Analysis and Design in a Changing World, 3rd Edition
Introducing BPEL Concepts Oracle BPEL Process Manager.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
Cairngorm Microarchitecture. Pronunciation Cairngorm (kârn gôrm) n. yellowish-brown variety of quartz, especially found in Scottish Cairngorm mountain.
Internet & World Wide Web How to Program, 5/e. © by Pearson Education, Inc. All Rights Reserved.
An Introduction to Web Services Web Services using Java / Session 1 / 2 of 21 Objectives Discuss distributed computing Explain web services and their.
A PPARC funded project Common Execution Architecture Paul Harrison IVOA Interoperability Meeting Cambridge MA May 2004.
Introduction to Web Services. Agenda Motivation History Web service model Web service components A walkthrough examples.
Module: Software Engineering of Web Applications Chapter 2: Technologies 1.
Web Services from 10,000 feet Part I Tom Perkins NTPCUG CertSIG XML Web Services.
Preface IIntroduction Objectives I-2 Course Overview I-3 1Oracle Application Development Framework Objectives 1-2 J2EE Platform 1-3 Benefits of the J2EE.
Slide 1 Service-centric Software Engineering. Slide 2 Objectives To explain the notion of a reusable service, based on web service standards, that provides.
Component Patterns – Architecture and Applications with EJB copyright © 2001, MATHEMA AG Component Patterns Architecture and Applications with EJB Markus.
Intro to Web Services Dr. John P. Abraham UTPA. What are Web Services? Applications execute across multiple computers on a network.  The machine on which.
.NET Mobile Application Development XML Web Services.
Web Service Definition Language. Web Services: WSDL2 Web Service Definition Language ( WSDL ) What is a web service? [ F. Leymann 2003 ] A piece of code.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
Web Services Blake Schernekau March 27 th, Learning Objectives Understand Web Services Understand Web Services Figure out SOAP and what it is used.
CEN6502, Spring Understanding the ORB: Client Side Structure of ORB (fig 4.1) Client requests may be passed to ORB via either SII or DII SII decide.
3/18/2002AIM AB Review of WSRP/WSIA Adaptation Description Language, Past and Present Directions. Ravi Konuru, IBM.
Nguyen Thi Thanh Nha HMCL by Roelof Kemp, Nicholas Palmer, Thilo Kielmann, and Henri Bal MOBICASE 2010, LNICST 2012 Cuckoo: A Computation Offloading Framework.
Software Architecture Patterns (3) Service Oriented & Web Oriented Architecture source: microsoft.
6. Application Server Issues for the Project
Training for developers of X-Road interfaces
Business rules.
Training for developers of X-Road interfaces
Sabri Kızanlık Ural Emekçi
Programming the Web Using Visual Studio .NET
Distribution and components
Service-centric Software Engineering
Web services, WSDL, SOAP and UDDI
CSSSPEC6 SOFTWARE DEVELOPMENT WITH QUALITY ASSURANCE
An Introduction to Software Architecture
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Presentation transcript:

Integrating Distributed End-User Experiences Business Scenarios and Use Cases Embedded Consumer places the Producer’s presentation web services inside a container as side- by-side independent applications. Customized Model: Consumer sets Producer default values, restricts Producer types View: Consumer alters look and feel styling, adds/deletes elements of Producer’s view Control: Consumer intercepts Producer actions Coordinated Consumer integrates multiple Producers into a single user experience by wiring together their data and presentation states.

Integrating Distributed End-User Experiences Business Scenarios and Use Cases Customized Model: Consumer sets Producer default values, restricts Producer types View: Consumer alters look and feel styling, adds/deletes elements of Producer’s view Control: Consumer intercepts Producer actions

Integrating Distributed End-User Experiences Scenario: Customization Universal Bank wants to make the Loan Risk Applications of its subsidiaries available for use by its Loan Officers worldwide, without requiring central IT to become involved as the applications evolve The subsidiaries deploy their applications as WSIA services or wrap them externally. Universal Bank central IT develops the Loan Risk Workbench, which interacts with the Loan Officer, selects the right Loan Risk application, invokes it with the right parameters, and captures the return data Loan OfficersUniversal Bank application Applications to be integrated Loan Risk Workbench WSIA Client (Proxy) Registry Pub loan risk Tourist hotel loan risk Car dealer loan risk (Intranet) WSIA Service (Wrapper) WSIA Service (Wrapper) WSIA Service (Wrapper)

Integrating Distributed End-User Experiences XFORMS-based approach to customization WSIA Application WSIA Runtime HTTP (SOAP) HTTP (HTML) Users Stock Application Consumer Application WSIA Proxy Producer Generates/ binds Data model (Schema) Data values (Instance) Validates Producer specific operations

Integrating Distributed End-User Experiences Model customization: Setting Data Values (instance) Producer Generates Data values (Instance) Consumer supplies initial data values for Producer-specific properties Producer executes and carries on dialog with end-user Producer supplies final data values to Consumer at end of dialog Producer specific operations

Integrating Distributed End-User Experiences Model customization: Altering types (schema) Producer Generates Data model (Schema) Data values (Instance) Validates Consumer adds restrictions to data model properties to control data values for Producer-specific properties, e.g. limits pull-down options, narrows data type constraints Producer specific operations

Integrating Distributed End-User Experiences View customization Producer Generates Data model (Schema) Data values (Instance) Validates Consumer inserts new markup for the Producer ‘ s view, respecting defined restrictions for the fragments the Producer can accept, e.g. provides formatting for cells in calendar ‘ s month view. Producer specific operations

Integrating Distributed End-User Experiences Control customization Producer Generates Data model (Schema) Data values (Instance) Validates Consumer inserts new constraints linking values across multiple data elements in the Producer ‘ s model Producer specific operations

Integrating Distributed End-User Experiences Customization Description Language Description ML for WSIA output markup and properties allows Inserting/deleting/modifying output markup and properties Setting formatting preferences, e.g.  calendar mode (day/week/month view, Sun/Mon first … ) In the future … driving view state, e.g.  which tab is selected  field focus  active field values (not yet validated for action inputs) Customizations can be run At the Consumer - for privacy from the Producer; and performance by delegation of updates closer toward the user At the Producer - for complex adaptations; for privacy, or to offload integration effort, from the Consumer

Integrating Distributed End-User Experiences Overview of the WSIA interfaces Base WSIA Service Producer Lifecycle: createInstance, destroyInstance Service description: getInterface, hasInterface Properties: getPropertySchema, setProperties, getProperties User interaction: getOutput, performAction Property synchronization: addEventListener, removeEventListener, handleEvent Custom: service specific operations to affect either properties or output

Integrating Distributed End-User Experiences getOutput createInstance Consumer  Producer Interaction with Customization: Instantiation and initialization of Producer values and constraints Consumer (client)Producer Adds Component Generates Output initInstance ( s, property values, constraints ) S User Customizes Component Allocate new Instance Assigns Consumer’s property values and constraints, returns updated properties I P S P Output returned to end-user through the Consumer S S S PC

Integrating Distributed End-User Experiences performAction getOutput ( s, property values ) Consumer  Producer Interaction with Customization: Two-pass action invocation Consumer (client)Producer Generates Output Clicks Action User Action Handling returns updated properties, “submit” indication for final action A AS P Consumer passes final property updates for Output, e.g. correlated SKU values P PS S S

Integrating Distributed End-User Experiences custom Action getOutput ( s, property values ) Consumer  Producer Interaction with Customization: Action invocation on Consumer markup embedded within Producer Consumer (client)Producer Generates Output Clicks Action User Action Handling returns updated properties, “submit” indication for final action A AS P Consumer passes final property updates for Output, e.g. correlated SKU values P PS S S Action is intercepted at Consumer, mapped onto custom producer action

Integrating Distributed End-User Experiences Customization protocol questions Should initInstance arguments be allowed on createInstance? A separate initInstance allows for reuse of the same instance handle -- is this important? Should property constraints be allowed any time during a component ’ s lifecycle? On an action or getOutput invocation? How is “ submit ” indicated on a return value from performAction? What if custom actions are allowed? Common message definition for “ submit ” is required What processing is required for user actions on embedded view fragments? I.e. those view fragments inserted by the Consumer -- can they simply be intercepted by the Consumer? If the Consumer then invokes a custom Producer action, it must have the same return message to inform the Consumer of changed property values and participate in the same 2-pass processing model to generate output

Integrating Distributed End-User Experiences Backup