Domain separation and On-Call Scheduling
Summarize
Summary of Domain separation and On-Call Scheduling
Domain separation is integrated with the On-Call Scheduling application in ServiceNow, allowing organizations to segment data, processes, and administrative tasks into distinct logical domains. This ensures that support teams can manage on-call shifts while maintaining strict data visibility and access controls based on domain membership. The feature is designed to support multi-tenant environments, enabling service providers to configure and manage schedules separately for each customer within a single instance.
Show less
Key Features
- Domain-Aware Application Properties: On-Call Scheduling respects domain boundaries, ensuring application properties and business logic are correctly applied per domain.
- Schedule Creation and Management: Users with the rotaadmin role can create schedules within their domain using the Create New Schedule wizard. All related records inherit the domain from the master record to enforce separation.
- Domain Separation in Tables: Key On-Call Scheduling tables such as Shift, Rotation Escalation, and On-Call Group Preferences are domain-separated, with some tables using the domainmaster attribute to derive domain association from related master records.
- Access Control: End users, including those with roles like itil or rotaadmin, only see shifts and schedules within their assigned domain.
- Support for Multi-Tenant Scenarios: Service providers can configure minimum viable product (MVP) business logic and data per tenant, accommodating different requirements such as mandatory comments on record closure for specific tenants.
Key Outcomes
- Improved data security and segregation for organizations managing multiple tenants or groups within one ServiceNow instance.
- Consistent on-call scheduling functionality regardless of domain separation, ensuring business continuity and operational efficiency.
- Granular control over user access to on-call schedules and escalation processes, reducing risk of data leakage across domains.
- Ability to tailor on-call processes and policies per tenant or domain, supporting diverse customer requirements in shared environments.
Domain separation is supported in On-Call Scheduling. The On-Call Scheduling application helps you to ensure that dedicated support team members are available to resolve issues as they arise. Domain separation enables you to separate data, processes, and administrative tasks into logical groupings called domains. You can control several aspects of this separation, including which users can see and access data.
Support level: Standard
- Includes all aspects of Basic level support.
- Application properties are domain-aware as needed.
- Business logic: The service provider (SP) creates or modifies processes per customer. The use cases reflect proper use of the application by multiple SP customers in a single instance.
- The instance owner must configure the minimum viable product (MVP) business logic and data parameters per tenant as expected for the specific application.
Sample use case: An admin must be able to make comments required when a record closes for one tenant, but not for another.
For more information on support levels, see Application support for domain separation.
On-Call Scheduling overview
On-Call Scheduling behaves the same with domain support as it does without domain support. Customers have the same ability to create and maintain on-call shifts.
A shift includes a selection of users from a group. It uses the base-system Advanced Schedules Support plugin to specify when the shift is active.
How domain separation works in On-Call Scheduling
With domain separation enabled, a user with the rota_admin role uses the Create New Schedule wizard to generate schedules in the group's domain. All generated related records for the new schedule are created with a matching domain.
This setup is enforced with a combination of the domain field and the domain_master attribute. The attribute is used to derive the domain of the record from the master record. For the roster table, it derives the domain from the associated shift record.
On-Call Scheduling domain-separated tables
- Shift [cmn_rota]
- Rotation Escalation [cmn_rota_escalation]
- Shift Escalation Set [cmn_rota_escalation_set]
- Shift Escalation Step Definition [cmn_rota_esc_step_def]
- On-Call Group Preference [on_call_group_preference]
- On-Call Contact Source [sys_on_call_contact_source]
- On-Call Group Template [sys_on_call_group_template]
- On-Call Shift Template [sys_on_call_shift_template]
- On-Call Template Contact Attempt [on_call_template_contact_attempt]
- On-Call Template Contact Preference [on_call_template_contact_preference]
- On-Call Template Escalation Policy [on_call_template_escalation_policy]
- On-Call Template Escalation Step [on_call_template_escalation_step]
- On-Call Escalation [on_call_escalation]
- On-Call Escalation Level [on_call_escalation_level]
- On-Call Escalation Contact Attempt [on_call_escalation_con_attempt]
- On-Call Escalation Notification [on_call_escalation_comm]
On-Call Scheduling tables that use the domain_master attribute
- Roster [cmn_rota_roster]: domain_master=rota
- Rota Member [cmn_rota_member]: domain_master=roster
- Roster Schedule Span [roster_schedule_span]: domain_master=schedule
- Shift Escalation Set [cmn_rota_escalation_set]: domain_master=cmn_rota
- Shift Escalation Step Definition [cmn_rota_esc_step_def]: domain_master=cmn_rota_escalation_set
- On-Call Escalation Level [on_call_escalation_level]: domain_master=escalation
- On-Call Escalation Contact Attempt [on_call_escalation_con_attempt]: domain_master=escalation_level
- On-Call Escalation Notification [on_call_escalation_comm]: domain_master=contact_attempt
To learn more, see Domain support for schedules
On-Call Scheduling use cases
- On-Call calendars
- On-Call schedules
- My Schedule reports
- Schedule reports
- Escalations