throbber
US007945860B2
`
`(12) United States Patent
`Vambenepe et al.
`
`(10) Patent N0.:
`(45) Date of Patent:
`
`US 7,945,860 B2
`May 17, 2011
`
`(54)
`
`(75)
`
`SYSTEMS AND METHODS FOR MANAGING
`CONVERSATIONS BETWEEN
`INFORMATION TECHNOLOGY RESOURCES
`
`Inventors: Guillaume N. Vambenepe, Mountain
`View, CA (US); Nicolas Catania, Palo
`Alto, CA (US); Bryan P. Murray,
`Duvall, WA (US); M. Homayoun
`Pourheidari, Mountain View, CA (US)
`
`(73)
`
`Assignee: Hewlett-Packard Development
`Company, L.P., Houston, TX (US)
`
`Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 2732 days.
`
`(21)
`
`(22)
`
`(65)
`
`(51)
`
`(52)
`(58)
`
`Appl. No.: 10/438,576
`
`Filed:
`
`May 14, 2003
`
`Prior Publication Data
`
`US 2004/0230650 A1
`
`Nov. 18, 2004
`
`Int. Cl.
`(2006.01)
`G06F 3/048
`U.S. Cl. .................................... ..
`
`715/744
`
`Field of Classi?cation Search ................ .. 709/223,
`709/224, 204; 707/10, 103 R; 705/7; 719/328;
`717/101; 715/744, 735, 765
`See application ?le for complete search history.
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`6,434,568 B1* 8/2002 BoWman-Amuah .... .. 707/103 R
`7,020,697 B1 *
`3/2006 Goodman et a1. .......... .. 709/223
`
`2003/0126136 A1* 7/2003 Omoigui . . . . . . . . . . . .
`
`. . . .. 707/10
`
`705/7
`2004/0064351 A1* 4/2004 Mikurak
`709/224
`2004/0103186 A1* 5/2004 Casati et a1. ..... ..
`709/204
`2004/0230650 A1* 11/2004 Vambenepe et a1.
`717/101
`2004/0230943 A1* 11/2004 Pourheidari et a1.
`2004/0237094 A1* 11/2004 Vambenepe et a1. ........ .. 719/328
`* cited by examiner
`
`Primary Examiner * Le Luu
`
`ABSTRACT
`(57)
`A system for managing a conversation includes one or more
`interfaces con?gured to provide management information
`about the conversation to a manager. The interface can be
`con?gured to provide information regarding a resource such
`as a Web service that contains the conversation. Information
`regarding the conversation that may be made available to the
`manager includes the number of failed messages processed
`by the conversation; the number of successful messages pro
`cessed by the conversation; the total number of messages
`processed by the conversation; the number of other resources
`participating in the conversation; the identity of other
`resources participating in the conversation; an identi?er of the
`conversation; the last mes sage received; the last fault mes sage
`received; and an identi?er of the resource that contains the
`conversation.
`
`35 Claims, 4 Drawing Sheets
`
`/ 160
`
`/ 162
`Conversation
`
`1_0_4
`
`400
`/
`
`Conversation Managed Object £51
`Conversation lmerfocem
`71 I
`
`116
`Conversation Interface Collection
`
`Conversation Monitoring Interface
`Other Parties
`Global Conversation Id
`Last Message
`Last Fault Message
`Other Services
`Numb?‘ of {Domes
`Conversation Discovery interface
`Containing Service
`Conversation Performance interface
`Failed Message Count
`Success Message Count
`Total Message Count
`Conversation Control interface
`Kill
`
`Event Types
`incorrect Message Received
`Participant Failure
`Remote Failure
`Local Failure
`
`<—>
`
`[
`
`[
`
`Managed Object mermcas]
`
`—
`
`1 2|
`*
`
`Manager
`702
`“—
`
`A
`
`1
`R
`eques s
`
`Responses
`
`‘
`
`'1 64
`7
`Conversation Managed Object ?
`
`Conversation lnterfacelsl 1M
`n
`d ob-eci Interface 8
`4 4
`Mo age
`1
`( 1 _—
`conversq?on
`1 6
`_
`
`166
`
`Discovery
`Agencies
`@ Interface
`Descriptions
`
`71 8
`
`ServiceNow, Inc.'s Exhibit 1003
`
`001
`
`

`

`U.S. Patent
`
`May 17, 2011
`
`Sheet 1 of 4
`
`US 7,945,860 B2
`
`OD»
`
`
`
`
`
`8:00:0008:02:0II:020>.:||00
`
`
`
`22000828:029:00
`
`88a..020
`
`
`
`
`
`000820282828:029:00220008260.50000082
`
`
`
`
`
`
`
`
`
`009002:30:002
`
`
`
`00080.250288000”.aw
`
`
`
`
`
`0_8:029:006090000:9).
`
`009028:808:029:00
`
`
`
`
`
`E30000030.268»
`
`
`
`
`
`000292290858:029:00
`
`0E0:00200252
`
`m00_>:0m0:5
`
`
`
`
`
`80.500000828:029:00
`
`
`
`00_>:0w022980
`
`
`
`22000220228:029:00
`
`
`
`
`
`0008220082020:8:029:00
`
`
`
`
`
`E300000802$0008
`
`
`
`
`
`E30000030200:8
`
`8:029:00
`
`
`
`
`
`220002202220050000082
`
`___v_
`
`803E05
`
` 05:808:8:
`
`
`
`002000200000280802>20>002Q
`
`
`000:0:a0520“.E09028:m0_0C0©<
`
`05:0:00980202800
`
`«90E
`
`002
`
`ServiceNow, |nc.'s Exhibit 1003
`
`ServiceNow, Inc.'s Exhibit 1003
`
`002
`
`
`
`
`
`
`
`
`
`

`

`US. Patent
`
`May 17, 2011
`
`Sheet 2 of4
`
`US 7,945,860 B2
`
`‘168
`Managed Objectf m
`
`Managed Object
`Interfaces
`@
`
`“
`"
`
`/“ 760
`
`Manager
`102
`—
`
`Discovery
`Agencies
`420
`__
`
`466
`
`448
`
`Interface
`Descrjp?ons
`
`152
`Manaaed Object Interface Collection
`
`Types
`Notification
`Relationship
`Managed Object
`FaultDetail
`Error
`
`Events
`RelationshipsChanged
`Status Values
`Operational
`Failed
`Inactive
`Unknown
`Managed Object Identity Interface
`ManagementUri
`Managed Object Configuration Interface
`Name
`Resource Version
`Type
`ManagedObjectVersion
`Description
`CreatedOn
`Owner
`SupportedEventTypes
`Vendor
`SupportedRelations
`Managed Object Monitoring Interface
`Status
`Managed Object Discovery interface
`Relationships
`GetSpecificRelationships
`Managed Object Control Interface
`Status
`Name
`Managed Object Collection Interface
`Get
`Set
`Perform
`Members
`Event Push Interface
`Push Subscribe
`Push Cancel Subscription
`EventPull Interface
`Pull Subscribe
`Pull Cancel Subscription
`Get Events Since ID
`Get Events Since Date
`Get Events Range By Date
`Event Callback Interface
`Notify
`
`FIG. ’I B
`
`ServiceNow, Inc.'s Exhibit 1003
`
`003
`
`

`

`US. Patent
`
`May 17, 2011
`
`Sheet 3 of4
`
`US 7,945,860 B2
`
`Emcig
`
`homwwooi
`
`g
`
`ooEww
`9:5
`
`M
`
`QM
`
`:8 058
`
`SN cozoew>coo
`
`@9050
`
`co=oN=oc5o
`
`9.: Co
`
`@5690
`8.2%
`

`
`
`
`Q Q05 @EEO
`
`NS
`
`kwmocoi
`
`N .QI
`
`290020
`
`Q9‘
`
`36cm?‘
`@0965
`
`wcozatowmo
`
`ServiceNow, Inc.'s Exhibit 1003
`
`004
`
`

`

`US. Patent
`
`May 17, 2011
`
`Sheet 4 of4
`
`US 7,945,860 B2
`
`Online Store
`
`2_06
`
`Online Ordering Service M
`
`Conversation Managed Object 302
`
`Conversation lnterface[s] Q5
`Managed Object lnterface(s) 3i
`
`Conversation
`
`2M
`
`Authentication Service Object
`
`4
`
`;
`
`E
`
`A
`
`Manager
`E
`
`V
`
`Payment m <---_>
`
`Billing Service
`
`212
`
`I
`
`Conversation Managed Object @
`
`Conversation |nterface(s] m
`Managed Object lnterface(s] m
`
`Conversation
`
`Z19
`
`FIG. 3
`
`Discovery
`Agencies
`L22
`
`4 '18
`
`Interface
`Descriptions
`
`ServiceNow, Inc.'s Exhibit 1003
`
`005
`
`

`

`US 7,945,860 B2
`
`1
`SYSTEMS AND METHODS FOR MANAGING
`CONVERSATIONS BETWEEN
`INFORMATION TECHNOLOGY RESOURCES
`
`RELATED APPLICATIONS
`
`The disclosed system and operating method are related to
`subject matter disclosed in the following co-pending patent
`applications that are incorporated by reference herein in their
`entirety: (1) US. patent application Ser. No. 10/438,716
`entitled “System and Method for Managing Web Services”;
`and (2) US. patent application Ser. No. 10/438,662 entitled
`“System and Method for Managing Information Technology
`Resources”.
`
`COMPUTER PROGRAM LISTING APPENDIX
`
`This speci?cation includesAppendixA (consisting of three
`text ?les) on CD-ROM, Which contains interface description
`documents that can be used With some embodiments of the
`invention. The ?les on the compact discs are as folloWs:
`1. Conversation Interfaces Description.Wsdl (12 KB cre
`ated May 14, 2003);
`2. Event Interfaces Description.Wsdl (10 KB created May
`14, 2003); and
`3. Managed Object Interfaces Description (22 KB created
`May 14, 2003).
`Appendix A is incorporated herein by reference.
`
`BACKGROUND
`
`20
`
`25
`
`30
`
`2
`gration (UDDI) registry, provides a de?nition of the interface
`to a Web service and identi?es service providers in a netWork.
`The WSDL speci?cation is an XML-based language used to
`de?ne Web services and describe hoW to access them. An
`application trying to use a particular Web Service uses WSDL
`to ?nd the location of the Web service, the function calls
`available, and the format that the client must folloW to access
`the Web service. Therefore, the client ?rst obtains a copy of
`the WSDL ?le and then uses the information in this ?le to
`format a request, often using SOAP.
`The UDDI registry supports Web services by providing a
`place for a company to register its business and the Web
`services that it offers. Users that need a Web service can use
`this registry to ?nd a business that provides the service.
`Web services are highly extensible, interact in a loosely
`coupled manner, and are deployed and utiliZed via various
`standard speci?cations such as SOAP, WSDL, and UDDI. In
`particular, Web services alloW businesses to create processes
`that span multiple enterprises and de?ne netWorks based on
`business partnerships. Enterprises are adopting Web services
`technology to address their business integration needs, but
`currently there is no standard frameWork for managing Web
`services.
`Web services have some characteristics that make them
`especially challenging to manage. One characteristic is that
`Web services Work together to form a distributed application
`that may extend across an enterprise or even a WorldWide
`netWork such as the Internet. The challenge is that there are
`many vieWpoints from Which to manage an application. The
`management challenges With a distributed application
`involve crossing boundaries of control and management
`domains While maintaining a uni?ed, yet customized vieW for
`the distributed application. For instance, an IT manager may
`be interested in managing all of the services in a domain,
`Which includes several computer systems. The vantage point
`is all Web services on a given computer system. In another
`instance, a process manager may be interested in all of the
`Web services that Work together to drive a process to comple
`tion. This may involve Web services throughout an enterprise,
`or possibly Web services hosted by other companies. Still
`further, a business manager may be interested in all of the
`service agreements With the company regarding Web services
`hosted by other companies. The business manager Will be
`interested in making sure the company meets its service
`agreements With others. Additionally, the service providers’
`performance in ful?lling the service agreements Will be
`tracked to provide information for making future business
`decisions.
`Another characteristic that presents management chal
`lenges is that Web services have been designed to be exten
`sible at all levels. The SOAP protocol standard provides a
`very ?exible mechanism to extend the processing of mes
`sages by adding headers to the message. Additionally, the
`body of the message may be any XML document that is
`understood by the Web service. The WSDL and XML
`schema description standards provide a means to de?ne arbi
`trary data types, and to extend or restrict previously de?ned
`data types. An XML-schema is a document that describes the
`valid format of an XML data-set, such as elements that are
`(and are not) alloWed at any point; What the attributes for any
`element may be; and the number of occurrences of elements.
`It is also possible for a Web service to provide several
`interfaces into its functionality. There are also discovery stan
`dards that provide their oWn extensibility mechanisms. The
`management challenges With such an extensible system
`include determining the type of a managed object and hoW to
`communicate With the object.
`
`35
`
`40
`
`45
`
`The term Web services describes an approach to distributed
`computing in Which interactions are carried out through the
`exchange of eXtensible Markup Language @(ML) messages.
`Web services can perform any task that can be described and
`contained Within one or more modules of code. For example,
`functions such as language translation or currency conver
`sion, performing calculations for medical claims processing,
`and handling certain aspects of travel planning can be imple
`mented in a Web service. Essentially any transaction or bit of
`business logic can become a Web service if it can be accessed
`and used by another system over a netWork such as the Inter
`net.
`A Web service is a softWare system identi?ed by a Univer
`sal Resource Identi?er (URI) Whose public interfaces and
`bindings are typically de?ned and described in an XML docu
`ment. The description can be discovered by other softWare
`systems. These systems may then interact With the Web ser
`vice in a manner prescribed by its de?nition, using XML
`based messages conveyed by Internet protocols.
`50
`The Web services architecture is based upon the interac
`tions betWeen three primary roles: service provider, service
`registry, and service requestor. These roles interact using
`publish, ?nd, bind and other operations. The service provider
`is the business that provides access to the Web service and
`optionally publishes the service description in a service reg
`istry. The service requestor ?nds the service description
`optionally in a service registry and uses the information in the
`description to bind to a service.
`Web services typically send XML messages formatted in
`accordance With the Simple Object Access Protocol (SOAP)
`speci?cation. The SOAP speci?cation is a universally agreed
`upon protocol that uses XML and optionally HTTP together
`to invoke functions exposed in Web services.
`The XML messages are described using the Web Services
`Description Language (WSDL) speci?cation, Which, along
`With the optional Universal Description Discovery and Inte
`
`55
`
`60
`
`65
`
`ServiceNow, Inc.'s Exhibit 1003
`
`006
`
`

