throbber
(12) Ulllted States Patent
`Pourheidari et al.
`
`(10) Patent N0.:
`(45) Date of Patent:
`
`US 7,925,981 B2
`Apr. 12, 2011
`
`US007925981B2
`
`(54) SYSTEMS AND METHODS FOR MANAGING
`WEB SERVICES VIAA FRAMEWORK OF
`INTERFACES
`
`(75) Inventors: M. Homayoun Pourheidari, Mountain
`VieW, CA (U S); Nicolas Catania, Palo
`Alma HCA (Us); Bryalf P- Murray,
`‘Dim/ab ’ WA (lg/IS)’ G‘tlni‘lllme
`Us
`am enepe’ oumam 16W’
`(
`)
`
`(73) Assignee: Hewlett-Packard Development
`Company L_P_ Houston TX (Us)
`,
`a
`’
`
`*
`
`_
`
`(
`
`) Nome?
`
`_
`
`_
`
`_
`
`_
`
`SubJect to any (311531211111? the germ 5411115
`patent is exten e or a juste un er 35
`U.S.C. 154(1)) by 2709 days.
`
`(21) Appl. N0.: 10/438,716
`_
`_
`(22) Flled'
`
`May 14’ 2003
`_
`_
`_
`Pnor Pubhcatlon Data
`US 2004/0230674 A1
`NOV_ 18, 2004
`
`(65)
`
`(51) Int CL
`(200601)
`G061? 3/048
`(52) US Cl. ...................................... .. 715/744; 715/735
`
`(58) Field of Classi?cation Search ................ .. 709/223,
`709/224, 204; 717/101; 705/7; 719/328;
`715/744, 735, 765
`See application ?le for complete search history.
`R f
`C-t d
`e erences l 6
`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
`
`56
`(
`)
`
`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. ......... ..
`2004/0230650 A1* 11/2004 Vambenepe et a1. ........ .. 709/204
`
`2004/0230943 A1* 11/2004 Pourheidari et a1. ........ .. 717/101
`
`2004/0237094 A1 * 11/2004 Vambenepe et a1. ........ .. 719/328
`* -t d b
`-
`C1 e y exammer
`Primary Examiner * Le Luu
`(57)
`ABSTRACT
`A system for managing a Web service comprises a service
`managed object associated With the Web service. The service
`managed object includes an interface con?gured to represent
`management features for the service to a manager. The man
`ager can access information regarding the Web service via the
`interface such as a list of conversations associated With the
`Web service, and the relationship of the service managed
`object to other managed objects.
`39 Claims, 19 Drawing Sheets
`
`WSEE
`
`E
`
`WSEE Managed Object %
`
`WSEE lnterface[s] @
`Managed Object |nterface(sj @
`
`M
`Service
`Service Managed Object L5
`Service lnterface[sj
`L12 I
`.
`Managed Object |ntertace(sj Q I
`
`‘I52
`W
`
`WSEE Configuration Interface
`con?guro?on URI
`WSEE Monitoring Interface
`Services
`WSEE Control interface
`Start
`Stop
`Event Types
`Starting
`stopping
`Stopped
`
`Status Values
`Starting
`mopping
`
`Conversation
`
`@
`
`Conversation Managed Object E
`
`482
`
`'16
`Conversation interfacets]
`Managed Object |nterface[s] 164
`
`Manager
`M
`
`/ 100
`
`Discovery
`A encies
`9%
`
`484
`
`M8
`Interface
`Descriptions
`
`ServiceNow, Inc.'s Exhibit 1001
`
`001
`
`

`

`US. Patent
`
`Apr. 12, 2011
`
`Sheet 1 0119
`
`US 7,925,981 B2
`
`
`
`
`
`
`
`08: 00000000 020930030 80003
`
`
`
`0E: 020030 82252 $0005
`
`
`
`
`
`
`
`08: 0000000 0030.062 $0003
`
`
`
`
`
`
`
`
`
`E300 000802 30005
`
`
`
`
`
`E300 000802 00:00
`
`
`
`E3 .603 60960000
`
`
`
`
`
`000025 0000100390000 00E0m
`
`
`
`
`
`00000E_ 00.092002 00_>00m
`
`_0_ >m 00=020>000 0,00
`
`
`
`000002 003
`
`
`
`0000002 12300 003
`
`w0o=020>000
`
`
`
`
`
`0000005 005020 00_>00m
`
`00000000
`
`
`
`
`
`E300 000802 000
`
`
`
`0E: 0000800 8300062 00:00
`
`
`
`
`
`
`
`0E: 0800000 E3EE_2 00:00
`
`
`
`
`
`
`
`0E: 0000080 0265550 00:00
`
`
`
`
`
`0000005
`
`
`
`000005 00:56
`
`0060016
`
`000006
`
`0000a
`00%
`
`006
`
`
`
`0002 E0>m
`
`
`
`
`
`0000005 _00E00 00_>00w
`
`0:
`
`
`
`
`
`00:00:00 0000005 003000
`
`002%
`
`
`
`
`
`0 v 60200 0000002 00300,
`
`
`
`
`
`a #00200 0000002 00_>00w
`
`
`
`
`
`{w 50000005 6050 0000002
`
`‘ 1
`
`
`
`00000080 $003000
`
`> >
`
`
`
`2000000,; 00_>00w
`
`
`
`00M>00m w'? 500202 60.50 0000002 3 £000,095
`
`
`
`
`
`
`
`
`
`000 00_>00w
`
`w:
`
`0000500000
`
`%
`
`000000E_
`8.000?~
`
`0000002
`
`%
`
`005000
`
`ServiceNow, Inc.'s Exhibit 1001
`
`002
`
`

`

`US. Patent
`
`Apr. 12, 2011
`
`Sheet 2 0119
`
`US 7,925,981 B2
`
`-
`Managed Object E
`
`Managed Object
`Interfaces
`@
`
`I
`
`Mqnqger
`
`m2
`
`Event callback Interface
`Notify
`
`Discovery
`Agencies
`120
`“
`
`7 18
`
`II'ITG-IfOCG
`
`432
`Managed Object Interface Collection
`
`Types
`Notification
`Relationship
`Managed Object
`FaultDetail
`Error
`
`Events
`RelationshipsChanged
`Status Values
`Operational
`Failed
`Inactive
`Unknown
`Managed Object Identity Interface
`Management URI
`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
`Magc‘laged Object Collection Interface
`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
`
`FIG. 7B
`
`ServiceNow, Inc.'s Exhibit 1001
`
`003
`
`

`

`U.S. Patent
`
`Apr. 12, 2011
`
`Sheet 3 of 19
`
`US 7,925,981 B2
`
`
`
`
`
`moatofi8:059:00$95
`
`a:co_§:o_Eoo
`
`
`
`
`
`80:9;95:82$53
`
`
`
`
`
`wOOtQE_O_EOOmmm>>
`
`8223
`
`
`
`@5085058.0%
`
`
`
`ogtoaocean
`
`
`
`mm:_o>2:06wmazEm>m
`
`8805
`
`tom
`
`8%
`
`>5>oom5
`
`03
`
`$33 a.6050
`60952aHmeoOthEozoemEoo
`
`
`
`gwflEoogng.6290.3ch02
`
`
`
`
`
`80:92omv
`
`86cm?
`
`II
`
`8029680
`
`
`
`0vGE
`
`CO:OE®>COO
`
`
`
`800828:029:00
`
`
`
`
`
`@895:#85080892
`
`004
`
`ServiceNow, |nc.'s Exhibit 1001
`
`
`
`IBmfiO89822092mm
`
`ServiceNow, Inc.'s Exhibit 1001
`
`004
`
`

`

`U.S. Patent
`
`Apr. 12, 2011
`
`Sheet 4 of 19
`
`US 7,925,981 B2
`
`mo:
`
`
`
`
`
`8:00:000008:;:..0.|:020>80
`
`
`
`
`
`000t0::_98:828:029:00
`
`
`
`0_8:029:00_000_0
`
`8:8:0:0
`
`
`
`000202:80
`
`
`
`
`
`0008?:2900208:029:00
`
`00E0mm:_:_0::00
`
`w0_t0n_:000:52
`
`
`
`m00_>_0m2050
`
`
`
`
`
`00082008888:8:029:00
`
`
`
`:80000080200:8
`
`
`
`
`
`E30000080280008
`
`
`
`
`
`000t0::_0:808:029:00
`
`
`
`
`
`E300000.0026:0:
`
`
`
`
`
`000302:30::8:
`
`
`
`E000828:029:00
`
`
`
`
`
`E00088.80.5000.0:03.
`
`8:029:00
`
`
`
`
`
`@0090:.605000098::
`
`
`
`E000838:029:00
`
`
`
`
`
`6030000083.8:029:00
`
`
`
`88090:28:00:Md:
`
`00082
`
`
`
`
`
`002000:00030280802
`
`
`
`80>:E0>m
`
`___v_
`
`Q:GE
`
`
`
`05:0“.E0928:
`
`
`
`05:0:08:02
`
`
`
`05:0:_000._
`
`829800
`
`0008::
`
`am0_0c0©<2:290020
`
`005
`
`ServiceNow, |nc.'s Exhibit 1001
`
`ServiceNow, Inc.'s Exhibit 1001
`
`005
`
`
`
`
`
`
`

`

`US. Patent
`
`Apr. 12, 2011
`
`Sheet 5 0119
`
`US 7,925,981 B2
`
`EmE>om
`
`63.891
`
`NIN
`
`9%
`woEwm M
`
`QIR
`
`3w co=o2w>coo
`
`@9050
`
`cozoéogbo
`
`t8 9 80
`
`
`
`% Q05 @QEO
`
`2: co
`
`@2620
`@923
`

`
`NE
`
`60052
`
`m @I
`
`ww_ocw@<
`
`lowlv
`
`3%
`
`I mi
`
`
`
`29085 wcozatowwo
`
`@0962
`
`ServiceNow, Inc.'s Exhibit 1001
`
`006
`
`

`

`US. Patent
`
`Apr. 12, 2011
`
`Sheet 6 0119
`
`US 7,925,981 B2
`
`WSEE
`WSEE Managed Object
`
`Online Store
`392
`3_0_4 "' Q9
`
`WSEE lnterfacejs] @
`Managed Object lnterfacejs] @
`
`Authentication Service
`
`2%
`
`Online Ordering Service M %
`Service Managed Object £7
`Service Interfacejs) m
`Managed Object |nterface[s] w l
`
`:
`
`Conversation
`m
`Conversation Managed Object M H
`Conversation lntertacejs) i8 —
`Managed Object lnterfacejs) w
`
`M anager
`
`402
`
`M
`
`v
`
`WSEE
`
`Q
`
`WSEE Managed Object 324
`
`‘
`
`320
`WSEE lntertacejs]
`Managed Object lnterfacejs] E
`
`Billing Service
`
`210
`
`3_3_
`Service Managed Object
`Service lnterfacejs) i
`Managed Object intertacejs] 3_3_Q
`
`Discovery
`Agfglocles
`
`4 ,1 8
`
`Interface
`Descriptions
`
`Conversation
`
`l
`
`Conversation Managed Object m Payment
`Conversation lnterfacejs] 3i
`progfzssor
`Managed Object lnterfacejs)
`34
`
`FIG. 3
`
`ServiceNow, Inc.'s Exhibit 1001
`
`007
`
`

`

