Are there official definitions for the CMDB Relationship Types?

Robert Campbell
Tera Guru

Are there official definitions for what a relationship type actually means?  Personally, I see a difference between Consumes, Depends on and Contains but others I talk to use them interchangeably. 

  • Consumes
    • Takes from the other, data, instructions, etc.
  • Depends on
    • Needs the other to function.
  • Contains
    • Houses (for lack of a better word w/o using the word I'm trying to define) or is an umbrella to another.

I don't think Depends on and Consumes are the same because although I may consume the data from the other, I can still "function" albeit with limited data w/o the other.  A database depends on the server.  A file directory depends on a storage device, computer, server, etc.

I do think Contains can be used with both Consumes and Depends on.  A parent application contains a child application.  It can also depend on it or consume it.

Is there any documentation like this?

11 REPLIES 11

Thanks for the response.  These are the same links I keep coming across but they don't "define" the relationship.  They provide the suggestion of what should be related to what and which type of relationship they should use in that relationship but I'm looking for the "why".  Why Consume, Uses, Depends on, Contains?  Why not one of the others?  What does that word mean in this context?  

If I have a bunch of microservices under a service, what is the parent/child relationship?  I'm thinking the parent is a container so I should use Contains but if ServiceNow has a clear definition of what contains is that they use for some metric or plan to use in the future; I want to know that so I don't misuse it now and have to change it in the future.  To my example, I would have the parent service containing all of the child microservices.  But I may also need to have a Depends on relationship between the parent and a few of those microservices.

I guess, to keep it simple, I will just use the example of Application Service Depends on / Sends data to Application Service since the service will be impacted in some way.

emir
ServiceNow Employee
ServiceNow Employee

also from CI Class Manager, you can see suggested relationship for each class

Tom R1
Tera Contributor

@Robert Campbell, I agree.  Finding a simple list of relationship types, the reasoning behind their intended use, and common CMDB CI parent / child examples is so difficult it feels like a closely held secret. I get that  every organization is different, but considering the prescriptive nature of SN I'd find it helpful to have some best practices that extend beyond what is in the Suggested Relationships.

Thank you Maik for the CSDM reference!