Find your people. Pick a challenge. Ship something real. The CreatorCon Hackathon is coming to the Community Pavilion for one epic night. Every skill level, every role welcome. Join us on May 5th and learn more here.

Multiple Business Applications per Application Service?

ahbrook
Tera Contributor

Hey everyone! 

 

Is it possible/acceptable in the CSDM framework to have an application service instance match up to multiple Business Applications? 

 

For example: 

 

  • We have a Production, Test, and Development instance of the ServiceNow Platform.
  •  When conceptualizing Business Applications, it makes sense to have the overall platform as a Business Application, and then our individually purchased or considered modules (ITSM, CSM, ITAM, TNI, etc.) as Business Applications as well. 
  • For each of the instances, we have a local MID server on our infrastructure that would be our "Application," along with the website URL we interact with.

 

4 REPLIES 4

Ken tang
Tera Guru

Hey, so the short answer is: the relationship goes the other way. CSDM is designed for one Business Application to have multiple Application Services (called Service Instances in newer CSDM versions), not the other way around.

Think of it like this:
- Business Application = the logical "what" (the ServiceNow platform as a thing your business runs)
- Application Service / Service Instance = the "where it's actually running" (your PROD instance, your DEV instance, your TEST instance)

So your Prod, Test, and Dev ServiceNow instances would each be their own Service Instance, all hanging off one "ServiceNow Platform" Business Application. That's the intended pattern and it's been called out pretty clearly in community discussions around CSDM 5.0.

On your modules question (ITSM, CSM, ITAM, etc. as separate Business Apps) - I'd actually push back on that a little. The consensus leans toward not going overboard. Modeling each module as its own BA gets messy fast and the maintenance burden isn't worth it unless you're tracking them as truly separate portfolio items with different owners, budgets, contracts, etc. If they're all just "ServiceNow features you've turned on," one Business Application with environment-level Service Instances is cleaner and more sustainable.

ahbrook
Tera Contributor

Thank you!

 

That's where I was leaning, and what I thought.. I definitely feel in my earlier posts / thoughts, I went overboard in making things granular. 

 

Part of my reason for asking this is related to how we're going to be reclassifying our VM infrastructure here shortly. Our infra team wants to group VMs via "Service," separated into Prod/Test/Dev. In my mind, this seemed to line up pretty well with Application Services. But then I run into scenarios where a given VM host will support multiple purchased products... or a situation like a database cluster set (though I am going to make a general "MS SQL" Business Application for that to sidestep the thorny issue). 

 

Our setup is a University, where the funding lines, ownership, and responsibilities can be split amongst upwards of a dozen different departments or funding sources. We definitely have a need to track contracts separately, but I don't think we are at a maturity point yet where that level of portfolio tracking is ready for ServiceNow. I'm just trying to align to that potential future. 

 

I may also be conflating things in an attempt to simplify the CMDB and keep everything more or less aligned and where we can do automatic mapping in the future. 

 

So TL;DR -- avoid one Application Service to Many Business Application relationships wherever possible, right? 

Hi @ahbrook,

ServiceNow offers a deck with modeling examples of various use cases. If you have the opportunity to access SN best practices, here’s the link: CSDM Data Model Examples 

 

Your questions regarding modeling the ServiceNow instance are included in the presentation. This would be the recommendation for the run phase. To achieve this, you have to complete plenty of work upfront. 

fknell_0-1776719088978.png

An example for your VM use-case might be ERP; there you see shared databases for multiple Service Instances as well. 

 

The most important question would be what you would like to solve or what outcome you are looking for?

 

Hope this helps!

 

 

sarahbr
Tera Guru

This is the concept of Platform Host and Platform Application with the Business application. 

 

Examples: 

  • ServiceNow (Platform Host)
    • Platform Applications
      • Incident
      • Problem
      • Change
  • Or if you think in terms of HealthCare (EPIC) review this image from a presentation I gave long ago with Mark Bodman 

epic data model example.jpegepic csdm.jpeg