Plan before you build

  • Release version: Yokohama
  • Updated January 30, 2025
  • 2 minutes to read
  • Summarize
    Summarized using AI
    This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.

    Summary of Plan before you build

    This guidance helps ServiceNow customers effectively plan application development by highlighting key decisions and best practices before building applications. It stresses the importance of understanding irreversible actions, application scope selection, instance choice, and naming conventions to ensure smooth development, deployment, and maintenance.

    Show full answer Show less

    Application Scope

    Choosing the correct application scope is crucial. By default, applications are created in a private scope, restricting access to artifacts within that scope and enabling benefits like source control integration and delegated development. Global scope applications have broader access but lack delegated development and should only be used when:

    • Applications must delete global data.
    • Applications need to modify access settings on multiple default tables.
    • Applications require APIs accessible only in the global scope (global passthrough script includes are insufficient for this need).

    Scoped applications enhance security and modular development, so custom business applications should generally be created in private scope.

    Instance Selection

    Proof of Concept (PoC) applications should be built in separate instances such as sandbox or Personal Developer Instances (PDIs) to isolate experimental work. PDIs follow the naming format dev12345.service-now.com. PoC applications must be rebuilt rather than imported into the organization’s main development instance to avoid namespace conflicts. Production applications should be developed within the organization’s official developer instance to comply with established testing and deployment workflows.

    Naming Decisions

    Application naming influences scope assignment, which is critical as the scope uniquely identifies all application artifacts. The scope format is x[company code][applicationname], limited to 18 characters. For example, an application named “Legal Request” might have the scope xacmelegalreque. Since all application files inherit this scope, it should be chosen carefully upfront. However, the application name can be changed later if needed.

    Essentially, an application is a digital program that supports user tasks. Some actions you take when building an application might be irreversible. Be aware of these actions and plan for them in advance.

    Agentic AI

    Create applications with help from agentic AI. For more information, see Use agentic AI to build and edit applications.

    Application scope

    One of the first major decisions to make when creating an application is: Should the application be in a private scope or a global scope?

    By default, applications are created in their own private application scope. Applications in a private application scope restrict access to their application artifacts so only application artifacts in the same scope have full access to create, modify, remove, or run application data. Scoped applications can use source control integration and delegated development. Globally scoped applications cannot use delegated development.

    Create custom business applications in scope unless:
    • The application has to delete global data.
    • The application needs to change application access settings on multiple default tables to function.
    • The application needs to access APIs only available in the global scope. Creating a globally scoped passthrough script include would not be enough for this requirement.
    Note:
    Globally scoped passthrough is a script include created in a global scope that is accessible from the private scope. The passthrough gives access to a global API that is not accessible by default from a private application scope.

    For more information, see Application scope and Understanding Application Scope on the ServiceNow AI Platform (Whitepaper).

    Instance selection

    Proof of Concept (PoC) application builds can and should be built in a separate instance from a regular development instance. The instance can be a sandbox instance or a Personal Developer Instance (PDI) from the Developer Site. The PDI naming format is dev12345.service-now.com.

    If using an instance with a different scope namespace, rebuild the PoC applications in the organization’s development instance. Do not import the applications into the organization's development instance. The scoped namespace for the applications will not match the scoped namespace for the company’s development instance.

    Applications the organization intends to use (i.e. production apps) should be created in the organization’s developer instance, so the application can follow the organization’s testing and deployment process.

    Naming decisions

    The application name matters. ServiceNow suggests a scope based on the application’s name. Application file names are appended to the scope to uniquely identify application resources in an instance. Scope is in the format: x_[company code]_[application_name] with a maximum of 18 characters. For example, an application name Legal Request has a suggested scope of x_acme_legal_reque.

    All application files within the application inherit the scope, so carefully consider what the value should be. The application name can always be changed.