`

`US 7,945,860 B2
`
`3
`The UDDI standard allows WSDL documents to be dis
`covered at run time. This discovery mechanism is not limited
`to use only Within an enterprise, but is available Wherever the
`Web service is available over a network, such as the Internet.
`Furthermore, it is possible to discover not only the basic
`capabilities of a Web service, but also the advanced capabili
`ties that are speci?ed by these standards. One management
`challenge With such a powerful discovery mechanism is to
`ensure that provided services are protected With the proper
`type of security. Another management challenge is identify
`ing users accessing the provided Web services. Yet another
`more complex management challenge is that all appropriate
`service agreements are not only discoverable but also
`enforced.
`SOAP and UDDI provide information about the Web ser
`vices as they use the applications, but facilities are lacking
`that provide critical information on the state of the Web ser
`vice as it is executing, and alloW messages sent and receieved
`by the Web service to be managed.
`
`SUMMARY
`
`In one embodiment, a system for managing a conversation
`in a Web service includes a conversation managed object
`executable on a computer processor. The conversation man
`aged object includes one or more interfaces con?gured to
`provide management information about the conversation to a
`manager. The interface is con?gured to provide information
`regarding the Web service that contains the conversation.
`In another embodiment, a system capable of monitoring
`messages betWeen a ?rst resource and a second resource
`includes a computer processor con?gured to communicate
`With the ?rst resource. The computer processor includes
`executable instructions operable to: discover Whether a con
`versation has been established betWeen the ?rst resource and
`the second resource; end the conversation; and request infor
`mation regarding the conversation. The information about the
`conversation that is available via the interface includes, for
`example, the number of failed messages processed by the
`conversation; the number of successful messages processed
`by the conversation; the total number of messages processed
`by the conversation; the number of other resources participat
`ing in the conversation; the identity of other resources par
`ticipating in the conversation; an identi?er of the conversa
`tion; the last message received; the last fault message
`received; and/ or an identi?er of the ?rst resource that contains
`the conversation.
`In a further embodiment, a computer program product
`comprises a conversation interface, and a managed object
`interface associated With the conversation interface. The con
`versation interface includes information for monitoring mes
`sages in a conversation, including the number of failed mes
`sages; the number of successful messages; the total number of
`messages; the identity of services participating in the conver
`sation; the number of services participating in the conversa
`tion; an identi?er of the conversation; the last message
`received by the managed service; the last fault message
`received by the managed service; and/or an identi?er of the
`managed service that contains the conversation interface.
`In a still further embodiment, a method for managing a
`conversation for a Web service includes creating a conversa
`tion object representing the conversation, exposing manage
`ment capabilities for the conversation via a plurality of inter
`faces; and alloWing a manager to subscribe With the
`conversation object to receive noti?cation of events regarding
`the conversation.
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`Various other features and advantages of embodiments of
`the invention Will be more fully understood upon consider
`ation of the detailed description beloW, taken together With
`the accompanying ?gures.
`
`BRIEF DESCRIPTION OF THE FIGURES
`
`FIG. 1A is a diagram of components included in an
`embodiment of a conversation management system and a
`conversation interface collection.
`FIG. 1B is a diagram of components included in an
`embodiment of a managed object interface collection for the
`conversation management system of FIG. 1A.
`FIG. 2 shoWs a diagram of components included in an
`embodiment of an online shopping service system that can
`utiliZe the conversation management system of FIG. 1A.
`FIG. 3 shoWs a block diagram of components in online
`shopping service system of FIG. 2 con?gured With conversa
`tion and managed object interfaces.
`
`DETAILED DESCRIPTION OF THE FIGURES
`
`Referring noW to FIG. 1A, an embodiment of a conversa
`tion management system 100 that alloWs manager 102 to
`monitor and control one or more conversations 104, 106 is
`shoWn. Conversation managed objects 108, 110 represent the
`management features of resource(s) that conduct conversa
`tions 104, 106. Interfaces in one or more categories can be
`included in conversation interfaces 112, 114 for each conver
`sation managed object 108, 110. Conversation interfaces 112,
`114 alloW manager 102 to access information regarding the
`state of messages related to corresponding conversations 104,
`106.
`In some embodiments, management capabilities provided
`via conversation interfaces 112, 114 include attributes that
`represent information about the messages; operations to sup
`port the management of conversations 104, 106; and events
`representing information, exceptions, and state changes that
`can be reported by conversation managed objects 108, 110 to
`manager 102. Conversation managed objects 108, 110 can be
`implemented as part of the implementation for conversations
`104, 106, such as shoWn for conversation managed object
`108, or in a layer external to conversations 104, 106, as shoWn
`for conversation managed object 110.
`The term “conversation” is a set of related messages sent
`and received by a particular conversation. Conversations 104,
`106 are typically invoked by other resources, such as Web
`services (not shoWn). The messages received by a particular
`conversation 104, 106 may be sent by more than one other
`conversation, and a particularresource, such as a Web service,
`can invoke multiple conversations that may or may not be
`related to the resource’s other conversations.
`Conversations 104, 106 populate data ?elds in conversa
`tion interfaces 112, 114 that are available to manager 102.
`Further, conversations 104, 106 receive information and con
`trol parameters from manager 102 via conversations inter
`faces 112, 114.
`In some embodiments, conversations 104, 106 folloW rules
`described by the Web Services Conversation Language
`(WSCL), Which alloWs conversations 104, 106 to be de?ned
`in XML schema, and messages to be formatted according to
`XML speci?cations. WSCL speci?es the XML messages to
`be exchanged, and the alloWed sequence of the message
`exchanges. WSCL conversation de?nitions are XML docu
`ments that can be interpreted by Web services infrastructures
`and development tools. Other suitable programming lan
`guages can be utiliZed to implement conversations 104, 106.
`
`ServiceNow, Inc.'s Exhibit 1003
`
`007
`
`

`

