rent-now

Rent More, Save More! Use code: ECRENTAL

5% off 1 book, 7% off 2 books, 10% off 3+ books

9780470091487

Service-Oriented Computing Semantics, Processes, Agents

by ;
  • ISBN13:

    9780470091487

  • ISBN10:

    0470091487

  • Edition: 1st
  • Format: Hardcover
  • Copyright: 2005-01-14
  • Publisher: WILEY
  • Purchase Benefits
  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $122.61 Save up to $12.21
  • Buy New
    $122.49
    Add to Cart Free Shipping Icon Free Shipping

    PRINT ON DEMAND: 2-4 WEEKS. THIS ITEM CANNOT BE CANCELLED OR RETURNED.

Summary

This comprehensive text explains the principles and practice of Web services and relates all concepts to practical examples and emerging standards. Its discussions include: Ontologies Semantic web technologies Peer-to-peer service discovery Service selection Web structure and link analysis Distributed transactions Process modelling Consistency management. The application of these technologies is clearly explained within the context of planning, negotiation, contracts, compliance, privacy, and network policies. The presentation of the intellectual underpinnings of Web services draws from several key disciplines such as databases, distributed computing, artificial intelligence, and multi-agent systems for techniques and formalisms. Ideas from these disciplines are united in the context of Web services and service-based applications. Featuring an accompanying website and teacher's manual that includes a complete set of transparencies for lectures, copies of open-source software for exercises and working implementations, and resources to conduct course projects, this book makes an excellent graduate textbook. It will also prove an invaluable reference and training tool for practitioners.

Author Biography

Munindar P. Singh is a Professor of computer Science at North Carolina State University From 1989 through 1995, he was with the Microelectronics and Computer Technology Corporation (better known as MCC). Melinda's research interests include multiagent systems and Web services. He focuses on applications in e-commerce and personal technologies. Munindar's 1994 book multiagent Systems, was published by Springer-Verlag. He coedited Readings in Agents, which was published by Morgan Kaufman in 1988. He has coedited several other books and authored several technical articles. Munindar's research has been recognized with awards and sponsorship from the National Science Foundation, DARPA, IBM, Cisco Systems, and Ericsson.

Munindar was the editor-in-chief of IEEE Internet Computing from 1990 to 2002 and continues to serve on its editorial board. He is a member of the editorial boards of the Journal of Autonomous Agents and Multiagent Systems and the Journal of Web Semantics. He serves on the steering committee for the IEEE Transactions on Mobile Computing.

Munindar received a B.Tech. in computer science and engineering from the Indian Institute of Technology, New Delhi, in 1986. He obtained a PhD in computer science from the University of Texas at Austin in 1993.

Michael N. Huhns is the NCR Professor of Computer Science and Engineering at the University of South Carolina, where he also directs the Center for information Technology. Previously he was a Senior Member of the Research Division at the Microelectronics and Computer Technology Corporation. Prior to joining MCC in 1985, he was an Associate Professor of Electrical and Computer Engineering at the University of South Carolina, where he also directed the Center for Machine Intelligence.

Mike is a member of Sigma Xi, Tau, Beta Pi, Eta Kappa Nu, ACM, IEEE, and AAAI. He is the author of over 180 technical papers in machine intelligence and an editor of the books Distributed Artificial Intelligence, Volumes I and II, and, with Munindar, Readings in Agents. His research interest are in the areas of multiagent systems, enterprise modeling and integration, and software engineering. From 1997 to 2003, he wrote a column Agents on the Web for IEEE Internet Computing.

Mike was an associate editor for IEEE Expert and the  ACM Transactions on Information Systems. he is an associate editor for the Journal of Autonomous Agents and Multiagent Systems. He is on the Editorial Boards of the International Journal on Intelligent and Cooperative Information Systems, the Journal of Intelligent Manufacturing, and IEEE Internet Computing. He was an advisor for the First International Conference on Multiagent Systems, 1995, and has been on the advisory boards for the International Workshops on Distributed Artificial Intelligence. He is a member of the board for the International Foundation for Multiagent Systems and the International Foundation on Cooperative Information Systems.

Mike received the BSEE degree in 1969 from the University of Michigan Ann Arbor, and the MS and PhD degrees in electrical engineering in 1971 and 1975, respectively, from the University of Southern California, Los Angeles.

Table of Contents

