Download presentation
Presentation is loading. Please wait.
Published bySandra Wilkerson Modified over 8 years ago
1
Qusay H. Mahmoud CIS*6650.01 1 CIS*6650.01 Service-Oriented Computing Qusay H. Mahmoud, Ph.D. qmahmoud@uoguelph.ca
2
Qusay H. Mahmoud CIS*6650.01 2 Web Services… Interoperability –WS-I Basic Profile Software Agents –What are they –Their applications –Integration with Web services
3
Qusay H. Mahmoud CIS*6650.01 3 Interoperability An interoperable Web service is one that works across platforms, languages, and other Web services from various vendors Challenges –Too many standards, each deals with a specific problem –Solutions utilize multiple standards –Different interpretations of the standards –Multi-vendor environments Interoperability can be achieved (or can be less of a concern) by following the guidelines set by the WS-I Basic Profile
4
Qusay H. Mahmoud CIS*6650.01 4 Interoperability Industry members formed the WS-I (http://ws- i.org) http://ws- i.orghttp://ws- i.org –An open industry organization chartered to promote Web services interoperability across platforms, operating systems, and programming languages WS-I is not a “standards” body –It cooperates with industry groups –Acts as a point of integration for the standards they generate
5
Qusay H. Mahmoud CIS*6650.01 5 Interoperability WS-I Goals –Provide education & guidance to further promote adoption of Web services –Promote consistent and reliable practices to help developers build interoperable Web services –Articulate and promote a common industry vision for Web services interoperability To achieve these goals, strategies employed: –Implementation and testing guidance (best practices, and testing tools to validate conformance) –Web services profiles
6
Qusay H. Mahmoud CIS*6650.01 6 Interoperability WS-I deliverables –Profiles In response to the growing number of interrelated specifications; solve the problem of which products supported what levels of specification –Test tools Monitor interactions between Web services and generate a log that will be the input to the Analyzer (do they conform to a given profile?) –Use cases and usage scenarios Capture business and technical requirements in a particular situation –Sample applications Implementations of applications in use cases and scenarios
7
Qusay H. Mahmoud CIS*6650.01 7 Interoperability A profile –is a named set of Web services specifications –adds constraints and guidance –doesn’t address application semantics –focuses on testable requirements –chooses between multiple mechanisms (e.g. rcp/literal vs. rpc/encoding) Example –Basic Profile 1.0, 1.1, 1.2, 2.0 –Basic Security Profile
8
Qusay H. Mahmoud CIS*6650.01 8 Interoperability Basic Profile 1.0 –SOAP 1.1, WSDL 1.2, UDDI 2.0 Scope of Basic Profile –Messaging (SOAP/HTTP) –Service description (WSDL) –Service discovery (UDDI) –XML Schema –XML 1.0 Sample conformance requirement –R0007 A SENDER MUST NOT use the soap:mustUnderstand attribute when sending a SOAP header block containing a conformance claim Four levels of compliance: compliant, typically compliant, potentially compliant, unique
9
Qusay H. Mahmoud CIS*6650.01 9 Interoperability Messaging (SOAP encodingStyle attribute) –R1005: A MESSAGE MUST NOT contain soap:encodingStyle attributes on any of the elements whose namespace is (URL to envelope schema) –R1006: A MESSAGE MUST NOT contain soap:encodingStyle attributes on any element that is a child of soap:Body –R1007: A MESSAGE described in an rpc/literal binding MUST NOT contain soap:encodingStyle attribute on any elements that are granchildren of soap:Body
10
Qusay H. Mahmoud CIS*6650.01 10 Interoperability Messaging (SOAPAction) –R2744: An HTTP request MESSAGE MUST contain a SOAPAction HTTP header with quoted value equal to the value of the soapAction attribute of soapbind:operation, if present in the corresponding WSDL description –R2745: An HTTP request MESSAGE MUST contain a SOAPAction HTTP header field with a quoted empty string value, if in the corresponding WSDL description, the soapAction attribute is not present or present with an empty string as its value Refer to WS-I Basic Profile for the list of all rules
11
Qusay H. Mahmoud CIS*6650.01 11 Software Agents and Web Services A software agent is an entity that –Acts on behalf of others in an autonomous fashion –Performs its actions in some level of proactivity and reactivity –Exhibits some levels of key attributes of learning, co- operation, and mobility Too many definitions, including: –A software component built using agent-oriented tools (goal- oriented) –An object with an attitude Agents vs. Objects: http://www.jot.fm/issues/issue_2002_05/column4
12
Qusay H. Mahmoud CIS*6650.01 12 Software Agents Classification
13
Qusay H. Mahmoud CIS*6650.01 13 Mobile Agents An agent that is able to migrate from host to host to work in a heterogeneous environment Attractive: bandwidth, connectivity Possible advantages:
14
Qusay H. Mahmoud CIS*6650.01 14 Agent Security Protecting hosts from malicious agents –Leakage: acquisition of data by unauthorized party –Tampering: altering of data by unauthorized parties –Resource stealing: use of facilities by unauthorized parties Protecting agents from malicious hosts –Scan agent for info, alter agent’s state, kill agent Therefore, users resist the use of agents –Would you trust a mobile shopping agent with your credit card information?
15
Qusay H. Mahmoud CIS*6650.01 15 Developing with agents Many tools are available (agent-based) –JADE (jade.tilab.com), complies with FIPA specifications (www.fipa.org) www.fipa.org How many agents are needed for a task? Wrong question, just like asking how many objects are needed Apply the MVC Source: Mahmoud, Q.H., and Maamar, Z.: Applying MVC to Multi-Agent Systems CCECE2006, Ottawa, Canada
16
Qusay H. Mahmoud CIS*6650.01 16 Sample App MobiAgent
17
Qusay H. Mahmoud CIS*6650.01 17 Making Agents User-Friendly Business partnerships Source: Mahmoud, Q.H., and Yu, L.: Making Software Agents User-Friendly, IEEE Computer, Jul 2006
18
Qusay H. Mahmoud CIS*6650.01 18 Agents vs. Web Services A Web service knows only about itself, but not its clients. Agents are self-aware Web services are passive. Agents are inherently communicative Agents are autonomous Agents are cooperative Many applications of agents to Web services in many recent conferences and journals
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.