`US. Patent
`
`Apr. 12, 2011
`
`Sheet 7 0119
`
`US 7,925,981 B2
`
`vm
`
`8:029:00
`
`
`
`6950 80892
`
`:
`
`vm cozoewéoo
`
`
`
`,GQQO vmmocoi
`
`w GI
`
`0mm
`
`
`
`99w mEEO :09:
`
`Dow
`
`
`
`
`
`5989 +8.50 80962
`
`wwm was
`
`
`
`\IK UQQO b00052
`
`
`
`$650 80052 ooéom
`9%
`
`
`
`
`
`6290 30802 @223
`
`
`
`
`
`6050 80802 ooEww
`
`@2690 95 CO
`
`cozoozcwc5<
`
`ServiceNow, Inc.'s Exhibit 1001
`
`008
`
`

`

`US. Patent
`
`Apr. 12, 2011
`
`Sheet 8 0119
`
`US 7,925,981 B2
`
`4
`
`wow
`
`C_ UQCMOEOU
`
`4
`
`
`
`g @223 @5690 95 CO
`
`
`
`c_ omgoEoQ :0 mucoama co mocmawo
`
`
`
`
`
`
`
`2m\ Nmm \\ SK A
`
`> _.
`
`m @I
`
`ServiceNow, Inc.'s Exhibit 1001
`
`009
`
`

