{"revision":"c10276e953456835cdbb1f3a60d58ae1980be353","document":{"id":2278,"path":"application-development/plan-before-you-build.md","title":"Plan before you build","bundle":null,"doc_type":null,"release":"australia","body":"\n# Plan before you build\n\nEssentially, 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.\n\n## Agentic AI\n\nCreate applications with help from agentic AI. For more information, see [Agentic development on the ServiceNow AI Platform](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/application-development/use-ai-capabilities-in-custom-apps.md).\n\n## Application scope\n\nOne of the first major decisions to make when creating an application is: Should the application be in a private scope or a global scope?\n\nBy 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.\n\nCreate custom business applications in scope unless:\n\n-   The application has to delete global data.\n-   The application needs to change application access settings on multiple default tables to function.\n-   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.\n\n**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.\n\nFor more information, see [Application scope](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/application-development/c_ApplicationScope.md) and [Understanding Application Scope on the ServiceNow AI Platform \\(Whitepaper\\)](https://www.servicenow.com/community/developer-articles/understanding-application-scope-on-the-now-platform-whitepaper/ta-p/2326214).\n\n## Instance selection\n\nProof 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](https://developer.servicenow.com/). The PDI naming format is **dev12345.service-now.com**.\n\nIf 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.\n\nApplications 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.\n\n## Naming decisions\n\nThe 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**.\n\nAll application files within the application inherit the scope, so carefully consider what the value should be. The application name can always be changed.\n\n**Parent Topic:**[Plan your application development](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/application-development/plan-your-app-development.md)\n\n"}}