What exactly are Scoped Applications and what are their advantages in ServiceNow? To set the stage, we’ll begin with what a scoped application is, discuss some of the benefits using scoped applications vs. developing in the global scope, and then finally we’ll talk through some of the common use cases for scoped apps.
What is Application Scope?
To begin, all applications, tables and scripts have an application scope. ServiceNow began offering the scoped application model starting with the Fuji release of ServiceNow back in 2015.
How do I find the Scope of a Given Table? A Script?
To quickly identify the scope of a table as an administrator, open the tables list view, open the table in question and then observe the “Application” name, which will present in the top right of the form by default. In the case of the “Task” table, you’ll see the application is global. In the case of another out of box table, “Guided Setup Content”, you’ll see the application is “Guided Setup.”
For identifying the scope of a script, the simplest way is to open the script up and observe the “Application” name, which will present in the top right of the form by default.
If you are in a scope that differs from a scope of a record, ServiceNow will prompt you at the top with details regarding the application of the current record and your currently selected application. It will also provide a hyperlink to change your application scope so you can make any necessary adjustments.
What are the advantages of scoped applications?
Now that we know what a scoped application is, and how to identify the scope of a record, what are the benefits of scoped applications? Here are a handful of the advantages of scoped applications.
Advantage 1 – Versioning
Using a scoped application you can create a “version” of an application, including all of the necessary configuration, development and documentation within a scoped “package” of the application. This simplifies the process within ServiceNow of creating update sets within a development environment, capturing the changes being performed and then retrieving, previewing and committing the update sets to additional environments. In the event of providing a scoped app to customers via the ServiceNow store, the versioning will also provide customers with the ability to receive notifications if a new version is released.
Advantage 2 – Code Isolation
Using a scoped application provides protection from the native ServiceNow environment, as well as the scoped application by nature of the isolation provided by scoping. By default, scoped applications cannot interact with one another without explicit permission. This ensures that the likelihood of unintended consequences with scripts and business rules between applications is limited.
Advantage 3 – ServiceNow Store
Using a scoped Application will allow you to submit your work to the ServiceNow store, where the application can be downloaded and deployed to customers. While some Store applications are free, many offer a paid download or licensed download feature to provide additional revenue to ServiceNow technology partners.
Advantage 4 – Intellectual Property Protection
Using a scoped application provides advantages not just to the platform and ServiceNow operations staff, but also to the developers and creators of the Intellectual Property. Within a scoped application you can configure scripts to be read only or hidden entirely, protecting your complex and or protected work via obfuscation using ServiceNow as the bridge.
Advantage 5 – The ServiceNow Studio
This is a huge quality of life improvement for long-time users of the ServiceNow product. The ServiceNow studio allows for a hierarchy of your application files, as well as tabbed browsing between records. These two creature comforts allow for significantly improved productivity for developers working on scoped applications, rather than building out their work in the global scope using the standard ServiceNow platform interface.
Common Use Cases
The most common use case for the scoped app is developing brand new functionality in the ServiceNow platform that you want to provide with versioning and code isolation. This could be an application for your business, or it could also be an application that you plan to sell or license on the ServiceNow store.
Scoped apps are particularly useful if you’re looking to do code reviews. You can make the changes in a controlled way, without running the risk of unexpected broader changes to the global scope which may be trickier to rectify.
Another common use case is legacy apps developed in ServiceNow being converted from global scope to scoped applications. This can be helpful to gain the advantages provided by scoped applications, such as versioning, code isolation, adding the application to the store, and importantly, protecting intellectual property within scripts.
In conclusion, there are many benefits to using the ServiceNow scoped application model, and we’ve just talked through a few. You can version your application to simplify maintenance and upgrade, isolate your code to reduce or eliminate unintended code interactions, add your app to the ServiceNow store to boost revenue or provide a service, protect your intellectual property and utilize the ServiceNow studio to improve developer productivity.
Are you a scoped application developer? Are you considering taking the plunge into scoped apps? Or are you a scoped application veteran with opinions on the advantages and disadvantages of scoped applications? We’d love to hear from you! Please let us know in the comments or get in touch with if you’d like to discuss how Quality Clouds can help you build a stronger platform.