`

`US. Patent
`
`Apr. 12, 2011
`
`Sheet 9 0119
`
`US 7,925,981 B2
`
`
`
`__- - 62a vwwodw? - -._ 1 ............................................................ .v .
`
`
`
`
`
`§|Pk%?>.%b::“ Mg
`
`0 .mvI
`
`
`
`c@_.,?w._..w.>cnD ..........
`
`
`
`
`
`m ........ ..,.&QEO. 30.0.8.2 .......
`
`'
`
`N8 8m
`
`8w
`
`
`
`\( 905 @520
`
`H69:
`
`\1\ .1 lm?Odwdmmmz._ \|1\ m......Uu?0.vmm0au§..:.
`
`
`
`
`
`
` an "::-.w.m.§:i“ 3% m ............. 1.11% ............ ..
`
`.1 , 8w
`
`
`
`
`
`>@o_oQoP B200 vwmocoi
`
`
`
`
`
`m?ggodwmmmmzwgawwm .m?m?ovumucuz .QQEQQW $50 @952 82%
`
`_, ...... -EE ...... :_ H ..... .g?nwca? ..... .M 5:83?
`
`
`\
`
`
`
`
`
`ServiceNow, Inc.'s Exhibit 1001
`
`010
`
`

`

`US. Patent
`
`Apr. 12, 2011
`
`Sheet 10 0119
`
`US 7,925,981 B2
`
`g
`
`EwE>om
`
`6%805
`
`g
`
`9:5
`ooEww A
`
`V v N COEUE®>COO
`t8 2 26
`
`3w 8:029:00
`
`@9050
`
`5:25:50
`
`2: Co
`
`@2690
`836m
`
`%
`
`56922?
`
`moEom
`
`wow
`
`1
`
`
`
`new Q05 @EEO
`
`Nov
`
`600:0}
`
`my:
`
`@0892
`
`wcozatowwa
`
`ServiceNow, Inc.'s Exhibit 1001
`
`011
`
`

`

`U.S. Patent
`
`Apr. 12, 2011
`
`Sheet 11 0f 19
`
`US 7,925,981 B2
`
`0v
`
`8:029:00
`
`vm
`
`8:029:00
`
`
`
`695080892
`
`mGE
`
`00m
`
`90,5mc=cO
`
`28%
`
`00m
`
`Em$3,
`
`
`
`629080892
`
`0:590mc:cO
`
`co_+oo_Emc,5<
`
`523080802@223
`
`
`6950@0892$228
`
`012
`
`ServiceNow, |nc.'s Exhibit 1001
`
`
`
`
`
`>©o_oa2UQQOCmoocoE
`
`ServiceNow, Inc.'s Exhibit 1001
`
`012
`
`
`
`
`
`
`
`
`
`
`

`

`US. Patent
`
`Apr. 12, 2011
`
`Sheet 12 0f 19
`
`US 7,925,981 B2
`
`
`
`moEwm honcw>
`
`%
`
`0 g
`
`
`
`6 0:02 5:02 I!
`
`
`
`.QO >coQEoO m0 >coQEoU m0 E8800
`
`0 @I
`
`
`
`moEmw 0:60:99; 6 E0980
`
`meg
`
`
`
`woEmw goncm>
`
`gm
`
`ServiceNow, Inc.'s Exhibit 1001
`
`013
`
`

`

`U.S. Patent
`
`Apr. 12
`
`9
`
`2011
`
`Sheet 13 of 19
`
`9US7
`
`925,981 B2
`
`c963<g
`
`60500000:02
`
`
`
`6050000962
`
`
`
` 00E0w 300000: 00_Z0m
`
`
`60c0>E000t0§00_20w
`
`0000:02
`
`8N
`
`
`
`
`
`8m@0090:60.50000892
`
`
`
`50090::00_Z0m
`
`.8000:GE
`
`
`
`
`
`60500000:02$0005ONE
`
`Do
`
`
`
`$000:0%5009025600200
`
`
`
`
`
`406050000052$0005GHE
`
`
`
`lmmE000t0E_820202.00
`
`vlmm50090::6050000962QE00902
`
`
`
`$0005002
`
`Q»GE
`
`
`
`E00905.$0005QUE
`
`
`
`
`
`300000:60500000,62
`
`014
`
`ServiceNow, |nc.'s Exhibit 1001
`
`v0>c00E00
`
`5>c00E00
`
`
`
`NO>c0QEoO§00_20m0:50:05;
`
`
`
`
`
`605000096200E0m
`
`ServiceNow, Inc.'s Exhibit 1001
`
`014
`
`
`
`
`
`
`
`
`
`
`
`
`
`

`

`U.S. Patent
`
`Apr. 12, 2011
`
`Sheet 14 0f 19
`
`9US7
`
`925,981 B2
`
`
`
`
`
`.Em>®UmmcocomQEmcozgmg
`
`
`
`:8382022.6:.92920960892
`
`
`
`m5509:___>>SEEatommmwooi9E
`
`Ga
`
`50892
`
`8:02
`
`
`
`0228950505“;
`
`mg
`
`vvGE
`
`v0>canoO
`
`m0>coQEoo
`
`NO500500
`
`
`
`moEmm5Ucm>
`
`836m50c®>
`
`0'00
`
`wa
`
`
`
`$229,_ovcm>
`
`am
`
`015
`
`ServiceNow, |nc.'s Exhibit 1001
`
`ServiceNow, Inc.'s Exhibit 1001
`
`015
`
`
`
`
`
`
`
`
`

`

`US. Patent
`
`Apr. 12, 2011
`
`Sheet 15 0119
`
`US 7,925,981 B2
`
`
`
`880E QUE 20>; wmoEmw hoocm>
`
`
`
`
`
`
`
`
`
`
`
`
`
`6E5 98.2mm 058L051 coQ:
`
`.8636 Q BQJUQ
`
`v0 >coQEoU
`
`olwm
`
`wmwooi GE
`
`
`
`woimm 5Ucw>
`
`Nv @I
`
`a
`
`
`
`wwmooi QUE
`
`
`
`moEmw 6Uc®>
`
`38
`
`
`
`60962 c262
`

`
`
`
`woEww 96050:: 6 500500
`
`g
`
`a
`
`
`
`$805 QUE
`
`NU >coQEo0
`
`3m
`
`
`
`$805 QUE
`
`ServiceNow, Inc.'s Exhibit 1001
`
`016
`
`

`

`U.S. Patent
`
`Apr. 12, 2011
`
`Sheet 16 of 19
`
`9US7
`
`925,981 B2
`
`
`
`
`
`cozoz<2:0:mmoEmmLoucm>
`
`
`
`6039659w:o_>waconmmmm
`
`vols
`
`
`
`$80592
`
`olvm
`
`
`
`@09628:024
`
`
`
` g@928028598
`
`
`
`mmman.0mm:32,B$92.32
`
`.nmxo>c_m_
`
`mé.GE
`
`v058800no>coquo
`
`NO59550
`
`gmwmooiQUE
`
`mwmooiGE
`
`mflm
`
`$80:GE
`
`910.
`
`
`
`@22350cm>
`
`mg
`
`
`
` §@928_OUc®>
`
`
`
`moEmm50cm>
`
`melo
`
`017
`
`ServiceNow, |nc.'s Exhibit 1001
`
`ServiceNow, Inc.'s Exhibit 1001
`
`017
`
`
`
`
`
`

`

`US. Patent
`
`Apr. 12, 2011
`
`Sheet 17 0119
`
`US 7,925,981 B2
`
`
`
`$50 “mm wmw: $6962 cosoz<
`
`
`
`$805 QUE $536 9 wwwwwoo?
`
`wwoooi ONE 9: E cozmhmqo mwEml
`
`
`ONE 9: B 96 B wwomtBE
`
`83.6w 96285 5
`
`wv .QI
`
`
`
`@223 honcm>
`
`a»
`
`
`
`60052 5:02
`
`a
`
`
`
`836w 058595 6 >coQEoO
`
`g
`
`QUE
`
`wwwooi
`
`Q0 >coQEo0 m0 >coQEoU N0 >coQEoO
`
`GE GE Q2
`
`
`
`
`
`$0005 wmmooi 880i
`
`ServiceNow, Inc.'s Exhibit 1001
`
`018
`
`

`

`US. Patent
`
`Apr. 12, 2011
`
`Sheet 18 0119
`
`US 7,925,981 B2
`
`2028532 Qmzw wwmooi
`
`
`
`
`wwoooi ONE 5 cozmhoao
`.wmomtBE
`
`QQQmQ hmmmcmé c0=oz<
`
`
`
`m3 wcozmoczoc L2
`
`
`
`60052 cozoz<
`

`
`a
`
`mwmooi GE
`
`a
`
`3891 GE
`
`
`
`elem w|cm
`
`mv .Qu.
`
`
`
`@oEww 058C051 6 58800
`
`wqla
`
`g
`
`wwmooi GE
`
`No 260560
`
`9m
`
`3805 GE
`
`gm
`
`
`
`woEmm honcm>
`
`ServiceNow, Inc.'s Exhibit 1001
`
`019
`
`

`

`U.S. Patent
`
`9
`
`29a7SU
`
`2B
`
`
`
`
`
`1E059:or:m020$:9032:v::BmtflsEnmn,:03:0::0088:025:22
`
`
`
`
`
`1..225:0E6:9:mEEEEU98000::W9me:ozzomxo9:ho$02305.QUEm:mm:903m.2:mmm:mE05
`
`6:038000::0mm9.::w:>>
`
`
`
` §500:02:o:o:<
`
`
`
` §@2230:00:05:
`
`
`
`0%:mmw®OOEmw®OOE80005w0::0::
`
`
`
`%v0>:00_Eoom0>:0QEoUmo>:00Eoo
`
`muw,2w:
`
`0%amNa
`
`
`
`
`
`
`
`
`
`
`
`0228:00:m>moEwm:00:m>092$:00:w>
`
`020
`
`ServiceNow, |nc.'s Exhibit 1001
`
`ServiceNow, Inc.'s Exhibit 1001
`
`020
`
`
`
`
`

`

`US 7,925,981 B2
`
`1
`SYSTEMS AND METHODS FOR MANAGING
`WEB SERVICES VIA A FRAMEWORK OF
`INTERFACES
`
`RELATED APPLICATIONS
`
`The disclosed system and operating method are related to
`subject matter disclosed in US. Patent application no.
`10/438,576, entitled “System and Method for Managing Con-
`versations”, which is assigned to the same assignee, filed on
`the same date as the present disclosure, and incorporated by
`reference herein.
`
`COMPUTER PROGRAM LISTING APPENDIX
`
`This specification includes Appendix A (consisting of five
`text files) on CD-ROM, which contains examples of interface
`description documents that can be used with some embodi-
`ments disclosed herein. The files 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);
`3. Managed Object Interfaces Description.wsdl (22 KB
`created May 14, 2003);
`4. Service Interfaces Description.wsdl (18 KB created May
`14, 2003); and
`5. WSEE Interfaces Description.wsdl (6 KB created May
`14, 2003).
`Appendix A is incorporated herein by reference.
`
`BACKGROUND
`
`Today, information technology (IT) resources are managed
`using a variety of incompatible and often proprietary inter-
`faces and protocols. Requirements for management informa-
`tion regarding the resources need to be specifically pro-
`grammed to address new resources and in many cases the
`specific programming is not updated as new versions ofthe IT
`resources become available.
`
`The problem ofmanaging disparate IT resources is becom-
`ing more acute as systems are increasingly developed using
`IT resources that are deployed in remote locations and
`accessed via information networks, such as the Internet. Gen-
`erally, the resources to be managed are not readily identifiable
`when the resources are highly distributed and independent of
`one another. Further,
`it
`is difficult to obtain information
`regarding properties and attributes of the resources, and pro-
`tocols for exchanging management
`information with the
`resources. A further difficulty lies in determining the relation-
`ships among the resources used in a system to pinpoint opera-
`tional problems when one or more of the resources do not
`respond as expected.
`The term Web services, also referred to herein as “ser-
`vices”, describes an approach to distributed computing in
`which interactions are carried out through the exchange of
`eXtensible Markup Language C(ML) messages. Web ser-
`vices can perform any task that can be described and con-
`tained 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.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`
`A Web service is a software system identified by a Univer-
`sal Resource Identifier (URI) whose public interfaces and
`bindings are typically defined 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 definition, using XML
`based messages conveyed by Internet protocols.
`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, find, bind, and other operations. The service provider
`is the business that provides access to the Web service and
`publishes the service description in a service registry. The
`service requestor finds the service description 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)
`specification. The SOAP specification is a universally agreed-
`upon protocol that uses XML and optionally HTTP together
`to invoke functions exposed in Web services.
`The XML messages can be described using the Web Ser-
`vices Description Language (WSDL) specification, which,
`along with the Universal Description Discovery and Integra-
`tion (UDDI) registry, provides a definition of the interface to
`a Web service and identifies service providers in a network.
`The WSDL specification is an XML-based language used to
`define Web services and describe how to access them. An
`
`application trying to use a particular Web Service uses WSDL
`to find 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 first obtains a copy of
`the WSDL file and then uses the information in this file 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 find 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 specifications such as SOAP, WSDL, and UDDI. In
`particular, Web services allow businesses to create processes
`that span multiple enterprises and define 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 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 ofcontrol
`and management domains while maintaining a unified, 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 sys-
`tems. The vantage point is all Web services on a given com-
`puter system. In another instance, a process manager may be
`interested in all ofthe Web services that work together to drive
`a process to, completion. This may involve Web services
`throughout an enterprise, or possibly include 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
`
`021
`
`ServiceNow, |nc.'s Exhibit 1001
`
`ServiceNow, Inc.'s Exhibit 1001
`
`021
`
`

`