About the Authors xix
Preface xxi
Note to the Reader xxvii
Acknowledgments xxix
Figures
xxx
Tables
xxxv
Listings
xxxvi
I Basics
1(84)
Computing with Services
3(16)
Visions for the Web
3(3)
Semantic Web
4(1)
Peer-to-Peer Computing
4(1)
Processes and Protocols
5(1)
Pragmatic Web
5(1)
Precursors
6(1)
Open Environments
7(4)
Autonomy
8(1)
Heterogeneity
9(1)
Dynamism
10(1)
Challenges
10(1)
Services Introduced
11(1)
Using Services
12(1)
The Evolving Web
13(1)
Standards Bodies
14(1)
Overview of this Book
15(2)
Notes
17(1)
Exercises
17(2)
Basic Standards for Web Services
19(30)
XML
21(1)
Soap
21(5)
Processing
23(1)
Body and Header
23(1)
Faults
24(1)
Message Exchange
25(1)
Limitations
25(1)
WSDL
26(4)
Concepts
29(1)
Operation Types
29(1)
Creating WSDL Models
30(1)
Directory Services
30(1)
UDDI
31(11)
Conceptual Model
31(1)
UDDI APIs
32(10)
Notes
42(1)
Exercises
42(7)
Programming Web Services
49(12)
Representational State Transfer
49(1)
A Restful Example
50(4)
SOAP and Rest
54(1)
Developing and Using Web Services
54(3)
Programming WSDL
55(1)
Java for Web Services
55(2)
.NET
57(1)
Web Services Interoperability
57(1)
Notes
58(1)
Exercises
58(3)
Enterprise Architectures
61(10)
Enterprise Integration
61(1)
J2EE
62(2)
.NET
64(2)
Model-Driven Architecture
66(1)
Legacy Systems
67(1)
Notes
68(1)
Exercises
69(2)
Principles of Service-Oriented Computing
71(14)
Use Cases
71(5)
Intraenterprise Interoperation
72(1)
Interenterprise Interoperation
73(1)
Application Configuration
74(1)
Dynamic Selection
74(1)
Software Fault Tolerance
75(1)
Grid
75(1)
Utility Computing
75(1)
Software Development
76(1)
Service-Oriented Architectures
76(2)
Elements of Service-Oriented Architectures
76(1)
RPC versus Document Orientation
77(1)
Major Benefits of Service-Oriented Computing
78(1)
Composing Services
79(4)
Goals of Composition
80(1)
Challenges for Composition
80(3)
Spirit of the Approach
83(1)
Exercises
83(2)
II Description
85(92)
Modeling and Representation
87(32)
Modeling to Enable Interoperation
88(1)
Integration versus Interoperation
89(3)
Declarative versus Procedural Representations
89(1)
Interoperation
89(2)
Layered View
91(1)
Interoperation Trends
92(1)
Common Ontologies
92(9)
Ontologies: A Definition
93(1)
A Shared Virtual World
94(2)
Dimensions of Abstraction
96(1)
Value Maps
97(4)
Knowledge Representations
101(5)
Relationships Represented
102(1)
Frames versus Descriptions
103(1)
Ontology Language Features
104(2)
Elementary Algebra: Relations
106(1)
Hierarchies
107(1)
Taxonomy
107(1)
Meronomy
107(1)
Modeling Fundamentals
108(4)
Perspectives for Conceptualization
109(1)
Guidelines for Conceptualization
110(1)
Modularity and Extensibility
111(1)
UML as an Ontology Language
112(1)
Alternative Terminology
113(1)
Notes
113(1)
Exercises
113(6)
Resource Description Framework
119(18)
Motivation for RDF
120(1)
RDF Basics
121(2)
Resources
121(1)
Literals
122(1)
Properties
122(1)
Statements
122(1)
Key Primitives
123(2)
Containers and Collections
123(1)
Reification
124(1)
Information Model
125(1)
XML Syntax
125(2)
The N-Triples Notation
127(1)
Storing RDF
128(1)
RDF Schema
128(2)
Vocabularies in RDF Schema
130(1)
Notes
131(1)
Exercises
131(6)
Web Ontology Language
137(26)
Getting Started with OWL
137(3)
OWL Dialects
140(1)
OWL Constructors
140(8)
Classes
140(1)
Properties
141(2)
Class Expressions
143(5)
Collections
148(1)
OWL Axioms
148(4)
Individuals
148(1)
Data Values
149(1)
Classes
149(1)
Properties
150(1)
Elementary Algebra: Functions
151(1)
OWL Inference
152(2)
OWL Dialects Compared
154(1)
An OWL Example
155(3)
Expressiveness
158(2)
Tree Model Definitions
158(1)
Constraints among Individuals
159(1)
Specialized Properties
159(1)
Defeasible Concepts
160(1)
Notes
160(1)
Exercises
160(3)
Ontology Management
163(14)
Language-Based Representations
164(1)
Standard Ontologies
164(2)
Universal Business Language
164(1)
Cyc
165(1)
IEEE Standard Upper Ontology
166(1)
Standardization versus Semantic Reconciliation
166(1)
Consensus Ontologies
167(5)
Analysis
168(1)
Reconciling Ontologies
168(4)
Correctness versus Relevance
172(1)
Ontology Imports and Versioning
172(3)
Notes
175(1)
Exercises
175(2)
III Engagement
177(128)
Execution Models
179(14)
Basic Interaction Models
180(1)
Messaging
181(1)
CORBA
182(4)
Peer-to-Peer Computing
186(2)
Going Beyond Client-Server
187(1)
Models of P2P Computing
187(1)
Jini
188(1)
Grid Computing
189(2)
Notes
191(1)
Exercises
191(2)
Transaction Concepts
193(32)
Transactions
193(14)
ACID Properties
195(1)
Schedules
196(4)
Locking
200(2)
Distributed Transactions
202(5)
Transactions over Composed Services
207(7)
Architecture for Composed Services
207(2)
Properties of Composed Transactions
209(1)
Difficulty with Compositional Serializability
210(1)
Achieving Compositional Serializability
211(3)
Limitations of Traditional Transactions
214(1)
Relaxing Serializability
215(1)
Extended Transaction Models
216(3)
Sagas
218(1)
Flex Transactions
218(1)
DOM Transactions
219(1)
Notes
219(1)
Exercises
219(6)
Coordination Frameworks for Web Services
225(20)
WSCL: Web Services Conversation Language
226(5)
WSCI: Web Service Choreography Interface
231(3)
WS-Coordination: Specifying Coordination
234(6)
Coordination Service
234(3)
Activation Service
237(1)
Registration Service
238(2)
Web Service Transaction Types
240(2)
BTP: Business Transaction Protocol
242(2)
Notes
244(1)
Exercises
244(1)
Process Specifications
245(36)
Processes
245(2)
Describing Dynamics with UML
247(1)
Workflows
247(9)
Exceptions
249(1)
Workflow Interoperability
250(1)
A Metamodel for Workflow
251(1)
Interoperation
252(3)
State of the Art
255(1)
Challenges Facing Workflow Technology
255(1)
Business Process Languages
256(18)
BPEL4WS
256(5)
BPML
261(1)
ebXML
262(10)
RosettaNet
272(2)
The Process Specification Language
274(3)
Notes
277(1)
Exercises
278(3)
Formal Specification and Enactment
281(24)
Scheduling with Dependencies
282(1)
Specifying Service Composition
283(5)
Coordination Relationships
286(1)
Example Scenario
287(1)
Residuation
288(1)
Symbolic Calculation of Residuals
289(2)
Distributed Scheduling
291(4)
Temporal Logic for Internal Reasoning
291(2)
Deriving Guards from Specifications
293(2)
Scheduling with Guards
295(1)
Formalization
295(5)
Evaluating Guards
296(1)
Simplification
297(1)
Formalizing Event Classes
298(2)
Discussion
300(1)
Notes
301(1)
Exercises
301(4)
IV Collaboration
305(94)
Agents
307(34)
Agents Introduced
307(1)
Agent Environments
308(2)
Agent Descriptions
310(6)
Reasoning
311(1)
Internal Architectures
312(4)
Abstractions for Composition
316(1)
Describing Compositions
317(9)
Representing and Reasoning about Action
318(1)
OWL-S
318(8)
Composition as Planning
326(1)
Rules
327(9)
Applying Rules
328(1)
Kinds of Rules
328(4)
Jess
332(1)
SWRL: Semantic Web Rule Language
333(1)
Complexity and Expressiveness
334(1)
Negation, Nonmonotonicity, Priorities
335(1)
Notes
336(1)
Exercises
337(4)
Multiagent Systems
341(20)
Applicability in Service-Based Systems
342(1)
Multiagent Architecture
343(1)
Agent Types
344(3)
Life Cycle Management for Agents and Multiagent Systems
347(2)
Consistency Maintenance
349(5)
Truth Maintenance Concepts
350(1)
Multiagent Truth Maintenance
351(1)
Consistency Maintenance for a Long-Lived Service
352(1)
Conflicts among Agents
352(2)
Modeling Other Agents
354(2)
Cognitive Concepts
356(1)
Applying the Cognitive Concepts
357(1)
Notes
357(1)
Exercises
358(3)
Organizations
361(20)
Contracts
362(5)
Legal Concepts
362(1)
Deontic Logic
363(1)
Commitments
364(3)
Spheres of Commitment
367(3)
Teams of Services
368(1)
Virtual Enterprises as Teams
368(2)
Achieving Collaboration via Conventions
370(1)
Policies
371(1)
Negotiation
372(7)
Negotiation Protocols
372(2)
Negotiation Fundamentals
374(3)
Requirements for a Negotiation Language
377(2)
Exercises
379(2)
Communication
381(18)
Agent Communication Languages
381(4)
Speech Act Theory
382(1)
Semantics
383(1)
Interaction Patterns
384(1)
Combining ACLs with Web Services
384(1)
Contract Net Protocol
385(3)
Business Protocols
388(6)
Compiling Business Protocols
390(1)
Compliance with Business Protocols
391(3)
Notes
394(1)
Exercises
395(4)
V Selection
399(32)
Semantic Service Selection
401(8)
Semantic Matchmaking
401(3)
Applying Ontologies
402(2)
Requirements for an Advertising and Matchmaking Language
404(1)
Selecting Services
404(1)
SoCom Matchmaking
404(2)
Exercises
406(3)
Social Service Selection
409(12)
Reputation Mechanisms
410(1)
Recommender Techniques
411(2)
Model-Based Approaches
411(1)
Memory-Based Approaches
411(1)
Challenges for Recommender Approaches
412(1)
Products versus Service Recommendations
412(1)
Referrals
413(2)
Adaptive Treatment of Referrals
413(1)
Advantages of Referrals
414(1)
Evaluation
415(1)
Social Mechanism for Trust
415(3)
Empirical Basis
415(1)
Local Belief Ratings
416(1)
Combining Evidence
417(1)
Gathering Opinions
418(1)
Identity
418(1)
Exercises
418(3)
Economic Service Selection
421(10)
Market Environments
422(2)
Auctions for Services
424(4)
Auction Types
424(1)
Online Auctions
424(2)
Agent Economies
426(2)
Exercises
428(3)
VI Engineering
431(54)
Building SOC Applications
433(30)
Elements of SOC Design
433(2)
Quality of Service
435(1)
How to Create an Ontology
436(5)
Ontology Construction
437(2)
Ontology Guidelines and Conventions
439(2)
How to Create a Process Model
441(1)
How to Design Agent-Based Systems
441(4)
Engineering Cooperation
442(1)
Diversity versus Complexity
443(2)
How to Construct Agent-Based Systems
445(1)
How to Engineer Composed Services
445(2)
Exception Handling
447(3)
Knowledge Management Applications
450(2)
Agent-Based Knowledge Network
451(1)
Intranet Portals
452(1)
Communities of Practice
452(1)
eBusiness Applications
452(5)
Business Models for eBusiness Applications
454(1)
eMarketplace Architectural Requirements
455(2)
Application to Supply-Chain Automation
457(1)
Exercises
457(6)
Service Management
463(12)
Enterprise Resource Planning
463(2)
WSMF: Web Services Management Framework
465(1)
WSDM: Web Services Distributed Management
465(2)
Contingency Plans for Service Failures
466(1)
Security and Authentication
467(1)
Features and Benefits of WSDM Centralization
467(1)
Metadata Protocols
467(1)
Scalability
467(3)
Scalability in Practice
468(1)
Scaling Infrastructure Services for Agents
469(1)
Scalability Experiments
469(1)
Long-Lived Adaptable Agents
470(1)
Robust Services via Agent-Based Redundancy
470(3)
Architecture and Process
471(1)
Experimental Results
472(1)
Exercises
473(2)
Security
475(10)
Securing Web Services
475(2)
Nonrepudiation
476(1)
Endorsement
477(1)
Certificates
477(1)
SAML and WS-Security
477(2)
WS-Trust
479(1)
XACML
479(2)
Reasoning about Security Policies
481(1)
Privacy
481(1)
Exercises
482(3)
VII Directions
485(12)
Challenges and Extensions
487(10)
Trust
487(1)
Ethics
488(3)
Machine Ethics
490(1)
Applying Ethics
491(1)
Ethical Violations
491(1)
Coherence
491(1)
Benevolence
492(1)
Network Architecture
493(1)
Managing Privacy
494(1)
Key Challenges and Recommendations
495(2)
VIII Appendices
497(22)
XML and XML Schema
499(16)
Why XML?
499(2)
XML
501(1)
XML and Vocabularies
502(1)
Transforming XML
503(1)
Well-Formedness
504(1)
Namespaces and Qualified Names
505(1)
Using Entities
506(1)
XML Extensions
507(1)
XML Schema
507(3)
Limitations
510(1)
Notes
510(1)
Exercises
511(4)
URI, URN, URL, and UUID
515(2)
XML Namespace Abbreviations
517(2)
Glossary 519(4)
Bibliography 523(10)
Index 533

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Rewards Program