web-based software development (ice0534) webservices mediator for location sensitive services design...
TRANSCRIPT
![Page 1: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/1.jpg)
Web-based Software Development (ICE0534)
WebServices Mediator
for Location Sensitive Services Design & Implementation
August 11, 2005
Term Project Presentation Advisor: Prof. In-Young Ko
Project Member: Woo-hyuk JangSung-joon ParkJong-ha JungJong-uk LeeEnkhbold N.
ICU ConfidentialThe information contained in this document is subject to change without notice.ICU makes no warranties either express or implied, in this document. The entire risk of the use or the results of the use of this document remains with the user. No part of this document may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written permission of ICU.Copyright © 2005 ICU . All right reserved.
![Page 2: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/2.jpg)
Contents - Introduction
- Motivation Scenario
- WebServices Mediator
- System Architecture
- Implementation
- Demonstration
- Validation
- Conclusion
- References
Copyright © 2005 ICU. All rights reserved | Confidential
![Page 3: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/3.jpg)
3
Introduction
Web services & Service Oriented Architecture
‘The Deluge of the Services’
□ Difficult to find and use precise services
The service Integration
□ Service portal, or Service broker
![Page 4: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/4.jpg)
4
Motivation Scenario: Call-Taxi Service Mr. ICU have to attend Job-Interview.
He decided to use call-taxi because he got up late.
While he waits the called taxi, another taxi quickly passed by
him !
Company for job interview
Call Taxi Company
Another Taxi
Mr.ICU
![Page 5: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/5.jpg)
5
WebServices Mediator: Location sensitive services
Definition of location sensitive services
□ A service whose primary value is usually came from the location information.
□ A service which can earn more value if it utilizes the location information.
We extended the origin meaning.
□ Taxi, Parcel services etc
We need integrated mediator that can play a service broker roll !!
Location Sensitive Service Mediator
SOAP
SOAP
SOAP
SOAP
FAÇADE
Web service Access Object
Web service Access Object
Web service Access Object
Web service Access Object
WebService Provider
WebService Provider
WebService Provider
WebService Provider
Taxi Service Client
Taxi Service Client
SOAP
SOAP
WebServiceWrapper
WebServiceWrapper
WebServiceWrapper
WebServiceWrapper
![Page 6: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/6.jpg)
6
Location SensitiveWebServices Suppliers
System ArchitectureW
eb
Serv
ice
s
Clien
t Tie
r
Web
Serv
ices
Bro
ker
Tie
rW
eb
Serv
ices
Pro
vid
er
Tie
r
J2EE S
erv
er
RequestHandlingModule
MediationLogic
Controller
BusinessLogic
Controller
Runtime ClientAny Time, Any Where, Any Device
![Page 7: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/7.jpg)
7
System Architecture
Response data to clients
Collect data from supplier WebServices
A Passenger access to just the WebServices broker
Calculate the closest position and duration between passenger and vehicle
Information ProviderTaxi List / Position
![Page 8: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/8.jpg)
8
System Architecture
Expect to be advanced
□ Accessibility
□ Scalability
□ Reusability
□ Flexibility
□ Stability
![Page 9: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/9.jpg)
9
System Architecture: Class diagram of the service provider
TaxiCompanyIF
getClosestTaxis(loc : Location) : Taxi[]callTaxi(taxi : Taxi) : boolean
Thread(from lang)
Composer
numOfResults : inttimeBound : int
getAvailableTaxis(loc : Location) : Taxi[]getAvailableTaxis(x : int, y : int) : Taxi[]
Location
x : inty : int
estimateMinutes(anotherLoc : Location) : int
Requestor
availability : boolean
request()isAvailable() : booleanRequestor(_taxi : Taxi, _loc : Location)
0..*0..*
TaxiList
numOfTaxis : int
get(index : int) : TaxigetTaxi(id : int) : TaxigetIterator() : Iterator
<<singleton>>
Taxi
unitId : intdriver : StringestimatedMinute : int
cloneTaxi() : Taxi
0..*0..*
TaxiCompanyImpl
getClosestTaxis(loc : Location) : Taxi[]callTaxi(taxi : Taxi) : boolean
0..*0..*
TaxiCaller
calledTaxis : Vector
callTaxi(clientLoc : Location, taxiId : int) : boolean
<<singleton>>
![Page 10: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/10.jpg)
10
System Architecture: Sequence diagram of the service provider
![Page 11: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/11.jpg)
11
System Architecture: Class diagram of the service broker
![Page 12: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/12.jpg)
12
System Architecture: WSDL
![Page 13: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/13.jpg)
13
WebServices BrokerWebServices BrokerLocation Sensitive ServiceLocation Sensitive Service
Passenger ALocated in Seoul/Sinchon
Any Time, Any Where, Any Device - Internet Access
Taxi Company BTaxi Company BTaxi Company ATaxi Company A
Passenger BLocated in Seoul on the street
Passenger CLocated in Daejun/ICU lab
Passenger DLocated in Daejun station
Location Info
Location InfoSOAPSOAP
Location Info
Location InfoSOAPSOAP
Taxi List &
Taxi List & location Info
location InfoSOAPSOAP
Taxi List &
Taxi List & location Info
location InfoSOAPSOAP
Taxi InfoTaxi InfoSOAP
SOAP
Which taxi will be
Which taxi will be
arrived at the first?
arrived at the first?
![Page 14: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/14.jpg)
14
Implementation
Taxi Service Provider
□ Business methods
getClosestTaxis(Location) : TaxiUnit[]
callTaxi(Location, int) : boolean
□ Environments: Java 1.4.x, wscompile 1.1.2, J2EE 1.4
□ Successfully implemented and deployed.
Can be check by WSDL on the Web
( http://localhost:8080/taxi-jaxrpc/taxi?WSDL )
![Page 15: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/15.jpg)
15
Implementation
Taxi Service Broker
□ Same business methods as the providers’
requestTaxiList(Location) : TaxiUnit[]
callTaxi(Location, TaxiUnit) : boolean
□ Invokes every taxi provider when it’s invoked.
□ Deployed as a web service also
WSDL is on
http://localhost:8080/taxibroker-jaxrpc/broker?WSDL
![Page 16: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/16.jpg)
16
Implementation
Taxi Service Client Small Java program is enough
□ Generated stub by ‘wscompile’ at compile time.□ Simple web service invocation part
import taxibroker.*; // Package of generated stub
. . .
. . .
// generates stub from Web service port
Stub stub = (Stub) (new TaxiBroker_Impl().getTaxiBrokerIFPort());
// Sets received end point address
stub._setProperty(javax.xml.rpc.Stub.ENDPOINT_ADDRESS_PROPERTY, args[0]);
// Changes Stub to Specific Interface
TaxiBrokerIF taxi = (TaxiBrokerIF) stub;
// Invokes Web service
TaxiUnit[] taxis = taxi.requestTaxiList(new MapLocation(20, 20));
![Page 17: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/17.jpg)
17
Demonstration
GUI Simulation like the small program on the mobile device.
![Page 18: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/18.jpg)
18
Validation
Several improvements
□ Client stub is simplified.
□ Fault is covered by the broker.
□ Client can take best choice of taxis
□ The changes of services are invisible to the client.
![Page 19: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/19.jpg)
19
Conclusion
Implementation for general purposed broker
The broker made the communications of the SOA
□ Simple
□ Handy
□ and, Safe
![Page 20: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/20.jpg)
20
References
[1] Hewlett-Packard Company, Web Services Concepts – A technical overview, 2001
[2] Tony Andrews, Francisco Curbera, Hetesh Dholakia, Yaron Goland, Johannes Klein, Kevin
Liu, Dieter Roller, Doug Smith, Satish Thatte, Ivana Trickovic, and Sanjiva Weerawarana,
Business Process Execution Language for Web Services Version 1.1, 2003
[3] Assaf Arkin, Sid Askary, Scott Fordin, Wolfgang Jekeli, Kohsuke Kawaguchi, David
Orchard, Stefano Pogliani, Karsten Riemer, Susan Struble, Pal Takacsi-Nagy, Ivana
Trickovic, and Sinisa Zimek, Web Service Choreography Interface 1.0, W3C, 2002.
[4] Erich Gamma, Richard Helm, Ralph Johnsom and John Vlissides, Design Patterns –
Elements of Reusable Object-Oriented Software, Addison-Wesley, 1995
[5] Sun Microsystems, Core J2EE Patterns – Data Access Object, Sun Developer Network,
2002, http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html
![Page 21: Web-based Software Development (ICE0534) WebServices Mediator for Location Sensitive Services Design & Implementation August 11, 2005 Term Project Presentation](https://reader033.vdocuments.mx/reader033/viewer/2022052701/56649d9c5503460f94a84cd1/html5/thumbnails/21.jpg)
21
Thank you!
Copyright © 2005 ICU SSLab. All rights reserved | Confidential
© 2005 ICU. All rights reserved.© 2005 ICU. All rights reserved.This presentation is for informational purposes only. ICU MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.This presentation is for informational purposes only. ICU MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.