`US 7,925,981 B2
`
`3
`company meets its service agreements with others. Addition-
`ally, the service providers’ performance in fulfilling the ser-
`vice 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 flexible 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 define arbi-
`trary data types, and to extend or restrict previously defined
`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.
`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, including the Internet. Furthermore,
`it is possible to discover not only the basic capabilities of a
`Web service, but also the advanced capabilities that are speci-
`fied by this standard. 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 identifying users access-
`ing the provided Web services. Yet another more complex
`management challenge is to ensure that all appropriate ser-
`vice agreements are not only discoverable but also enforced.
`
`SUMMARY
`
`In one embodiment, a system for managing a Web service
`comprises a computer processor and a service managed
`object executable on the computer processor. The service
`managed object
`is associated with the Web service and
`includes at least one interface configured to allow a manager
`to access management features for the Web service, such as a
`list of conversations associated with the Web service.
`
`In another embodiment, a system capable of managing a
`Web service comprises a computer processor configured to
`communicate with the service. The computer processor
`includes executable instructions operable to discover a man-
`aged object interface for the service; capabilities for manag-
`ing the service based on the managed object interface for the
`service; a service interface for the service; and additional
`capabilities for managing the service based on the service
`object interface.
`In yet another embodiment, a computer program product
`comprises a service interface and a managed object interface
`associated with the service interface. The service interface is
`
`configured to include information for managing a Web ser-
`vice, including information indicating conversations associ-
`ated with the service that are in progress.
`In a further embodiment, a method for managing a service
`comprises creating a service object representing the service,
`wherein the service object includes a management interface;
`exposing management capabilities for the service via a
`description ofthe management interface; and allowing a man-
`
`4
`
`ager to subscribe with the service object to receive notifica-
`tion of events regarding the service.
`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 figures.
`
`BRIEF DESCRIPTION OF THE FIGURES
`
`10
`
`15
`
`FIG. 1A is a diagram of components included in an
`embodiment of a Web service management system.
`FIG. 1B is a diagram of components included in an
`embodiment ofa base managed object interface collection for
`the Web service management system of FIG. 1A.
`FIG. 1C is a diagram of components included in an
`embodiment of a Web Service Execution Environment inter-
`
`face collection for the Web service management system of
`FIG. 1A.
`
`20
`
`FIG. 1D is a diagram of components included in an
`embodiment of a conversation interface collection for the
`
`Web service 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 service management system of FIG. 1A.
`FIG. 3 shows a block diagram of components in online
`ordering system of FIG. 2 configured with managed objects
`and corresponding management interfaces.
`FIG. 4 shows a diagram of the topology of the managed
`objects of FIGS. 2 and 3.
`FIG. 5 shows a diagram of the relationships between the
`managed objects of the online shopping service system of
`FIGS. 2 and 3.
`
`FIG. 6 shows the topological diagram of FIG. 4 showing
`propagation of failure status among components in online
`shopping service system of FIG. 2.
`FIG. 7 is a diagram of another embodiment of an online
`shopping service system that can utilize the service manage-
`ment system of FIG. 1A.
`FIG. 8 shows a topological diagram of managed objects in
`the online ordering system of FIG. 7.
`FIGS. 9 and 10 show diagrams of four independent entities
`capable of coordinating distributed Web services that can be
`monitored by a manager.
`FIGS. 11 through 16 show diagrams of the distributed
`processing system of FIGS. 9 and 10 with annotations of
`various steps performed by RFQ process and auction man-
`ager.
`
`DETAILED DESCRIPTION OF THE FIGURES
`
`Referring to FIG. 1A, an embodiment of a Web service
`management system 100 that allows manager 102 to monitor
`and control one or more services 104, 106 is shown. Service
`managed objects 108, 110 represent the management features
`of resource(s) that perform services 104, 106. Interfaces in
`one or more categories can be included in service interfaces
`112, 114 for each service managed object 108, 110. Service
`interfaces 112, 114 can allow manager 102 to access infor-
`mation regarding the state of services 104, 106, as well as to
`control the operation of services 104, 106.
`In some embodiments, management capabilities provided
`via service interfaces 112, 114 include attributes that repre-
`sent information about the messages exchanged with other
`services; operations to support the management of services
`104, 106; and events representing exceptions and state
`changes that can be reported by service managed objects 108,
`110 to manager 102. Service managed objects 108,110 can be
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`022
`
`ServiceNow, |nc.'s Exhibit 1001
`
`ServiceNow, Inc.'s Exhibit 1001
`
`022
`
`

`

