CSDM- Data loader excel sheet
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-12-2025 09:22 PM
Hi ,
I need to implement CSDM and would appreciate it if someone could share a sample data-loaded sheet for CSDM. This would be very helpful for my work.
Regards,
Rahul Tungal
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
3 weeks ago
CSDM Sample Data-Load Template (Text Version)
=================================================
Purpose
-------
This sample shows the minimal, practical columns you can use to stage a first CSDM load into CMDB/Service Portfolio. It follows CSDM layers: Business Capabilities → Business Applications → Application Services → Technical Services/Offerings → Application Components → Infrastructure, plus relationships.
Use these as CSV tabs (worksheets) or separate files. Keep sys_ids blank if you’ll create new records; populate if you’re updating.
Conventions
-----------
- Names: unique, business-friendly.
- Owners: email or user_name that exists in sys_user.
- Status: Active/Retired where applicable.
- Dates: ISO 8601 (YYYY-MM-DD).
- Relationship refs: point by Name (preferred) or external_key; transform maps will resolve to sys_id.
TAB 1: business_capability.csv
------------------------------
Columns:
- capability_name
- capability_level (1-3)
- parent_capability_name (blank if level 1)
- description
- owner (email)
Examples:
capability_name,capability_level,parent_capability_name,description,owner
"HR Management",1,,"Hire to Retire","ciso@example.com"
"Recruiting",2,"HR Management","Candidate sourcing and hiring","ciso@example.com"
"Payroll",2,"HR Management","Compensation processing","finops@example.com"
TAB 2: business_application.csv (APM)
-------------------------------------
Maps to cmdb_ci_business_app (or APM App table in your org)
Columns:
- app_name
- business_owner (email)
- it_owner (email)
- capability_name (primary capability)
- lifecycle_status (Planned/Live/Retired)
- criticality (Low/Medium/High)
- data_classification (Public/Internal/Confidential/Restricted)
- description
Examples:
app_name,business_owner,it_owner,capability_name,lifecycle_status,criticality,data_classification,description
"HR Portal","vp.hr@example.com","app.owner@example.com","HR Management","Live","High","Internal","Employee self-service portal"
"Talent ATS","vp.hr@example.com","ats.owner@example.com","Recruiting","Live","Medium","Confidential","Applicant tracking"
TAB 3: application_service.csv (Service Portfolio – Business-facing)
-------------------------------------------------------------------
Maps to cmdb_ci_service (Service Type = Business) or cmdb_ci_service_discovered in some orgs
Columns:
- svc_name
- service_type (Business)
- provided_for (Department/Org)
- app_name (backed-by application)
- service_owner (email)
- support_group (group_name)
- availability_slo_pct
- description
Examples:
svc_name,service_type,provided_for,app_name,service_owner,support_group,availability_slo_pct,description
"HR Self-Service","Business","All Employees","HR Portal","svc.owner@example.com","HR Support L1","99.9","Catalog and knowledge for HR"
TAB 4: technical_service.csv (Service Portfolio – Technical)
-----------------------------------------------------------
Maps to cmdb_ci_service (Service Type = Technical)
Columns:
- tech_svc_name
- service_type (Technical)
- service_owner (email)
- support_group (group_name)
- description
Examples:
tech_svc_name,service_type,service_owner,support_group,description
"Notification Platform","Technical","platform.owner@example.com","Platform Eng","Email/SMS push gateway"
"Container Runtime","Technical","platform.owner@example.com","Platform Eng","Kubernetes runtime and ingress"
TAB 5: service_offering.csv (Service Offerings)
-----------------------------------------------
Maps to service_offering
Columns:
- offering_name
- parent_service_name (svc_name or tech_svc_name)
- offering_type (Business/Technical)
- owner (email)
- active (true/false)
- description
Examples:
offering_name,parent_service_name,offering_type,owner,active,description
"HR Case Management","HR Self-Service","Business","svc.owner@example.com",true,"Case intake and handling"
"Email Delivery API","Notification Platform","Technical","platform.owner@example.com",true,"SMTP/REST mail sending"
"Container Hosting (Gold)","Container Runtime","Technical","platform.owner@example.com",true,"Production-grade cluster"
TAB 6: application_component.csv (App Modules)
---------------------------------------------
Maps to cmdb_ci_appl (or subclass)
Columns:
- component_name
- app_name
- component_type (Web, API, Batch, DB)
- version
- owner (email)
Examples:
component_name,app_name,component_type,version,owner
"HR Portal UI","HR Portal","Web","2.3.1","app.owner@example.com"
"HR API","HR Portal","API","1.8.0","app.owner@example.com"
"Talent ATS Core","Talent ATS","Web","5.2.0","ats.owner@example.com"
TAB 7: infra_node.csv (Simplified Infrastructure)
-------------------------------------------------
Maps to cmdb_ci_computer / cmdb_ci_db_instance / cmdb_ci_container, etc.
Columns:
- node_name
- node_class (Server, DB, Container, Cloud Service)
- environment (Prod/Non-prod)
- host_provider (AWS/Azure/Onprem)
- os_or_engine
- owned_by (email)
Examples:
node_name,node_class,environment,host_provider,os_or_engine,owned_by
"hrweb01","Server","Prod","AWS","Amazon Linux 2","ops@example.com"
"hrdb01","DB","Prod","AWS","PostgreSQL 14","dba@example.com"
"aks-prod-app-01","Container","Prod","Azure","AKS","ops@example.com"
TAB 8: relationships.csv (Dependencies & Hosting)
-------------------------------------------------
Maps to cmdb_rel_ci or service_offering_consumer records as applicable.
Columns:
- parent_type (BusinessApp|AppService|TechService|Offering|Component)
- parent_name
- rel_type (depends_on|runs_on|consumes|hosts|calls)
- child_type (Component|Server|DB|Offering|TechService)
- child_name
Examples:
parent_type,parent_name,rel_type,child_type,child_name
"AppService","HR Self-Service","depends_on","TechService","Notification Platform"
"Offering","Email Delivery API","hosts","Server","mailgw01"
"Component","HR Portal UI","runs_on","Server","hrweb01"
"Component","HR API","runs_on","Container","aks-prod-app-01"
"BusinessApp","HR Portal","depends_on","AppService","HR Self-Service"
TAB 9: service_consumer.csv (Offerings consumed by Apps)
--------------------------------------------------------
Maps to service_offering_consumer (or your integration table)
Columns:
- offering_name
- consumer_type (BusinessApp|AppService|TechService)
- consumer_name
- start_date
Examples:
offering_name,consumer_type,consumer_name,start_date
"Email Delivery API","BusinessApp","HR Portal","2024-05-01"
"Container Hosting (Gold)","AppService","HR Self-Service","2024-03-10"
Validation Rules (Pre-Load)
---------------------------
- Mandatory uniqueness: capability_name, app_name, svc_name/tech_svc_name, offering_name, component_name, node_name.
- Owners exist in sys_user; groups exist in sys_user_group.
- Relationship references resolve to an existing Name in prior tabs.
- Don’t create services without an owner and support group.
- Use ‘Technical’ for shared platform layers; ‘Business’ for end-user-facing services.
Load Order (Recommended)
------------------------
1) business_capability
2) business_application
3) application_service (Business)
4) technical_service
5) service_offering
6) application_component
7) infra_node
😎 relationships
9) service_consumer
Quick Starter Example (Minimal Chain)
------------------------------------
- Business App: HR Portal
- App Service: HR Self-Service (Business)
- Technical Services: Notification Platform; Container Runtime
- Offerings: Email Delivery API; Container Hosting (Gold)
- Components: HR Portal UI; HR API
- Infra: hrweb01 (Server); aks-prod-app-01 (Container)
- Relationships:
HR Self-Service depends_on Notification Platform
HR API runs_on aks-prod-app-01
HR Portal depends_on HR Self-Service
Email Delivery API hosts mailgw01 (if used)
Notes & Tips
------------
- Keep “service_type” consistent; use Technical for reusable platforms (per CSDM).
- Don’t model libraries/frameworks as Business Apps—use Technical Services & Offerings.
- Use transforms to resolve Name → sys_id. Keep Name unique to simplify mapping.
- Start small: 1–2 value streams; expand iteratively.
