What are best practices when developing a service portal?

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎02-02-2020 03:09 AM
Hello!
I have talked to a SerivceNow customer lately who has started to develop a service portal to create and manage requests. They ran into some troubles, like
- Developers had issues overwriting their changes (on widgets and scripts)
- Hardly reuse of components/widgets
- Performance issues when embedding widgets
- Poor development performance
I believe there are solutions. Therefore I am interested what are best practices when building a new service portal.
- Do you build it in a scoped application?
- Do you use update sets or application repository to release new versions?
- Do you use source control integration? How (branching)?
- Is it better to use the REST API or server scripts from widgets?
- What has to be considered in regards to platform upgrades?
Thanks a lot for any answers. Chances are high that my team has to build a service portal as well. And I don't want to run into the same issues.
Kind regards
Thomas
- Labels:
-
Service Portal Development
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎02-02-2020 03:15 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎02-02-2020 04:30 AM
Hi Onkar,
thanks for your help. This article is definitely a good read. Though it does not cover the development process/release technique. Maybe someone has suggestions for that.
Kind regards
Thomas
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎02-03-2020 04:18 AM
Hi Thomas,
There are few links available on community. Just check with it. I hope it will help you.
Thanks.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎02-02-2020 06:19 AM
Do you build it in a scoped application?
- yes, obviously scoped
Reasons:
IMPROVES INSTANCE SECURITY
ENABLES VERSIONING AND GOVERNANCE
CAN BE UNINSTALLED EASILY WITHOUT LEAVING CODE BEHIND
More details on: https://blog.staveapps.com/application-scope-in-servicenow
Do you use update sets or application repository to release new versions?
- Anything of your choice but, you should follow the same till end.Do not combine the usage of both Update Sets and the Application Repository for scoped app development. This will result in numerous issues, including skipped changes, commit errors, and more. Once you have installed an application from the Application Repository, you must continue to develop and publish to the Application Repository for all future development. If you decide to develop an application using update sets, you must continue to use that method exclusively.
Do you use source control integration? How (branching)?
- NO, I don't think source control integration is needed, because ServiceNow already has its own code migration,management, versioning feautres like Update sets, Application repository, Team development.
Is it better to use the REST API or server scripts from widgets?
Depends on your use case!! ..Main difference between them are:
c.server.update(), c.server.get(), $scope.refresh() will refresh the scope.
$HTTP doesn't refresh the scope.
so based on requirement anyone of above should be choosed.
To understand the difference in real time scenario check the below link:
https://community.servicenow.com/community?id=community_blog&sys_id=1faa60a3dbb9a38011762183ca9619d6
What has to be considered in regards to platform upgrades?
You don't need to worry about upgrades if you follow the definition "STAY OUT OF BOX"!!
How to Stay “Out of Box” with your Service Portal?
Check the below link for details : https://serviceportal.io/out-of-box-with-service-portal/