![Page 1: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/1.jpg)
JICSIT/ITAIC 2011 Keynote 1
Yinong Chen (Ph.D.)Arizona State University, Tempe, Arizona
Service-Oriented Computing
![Page 2: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/2.jpg)
2
Outline
Service-Oriented Computing Web App development Mobile Apps development
![Page 3: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/3.jpg)
3
Component-Based Software DevelopmentBricks and Tiles
imperative
Component-based
![Page 4: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/4.jpg)
4
Object-Oriented and Service-Oriented Software Development
Requirement analysis
Object-orienteddevelopment
Programmers
Problem decomposition
Objecttesting
Servicestesting
Class/Objectlibrary
Servicerepository
Servicesdevelopment
Programmers
Application building
Testing
Deployment
Application builder
![Page 5: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/5.jpg)
5
Object-Oriented Software Development
Organization X: Component library
Organization Y: Component library
![Page 6: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/6.jpg)
6
Service-Oriented Software Development
Organization X: Component library
Organization Y: Component library
Organization Z: Component library
Service broker
proxy
proxy proxy proxyproxy
Auto-searchable Found
Registration
Application
StandardInterface
![Page 7: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/7.jpg)
7
Distributed Development: Separation of Responsibility
Registry
Service brokers
Registry
Service providers
Active Objects
Application Architect
Applications
Internet
White pages
Yellow pages
Green pages
The Three-Party Model of Service-Oriented Software Development
Traditional object-oriented
programmers, active objects
hosting
Developers who understand
database, ontology, and matching
Service requesters Service developers
Service repository
End user
Software engineers who understand the application domain
![Page 8: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/8.jpg)
8
Service Broker
Registry
Service brokers
Service providersApplication builder
ApplicationService
Hosting
![Page 9: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/9.jpg)
99
Register as a service Provider at www.Xmethods.net
You could implement the registration service to allow other people to submit services, and you automatically listed the service in your directory.
![Page 10: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/10.jpg)
10
Services Available at www.Xmethods.net
![Page 11: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/11.jpg)
11
Amazon Web Services
• AWS Catalog:http://developer.amazonwebservices.com/ http://solutions.amazonwebservices.com/connect/index.jspa
• The following link gives a tutorial on using AWS
http://msdn.microsoft.com/coding4fun/web/services/article.aspx?articleid=912260Another one:http://www.odetocode.com/Articles/158.aspxFind more tutorials
![Page 12: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/12.jpg)
12
Amazon Web Services http://solutions.amazonwebservices.com/connect/index.jspa
Solutions for• Amazon Associates • Developers • Businesses • Amazon Sellers • Consumers
Browse by Services Amazon E-Commerce Service Amazon Elastic Compute Cloud Amazon Historical Pricing Amazon Mechanical Turk (Beta) Amazon Simple Queue Service Amazon Simple Storage Service Alexa Site Thumbnail Alexa Top Sites Alexa Web Information Service Alexa Web Search
Registration is required to use these services, but the services are free, yet
![Page 13: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/13.jpg)
1313
Adding Web Services http://webservices.amazon.com/AWSECommerceService/AWSECommerceService.wsdl
![Page 14: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/14.jpg)
1414
http://soap.amazon.com/schemas2/AmazonWebServices.wsdl
![Page 15: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/15.jpg)
15
Google Service Links
• Google Web APIshttp://code.google.com/
• http://code.google.com/more/• Google Web API Forum
http://groups.google.com/group/google.public.web-apis• Google Web API FAQ
http://www.google.com/apis/api_faq.html#gen6
![Page 16: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/16.jpg)
16
Microsoft Services: http://msdn.microsoft.com/en-us/library/
Service Name Production Service Metadata URL
Geocode Service http://dev.virtualearth.net/webservices/v1/geocodeservice/geocodeservice.svc
Imagery Service http://dev.virtualearth.net/webservices/v1/imageryservice/imageryservice.svc
Route Service http://dev.virtualearth.net/webservices/v1/routeservice/routeservice.svc
Search Service http://dev.virtualearth.net/webservices/v1/searchservice/searchservice.svc
16
Bing SOAP Services: http://msdn.microsoft.com/en-us/library/cc966738.aspx
Bing RESTful Services: http://msdn.microsoft.com/en-us/library/ff701713.aspx
Locations API Use the Locations API to geocode and reverse-geocode location data.
Imagery API Use the Imagery API to get a static map and imagery data information such as map tiles and providers.
Routes API Use the Routes API to get directions and route information for driving, walking or using transit.
Traffic API Use the Traffic API to get information about traffic incidents and issues in a specified area.
Common Parameters and Types Use common parameters and types to specify values such as culture and pushpin styles.
Common Response Description Use this description to understand the results returned for a Bing Maps REST Services request.
Status Codes and Errors Use the status and error code descriptions for troubleshooting.
Bing APIs: http://msdn.microsoft.com/en-us/library/ff701722.aspx
![Page 17: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/17.jpg)
17
A DataSet can be accessed as an XML file, or as table (2D-array) through indices.
Services from: http://www.webservicex.net/17
Test the service at: http://www.webservicex.net/uszip.asmx
<?xml version="1.0" encoding="utf-8" ?> <NewDataSet> <Table> <CITY>Tempe</CITY> <STATE>AZ</STATE> <ZIP>85281</ZIP> <AREA_CODE>602</AREA_CODE> <TIME_ZONE>M</TIME_ZONE> </Table> </NewDataSet>
Try It
WSDL File
![Page 18: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/18.jpg)
18
Services from: http://www.remotemethods.com/
![Page 19: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/19.jpg)
19
FlightStats: https://www.flightstats.com/developers/bin/view/Web+Services/WSDL
![Page 20: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/20.jpg)
20
As an Application Architect
Develop Windows Applications or
Web Applications Using ASP .Net
Registry
Service broker
Registry
Service provider
Service
Application builder
Application
A Web application is designed for end users, which requires human user interface, such as GUI.
A Web service is designed for application builders, which requires application programming interface (API) or service interface.
What is the difference between a Web application and a Web service?
![Page 21: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/21.jpg)
21
Applications Using Services Through Proxies
• A proxy is a “virtual” object that creates a channel to a (remote) service. A client accesses the operations of the services by calling the methods of the proxy.
• An endpoint is a service interface exposed to outside, so that a client can access an operation of the service. It must include the address, name, parameters, return type, etc.
Service
Service
Service
Service
Proxy
Proxy
Proxy
Proxy
Proxy
Proxy
ServiceProvider
1
ServiceProvider
2
endpoints
Application 1
Application 4
Application 3
endpoints
SOAP
![Page 22: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/22.jpg)
22
Where to Deploy Apps? Software development is the same; User Interface (UI) design is slightly
different– Web Apps– Cell Phone Apps– Cloud Computing Apps
![Page 23: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/23.jpg)
23
Impact of Service-Oriented Computing• Explicit differentiation between software engineers and
programmers• Application architect (software engineers) do not have to
focus on programming in the small• Programmers do not have to understand application domain• Tougher but equal competition• Shorter development cycle• Better and more reliable software from specialized providers• Different skill requirements:
– Few programmers-only may be needed, as reuses increase
– More software engineers (CS/CSE graduates) will be needed, as applications increase
![Page 24: JICSIT/ITAIC 2011 Keynote 1 Yinong Chen (Ph.D.) Arizona State University, Tempe, Arizona Service-Oriented Computing](https://reader035.vdocument.in/reader035/viewer/2022062321/56649e025503460f94aed6ea/html5/thumbnails/24.jpg)
24
ASU Service Repositoryhttp://venus.eas.asu.edu/WSRepository/
• SOAP/WSDL Services• RESTful Services• Workflow services• Web applications• Robot as Service:
http://venus.eas.asu.edu/WSRepository/RaaS/main/