`US 7,945,860 B2
`
`25
`
`5
`In some embodiments, each collection of conversation
`interfaces 112, 114 supports various categories of manage
`ment capabilities including monitoring, discovery, control,
`performance, con?guration, and security. Other interfaces
`that support additional conversation management capabilities
`can be utiliZed, in addition to, or instead of, conversation
`interfaces 112, 114.
`An embodiment of conversation interfaces 114 is repre
`sented in FIG. 1A as Conversation Interface Collection 116.
`Each interface in Conversation Interface Collection 116
`includes at least one management feature that can be used by
`manager 102 to monitor and/or control the exchange mes
`sages betWeen conversations 104 and 106. Conversation
`interfaces 112, 114 can include additional, feWer, or the same
`features shoWn in the embodiment of Conversation Interface
`Collection 116 in FIG. 1A.
`In the embodiment shoWn, Conversation Interface Collec
`tion 116 includes a Conversation Monitoring Interface, a
`Conversation Discovery Interface, a Conversation Perfor
`mance Interface, and a Conversation Control Interface. Con
`versation interfaces 112, 114 can be con?gured to support any
`one, a group, or all of the interfaces in Conversation Interface
`Collection 116.
`Further, in some embodiments, manager 102 can discover
`interface descriptions 118 for conversation interfaces 112,
`114 via a suitable discovery agency 120, such as UDDI or
`other suitable method. Interface descriptions 118 can be con
`?gured to reveal selected management information to man
`ager 102 by exposing only selected interfaces in conversation
`interfaces 112, 114. For example, a description for conversa
`tion interfaces 114 may expose only the Conversation Moni
`toring Interface to manager 102.
`Moreover, attributes in Conversation Interface Collection
`116 can support types of access by other objects, such as
`read-only and read/Write. When description documents 118
`are implemented in WSDL, conversation interfaces 112, 114
`are mapped to ports, and different operations are created
`based on the access policies of the attributes, as further
`described herein. Conversation Interface Collection 116 can
`also be extended to provide further management capabilities
`for manager 102, as further described herein.
`In the embodiment shoWn in FIG. 1A, Conversation Moni
`toring Interface includes attributes for Other Parties, Global
`Conversation ID, Last Message, Last Fault message, Other
`Services, and Number of Parties.
`The Other Parties attribute returns a list of other conversa
`tion managed objects participating in the corresponding con
`versation. For example, the Other Parties attribute in conver
`sation managed object 110 returns an identi?er for
`conversation managed object 108, and vice versa.
`The Global Conversation ID attribute returns a globally
`unique identi?er associated With conversation 106. The list of
`managed objects returned by the Other Parties attribute above
`return the same value for the Global Conversation ID. A
`55
`different identi?er indicates a different managed object. An
`example of a suitable identi?er is a Universal Resource Iden
`ti?er (URI) that can be used to identify resources in a domain
`including documents, images, doWnloadable ?les, services,
`electronic mailboxes, and other resources. Other suitable
`identi?ers can be utiliZed.
`The Last Message Received attribute represents the last
`message received by conversation 106.
`The Last Message Sent attribute represents the last mes
`sage sent by conversation 106.
`The Last Fault Message Received attribute represents the
`last fault message received by conversation 106.
`
`45
`
`50
`
`60
`
`65
`
`20
`
`30
`
`35
`
`40
`
`6
`The Last Fault Message Sent attribute represents the last
`fault message sent by conversation 106.
`The Other Services attribute represents a list of Service
`managed objects, Which represent the other Web services or
`resources that are participating in conversation 106. The list
`returned represents the identities of the Web services or other
`resources that are parties to conversation 106.
`The Number Of Parties attribute represents the number of
`other Web services or other resources involved in the conver
`sation.
`Conversation Discovery Interface can include a Contain
`ing Service attribute, Which returns a globally unique identi
`?er for the resource, such as a Web service that contains
`conversation 106.
`Conversation Performance Interface can include attributes
`such as Failed Message Count, Success Message Count, and
`Total Message Count. Failed Message Count returns the num
`ber of failed messages processed by conversation 106. Suc
`cess Message Count returns the number of successful mes
`sages processed by conversation 106. Total Message Count
`returns the total number of messages processed by conversa
`tion 106.
`Conversation Control Interface can include a Kill opera
`tion to terminate conversation 106. Other conversation(s) 104
`to Which the killed conversation 106 is related may continue
`to exchange messages.
`The embodiment of Conversation Interface Collection 116
`shoWn also includes Event Types, such as Incorrect Message
`Received, Participant Failure, Remote Failure, and Local
`Failure. An Event represents a change in the state of a corre
`sponding object, for example, conversation 106. Manager
`102 can register to receive noti?cation of one or more of the
`Event Types available in Conversation Interface Collection
`116.
`In the embodiment shoWn, Incorrect Message Received
`event indicates that an incorrect message Was received by
`conversation 106. Participant Failure event indicates that
`either a message could not be sent to one of the participants in
`conversation 106, or an expected response Was never received
`from one of the other participants. Remote Failure event
`indicates that one of the remote participants in conversation
`106 sent an unexpected fault message. Local Failure event
`indicates that a fault happened While processing a message for
`conversation 106.
`The preceding types, operations, and attributes are
`examples of features that can be included in Conversation
`Interface Collection 116. Other features can be implemented
`for Conversation Interface Collection 116 in addition to, or
`instead of, the preceding features. Further, the names for the
`interfaces, attributes, events, operations and other interface
`features disclosed herein are provided for purposes of illus
`tration only. The same names can be used to represent differ
`ent features, and other names can be implemented to repre
`sent features disclosed herein.
`FIG. 1A also shoWs managed object interfaces 122 asso
`ciated With conversation managed object 108, and managed
`object interfaces 124 associated With conversation managed
`object 110. Referring to FIG. 1B, an embodiment of managed
`object 148 With managed object interfaces 150 is shoWn.
`Managed object 148 is a management representation of a
`resource. For example, conversation managed objects 108,
`110 in FIG. 1A can each be considered managed objects 148.
`Managed object 148 implements managed object inter
`faces 150 to provide a common set of basic management
`capabilities to monitor and/ or control the underlying resource
`(s) represented by managed object 148 through various fea
`tures such as attributes, operations, and event noti?cations.
`
`ServiceNow, Inc.'s Exhibit 1003
`
`008
`
`

`