`US 7,925,981 B2
`
`5
`implemented within services 104, 106, such as shown for
`service managed object 108, or in a layer external to services
`104, 106, as shown for service managed object 110.
`Services 104, 106 populate data fields in service interfaces
`112, 114 that are available to manager 102. Further, services
`104, 106 receive information and control parameters from
`manager 102 via service interfaces 112, 114.
`In some embodiments, each collection of service interfaces
`112, 114 supports various categories of management capa-
`bilities including managed object identity, monitoring, dis-
`covery, control, performance, configuration, and security.
`Other interfaces that support additional service management
`capabilities can be utilized, in addition to, or instead of,
`service interfaces 112, 114.
`An embodiment of service interfaces 112 is represented in
`FIG. 1A as Service Interface Collection 116, which will be
`described with respect to service interfaces 112 and service
`104. A similar Service Interface Collection 116 can be used to
`
`develop service interfaces 114. Service interfaces 112, 114
`can include additional, fewer, or the same features shown in
`the embodiment of Service Interface Collection 116 in FIG.
`1A.
`Each interface in Service Interface Collection 116 includes
`
`at least one management feature that can be used by manager
`102 to monitor and/or control various aspects of service 104.
`In the embodiment shown, Service Interface Collection 116
`includes a Service Configuration Interface, Service Monitor-
`ing Interface, Service Discovery Interface, Service Perfor-
`mance Interface, and Service Control Interface. Service inter-
`faces 112, 114 can be configured to support any one, a group,
`or all of the interfaces in Service Interface Collection 116.
`
`Further, in some embodiments, manager 102 can discover
`interface descriptions 118 for service interfaces 112, 114 via
`a suitable discovery agency 120, such as UDDI, or other
`suitable method. Interface descriptions 118 can be configured
`to reveal selected management information to manager 102
`by exposing only selected interfaces in service interfaces 112,
`114. For example, an interface description 118 for service
`interfaces 112, 114 may only include a description the Ser-
`vice Monitoring Interface that is exposed to manager 102.
`Examples of interfaces descriptions 118 that are suitable for
`use with some embodiments disclosed herein are provided in
`Appendix A.
`Moreover, features such as attributes in Service Interface
`Collection 116 can support types of access by other objects,
`such as read and read/write. When interface descriptions 118
`are implemented in WSDL, service interfaces 112, 114 are
`mapped to ports, as further described herein. Service Inter-
`face Collection 116 can also be extended to provide addi-
`tional management capabilities
`for manager 102,
`as
`described herein.
`
`In the embodiment shown in FIG. 1A, Service Configura-
`tion Interface includes OperationalUri, which can represent
`an attribute that can return an identifier such as an URI to the
`
`location of interface descriptions 118 for service 104.
`Service Monitoring Interface can include attributes for
`Conversations, Get Conversation By ID, Last Message, Last
`Fault message.
`Conversations can represent an attribute that can return a
`list of conversations (not shown) involving the corresponding
`service managed object 108 that are in progress.
`The Get Conversation By ID (identifier) can represent an
`attribute that can return the conversation managed object (not
`shown) associated with the service that has the specified
`identifier. An example of a suitable identifier is a Universal
`Resource Identifier (URI) that can be used to identify
`resources in a domain including documents, images, down-
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`loadable files, services, electronic mailboxes, and other
`resources. Other suitable identifiers can be utilized.
`
`The Last Message can represent an attribute that can return
`the last request message received by service 104.
`The Last Fault Message can represent an attribute that can
`return the last fault message returned from service 104.
`Service Discovery Interface can include a Container read-
`only attribute, which returns a globally unique identifier for
`the Web service execution environment (WSEE) (not shown)
`that contains service 104.
`Service Performance Interface can include attributes such
`
`as Total Message Count, Failed Message Count, and Success
`Message Count. Total Message Count can return the total
`number of messages processed by service 104. Failed Mes-
`sage Count can return the number of failed messages pro-
`cessed by service 104. Success Message Count can return the
`number of successful messages processed by service 104.
`Service Performance Interface can include additional fea-
`
`tures as shown in FIG. 1A. For example, Success Message
`Count can represent an attribute that returns the number of
`successful messages processed by service 104.
`Success Maximum Response Time can represent an
`attribute that can return the maximum amount of time that
`
`successful operational requests executed before returning a
`response.
`Success Minimum Response Time can represent an
`attribute that can return the minimum amount of time that
`
`successful operational requests executed before returning a
`response.
`Success Cumulative Response Time can represent an
`attribute that can return the cumulative amount of time that
`
`successful operational requests have executed since service
`104 was started.
`
`Failed Maximum Response Time can represent an attribute
`that can return the maximum amount oftime that failed opera-
`tional requests executed before returning a response.
`Failed Minimum Response Time can represent an attribute
`that can return the minimum amount oftime that failed opera-
`tional requests executed before returning a response.
`Failed Cumulative ResponseTime can represent an
`attribute that can return the cumulative amount of time that
`
`failed operational requests have executed since service 104
`started.
`
`Service Control Interface can include operations such as
`Start, Stop, and Restart that allow manager 102 to control the
`execution of service 104. The Start operation starts service
`104. Once started, service 104 should be able to receive
`operational and management requests supported by service
`interfaces 112 and mana

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