1 / 18

CIS*6650.01 Service-Oriented Computing

CIS*6650.01 Service-Oriented Computing. Qusay H. Mahmoud, Ph.D. qmahmoud@uoguelph.ca. Web Services…. Interoperability WS-I Basic Profile Software Agents What are they Their applications Integration with Web services. Interoperability.

rafael-mann
Download Presentation

CIS*6650.01 Service-Oriented Computing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CIS*6650.01Service-Oriented Computing Qusay H. Mahmoud, Ph.D. qmahmoud@uoguelph.ca CIS*6650.01

  2. Web Services… • Interoperability • WS-I Basic Profile • Software Agents • What are they • Their applications • Integration with Web services 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 CIS*6650.01

  4. Interoperability • Industry members formed the WS-I (http://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 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 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 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 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 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 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 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 CIS*6650.01

  12. Software Agents • Classification 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: 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? CIS*6650.01

  15. Developing with agents • Many tools are available (agent-based) • JADE (jade.tilab.com), complies with FIPA specifications (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 CIS*6650.01

  16. Sample App • MobiAgent 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 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 CIS*6650.01

More Related