`US 7,945,860 B2
`
`7
`Various implementations of managed object interfaces 150
`can hide some or all of the management capabilities from
`managers 102 that are not authorized to access speci?c man
`agement capabilities.
`Each managed object 148 inherits managed object inter
`faces 150, Which can be implemented as part of each managed
`object 148, or in another layer outside of managed object 148.
`Each managed object 148 can also include one or more addi
`tional interfaces, based on the associated resources, that
`expose relevant information to manager 102. For example,
`conversation managed objects 108, 110 implement conversa
`tion interfaces 112, 114, as Well as managed object interfaces
`122, 124 (FIG. 1A).
`Interface descriptions 118 for managed object interfaces
`150 can be used in some implementations to expose manage
`ment capabilities available for managed objects 148 to man
`ager 102. Interface descriptions 118 can alloW manager 102 to
`determine the objects that can be managed, the attributes, and
`relationships and topology of related managed objects 148.
`Managed object interfaces 150 can alloW manager 102 to
`access information to monitor, audit, and control various
`aspects of managed objects 148, and to register to receive
`event noti?cations.
`The embodiment of Managed Object Interface Collection
`152 shoWn in FIG. 1B includes, among others, various event,
`types, attributes, operations, and status values that can be
`implemented in managed object interfaces 150.
`Managed Object Con?guration Interface includes Sup
`ported Relations, Which is a read-only attribute that returns a
`list of the relations supported by managed object 148. Any of
`the relations in the list may be used in relationships managed
`object 148 has With other managed objects. For example,
`managed object 148 can support relations such as Contains,
`Contained In, Depends On, Depended Upon, and Corre
`sponds To. Other suitable relations can be utiliZed. Further
`information regarding Managed objects 148 and managed
`object interfaces 150 is provided in the disclosure entitled
`“System and Method for Managing Web Services”, US.
`patent application Ser. No. l0/438,7 l 6, Which is incorporated
`herein by reference.
`Since conversation 106 can correspond to one or more
`conversations, the relation CorrespondsTo indicates that the
`related conversations have the same global unique ID. For
`example, if conversation 106 contained by a ?rst service
`corresponds to conversation 104 hosted by second service,
`then all the messages that are included in conversation 106
`and that either originate from or are sent to the second service
`are also included in conversation 104. If there are no such
`messages common to conversation 106 and conversation 104,
`then there are some other conversations that correspond to
`conversations 106 and 104 that provide a string of corre
`sponding conversations in Which each link of the string is
`made of a correspondence relationship that includes at least
`one common message. Other features that can be included in
`Managed Object Interface Collection 152 are described in the
`disclosure entitled “System and Method for Managing Infor
`mation Technology Resources,” US. patent application Ser.
`No. l0/438,662, Which is incorporated herein by reference.
`Referring to FIGS. 1A and 1B, in some embodiments,
`managed object interfaces 150 and conversation interfaces
`112, 114 are exposed to manager 102 through interface
`descriptions 118. Interface descriptions 118 can provide a
`framework for creating management services for all managed
`objects 148 regardless of the resources they represent by
`de?ning the interfaces in a common format recognized by
`other managed objects 148 and manager 102. In one embodi
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`8
`ment, interface descriptions 118 de?ne the interfaces to Web
`Services Description Language (WSDL). Other suitable for
`mats can be utiliZed.
`Interface descriptions 118 implemented in WSDL typi
`cally de?ne schemas for messages and corresponding WSDL
`parts; port types; marker attributes; and namespaces.
`Port types describe a list of potential management capa
`bilities for manager 102. Managed objects 148 can implement
`management interfaces for some or all of the port types
`de?ned in interface descriptions 118. Managed objects 148
`can also use interface descriptions 118 to expose different
`interfaces to different managers 102. Examples of WSDL
`interface descriptions 118 suitable for use With some embodi
`ments of Conversation Interface Collection 116 and Managed
`Object Interface Collection 152 described herein are pro
`vided in the Appendix ?led With this disclosure.
`Extensions can be implemented to conversation interfaces
`112, 114, and managed object interfaces 150 to

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket