ServiceNow

How ServiceNow’s ‘Virtual Agent’ can assist your organisation: Part 4

How ServiceNow’s ‘Virtual Agent’ can assist your organisation: Part 4

This blog entry is part of a four-part blog series on how ServiceNow’s Virtual Agent can assist your organisation.

See Part 1 HERE

See Part 2 HERE

See Part 3 HERE

Part 4: Experiences Matter

Through this blog series I have spoken about, through Virtual Agent, it is easier to empower users, create more opportunities for contactless resolution and create better operational insights and accuracy.

This is to achieve an end goal.

This end goal is to achieve a better service experience for users and customers. Virtual Agent really drives this home by focusing on the elements mentioned throughout this blog series. This is largely due to the Virtual Agent’s ability to evolve as your employees and organisation does. It allows a user’s or customer’s experience to be front and centre, as it provides the opportunity to improve consistently, even if there is staff turnover.

This is done by bringing across the knowledge from previous employees to the current and future employees as a sort of synthetic genetic history (through the Virtual Agent's flows). Although in theory, staff turnover should happen less as agents can refocus on more engaging work due to the virtual agent taking over most of the daily mundane work. These blog entries have largely been focused on positives and the next point has only been touched upon previously, but a Virtual Agent is there to offer another option, not replace completely, for users to interact with the service desk. The key point there is that it is an option.

Offering Options

These articles have been centred around the reasons why Virtual Agent is a useful addition to your organisation and how it can dramatically improve the service experience, but Virtual Agent should never replace all other avenues that users can use to access the information or raise issues.

Some users know where to look, so forcing them to use the Virtual Agent would frustrate them. Not only that, sometimes it is an emergency, so being forced to go down the Virtual Agent path will just delay something that should not be delayed.

It is important not to forget the fact that accessibility is also important, so offering a phone helpline may also be helpful for users with poor eyesight or bad internet connections. In addition to this, there are some queries that are just so specific that doing anything other than chatting to a person will not be efficient or beneficial.

As a result, a Virtual Agent should not replace all other options as an attempted cost cutting measure or in an attempt to be “cutting edge”.

It may be tempting thought as your Virtual Agent matures that you consider outright replace certain options, but this should not be done without ensuring there are other clear options for your user base and that the service experience is not negatively impacted as a result.

Evolving Your Business

When you begin your Virtual Agent journey though, it may not solve the issue alone, but can gather more information before handing it off to a person via web chat or otherwise, which ensures the service desk can focus their efforts on more complex issues or necessary contact.

An example of this is serving the users better who need to user a different resolution method, such as a phone call. When a Virtual Agent becomes a more prominent element within you organisation however, there will be time for people to work on other more, previous considered “only if time persists” projects.

This is important for several reasons, but largely because it opens agent’s time to be able to work on a variety of other initiatives in the organisation. They can up-skill and learn skills to provide newer and more useful services to their customers. Service agents can strive to become more user experience focused and become experts in understanding how to help customers, as opposed to regurgitating the same information day in and day out.

Your business will be able to review new initiatives to either become more profitable, by being able to focus on what you currently offer or expanding and investigating options that previously seemed untenable due to resourcing constraints. Chat bots and Virtual Agents tend to be over-hyped, but using it correctly can be a huge benefit to your organisation.

Even if the Virtual Agent only helps in evolving your business only slightly, some of that hype is warranted as that may be enough to bring your organisation to the next level.

Summary

Over the past couple of months, this blog series has largely been focused on positives, but with every positive and idealistic plan in mind, it is important to have a dose of realism, which this blog entry focused on.

That’s not to say Virtual Agent is not a worthwhile endeavor, quite the contrary, but starting a journey with only the positives in mind can be potentially damaging to your organisation. In summary, in the first blog entry we focused on the concept of empowerment. Not only empowering users, but also service agents and the organisation as a whole.

This was further highlighted in the second entry when we focused on the user and service agent level by discussing the concept of contactless resolution. From a user perspective, this was being able to raise issues out of hours and solve it on their own when is convenient for them, without staying on hold whilst they are asked to turn their machine off and on again.

From an agent’s perspective, contactless resolution allowing service agents to work on different projects and stop working on mundane tasks day in and day out and now being able to focus on service experience. Then focusing on empowerment on an organisational level, as discussed in the third blog entry as a virtual agent assists with improving operational insights and accuracy. This meant using newly gathered and accurate data to improve the experience even further and potentially solve more issues proactively.

Finally, this article highlighted the fact that even though Virtual Agent has all these benefits, this is a journey that needs to properly be planned for and not used as the singular point of entry for a user or customer. This journey can be made easier by people who have helped other organisations down this journey, as they can bring their experiences and suggestions in the best way to introduce it slowly and effectively.

Without making this sound like a sales pitch, this is often where consultants come in to play and can recommend a good starting point to start this journey and equip your service agents for the future. Regardless however, I hope this blog series has been informative and has ensured that your customers and users are more a focal point than ever. Thanks for reading!

 

Thank you for taking the time to read this four-part series. If you have not already, take a read of the earlier parts and see what you missed!

If not, reach out to us at JDS Australia if you want to begin your virtual agent journey. In doing so, we hope that we can assist in empowering your people, allowing a higher rate of contactless resolution, improving operational insights and accuracy and ensuring that that experience of your users, matter.

Posted by Cameron Chambers in Blog, ServiceNow
How ServiceNow’s ‘Virtual Agent’ can assist your organisation: Part 3

How ServiceNow’s ‘Virtual Agent’ can assist your organisation: Part 3

This blog entry is part of a four-part blog series on how ServiceNow’s Virtual Agent can assist your organisation.

Part 3: Operational Insight & Accuracy

Every day that a service desk is operational, it creates data, both useful and not so useful.

As time continues though it can become quite overwhelming and the data that was once useful can be poisoned with data that makes it less useful. People tend to have different opinions, differing working styles and language quirks that is amplified when there is staff turnover.

As a result, the data they create is only as insightful as its consistency when dealing with a large amount of it.

Accuracy

Data accuracy and data in general is one of the most common issues in any organisation.

This can be due to several reasons, but there are some ways that inaccurate data that gets in the system can be avoided. When entering data repeatedly, it can be mundane, boring and although not done purposely, accidents can be and will be made. Not only this, individuals will normally only enter the information they want to or need to, so some insights that would be useful to know or capture simply won’t be. In making that more and more information mandatory however, it may even cause more mistakes as it is more work that does not appear immediately valuable to the people who enter it.

These are just some of the things that could be alleviated in a few different ways if required.

Virtual agents can assist in doing this entry without error, without complaints and because it will just do the same thing over and over, the mistakes will occur when done manually should not occur. This makes the resulting data more accurate. It is not only that however, it is something as simple as if someone has been worked on and has been resolved without contact.

You can track this, and the record will close once the conversation has closed with the virtual agent. In day to day work, you may be working on something that has been resolved, but you then go to lunch and forget to close the record, causing SLAs to breach and information to be forgotten. Once again, another possible data point that is compromised.

As a result, the way we attempt to resolve requests without contact needs to evolve, as the added complexity in certain issues of today’s world are not answerable with the previous methods described.

Insights

Accurate data and information is all well and good, but what is the point if it does not offer any real insight in how to improve your processes and business? This is likely because a lot of the information that is commonly captured is done only for contractual reasons.

Agents are not focused on improving service, because trying to capture this information and making it meaningful is a long and drawn out process This is often simply because everyone thinks differently and may enter the same different information differently.

Having a virtual agent alongside the journey though can assist in making this information consistent and capturing more information along the process in a logical matter as standard. Let’s think about the example of a few employees who are having issues connecting to the VPN.

In the various calls that had been made regarding VPN issues this week, Sam, Roger and Cameron have all been resolving these in different ways, but it has all been down to the singular issue. Sam has been saying it is because people are using their wrong username to connect to the VPN. Roger has been saying that people are attempting to use their email address to use the VPN. Cameron has been saying that people are not using their windows login username to use the VPN. If you read this on face value, they all appear similar, but requires someone that understands the issue to understand it it is all related to the same key issue.

Let’s just say now that these phone calls have now become a virtual agent flow that Sam, Roger and Cameron have designed with their years of experience on the service desk. They have created a flow talking about common VPN connectivity issues and listing off possible solutions in a logical step by step and conditional manner. In this flow, they also asking after each troubleshooting step if it helped or not. As the next person who has VPN connectivity issues continues along the process, they too have an issue that relates to the above scenario.

Now the virtual agent is answering it and provides the solution and tracks that a misunderstanding in what username should be used as a login method is extremely common and easily reported against. This is the case as the wording is consistent now. As a result of this, Sam decides that before people even request VPN access, he would highlight what format the username should be. In the meantime, Roger and Cameron are looking at what other common support issues they can resolve through the virtual agent and now have a more complex skill set then they did before through this design and continual improvement process.

This issue went through a few steps to get to this point but now is being proactively resolved by Sam highlighting the username format. As a summary, these steps were:

1. Reactive resolution: Numerous people called the service desk talking about service desk issues and spoke to Cameron, Sam and Roger about VPN connectivity issues.
2. Contactless resolution: The service desk realized this coming up and spoke about it in their daily standup, so Cameron, Sam and Roger created a virtual agent troubleshooting flow, capturing when this issue has been resolved.
3. Proactive resolution: Sam notifies users before requesting VPN access they need to enter a specific username and no more support calls are raised, minus the few that do not read the necessary steps correctly.

As issues progress towards the proactive resolution stage, the NPS and CSAT scores of the service desk improves, as less and less people need to wait in a queue to have their issue resolved or wait until they are answered from an email. This scenario, although may seem as a best case and overly convenient for the sake of a blog entry, is surprisingly a common situation that people find themselves in and can be brought across different less conveniently written scenarios. Even if the proactive resolution stage does not occur and the contactless resolution only occurs in half the scenarios, it is still a net improvement of never attempting to solve the issue. Out of the box, ServiceNow’s virtual agent can hook into its powerful survey application, so understanding what the service experience is easy to gauge as the weeks continue.

 

In the long run however, that should be a focus for the organisation as virtual agent assists in improving the service experience and as it should be highlighted, this matters.

In the fourth and final part of this four-part blog series, we will discuss just that, how service experience matters.

In the meantime, check out this great Virtual Agent demo from ServiceNow.

Posted by Cameron Chambers in Blog, ServiceNow
How ServiceNow’s ‘Virtual Agent’ can assist your organisation: Part 2

How ServiceNow’s ‘Virtual Agent’ can assist your organisation: Part 2

This blog entry is part of a four-part blog series on how ServiceNow’s Virtual Agent can assist your organisation.

Part 2: Contactless Resolution

Contactless resolution, no contact resolution and zero contact resolution are three ideas that are similar in concept, but are all trying to get essentially the same result.

This concept is not new at all, despite it getting more recent attention. Searching for zero contact resolution in my search engine, brings up a link to something created in 2008 discussing this very topic.

What this concept means and how it can be made a reality though has evolved and will continue to evolve as time continues as the technology to support this evolves.

What Does This Mean?

Contactless resolution means being able to resolve something without contacting a person. In other words, getting a result from self-service and without requiring involvement from another person.

This is different to proactive resolution, which is the ideal scenario and realistically this is something built upon years of experience and data. There will always be issues and requests that cannot be proactively resolved though, as people will always have questions and issues that cannot be predicted or have not been raised before.

Historically this was done through expecting a user to find a knowledge article and using the information from that knowledge article to solve their issue. Before that and outside of anything IT related, you could think of the opening times posted on the window of a local café as a method of contactless resolution.

You could go into a building to ask the opening time from a person, but in terms of contactless resolution this would mean reading a poster outside of it to get the same result.

However, as we as a species become more advance, so do our questions and issues.

As a result, the way we attempt to resolve requests without contact needs to evolve, as the added complexity in certain issues of today’s world are not answerable with the previous methods described.

Virtual Agent

This is where virtual agents come in.

A knowledge article and a poster on a window are all well and good for simple questions and queries, but it does not really evolve as the query evolve. It is a static bit of information. Also, these sources can be information overload (a bit like these blog entries some would say), so are not effective for complex questions. Imagine if you will that you are having printer issues. Historically, you would have searched in search engine with your printer make and issue and browsed around 10 websites, until you realise you do not have the permissions on your machine to be able to resolve this issue alone. Either that, or you will call the service desk, only for them to provide you a knowledge article with a step by step guide that they developed using the official website as a guide. Both “may” work but cannot evolve as your situation evolves without continual contact.

Let’s look at it from a ServiceNow virtual agent point of view.

Fortunately, your organisation has made the effort of saying what printers are assigned to what person and locations in your ServiceNow instance. You browse to your Service Portal and decide to “try” the virtual agent experience. You tell the virtual agent that the printer will not turn on and that takes you to the virtual agent topic related to printer issues. The virtual agent confirms you are working from a certain location with you and then understands that the printer you are having issues with is from a certain manufacturer (as your configuration management database is up to date and your user record says you are working from that location).

In doing this, it can provide step by step trouble shooting issues specific to that printer within a matter of seconds, simply from you typing your initial query and confirming your location. You try a few different steps and then get asked if it was able to solve your issue. It does not, however provides another solution that does. The virtual agent asks if the new recommendation helped and by saying yes, you record this information that then can be reported against to improve the virtual agent in the future.

All in all, this saves you the time of waiting on the phone waiting to talk to IT support, trying to find a website on your own and saves the service desk agent time. A simple sign may help with the opening hours of a business, but won’t help in deciphering complex issues, empowering users to solve their own issues and tracking what the common solutions are to issues to potentially proactively solve them in the future.

However, what does this mean for the service agent now that a “robot” has stolen “their job”.

Service Agent Concerns

One of the most common concerns when looking into virtual agents is how it may impact your service agents’ daily activities. It may not directly impact them, but they may feel as though that their day to day activities will change or they will simply be made redundant.

Yes, their day to day activities will change, but organisations can use this newly procured time to put their service agents to work in improving the virtual agent experience, improving their overall service experience and more importantly improving their business with this newly found time.

Service agents are just that, agents and individuals in place to provide a service to their customers. What can happen that instead of taking the same phone call day in and day out can therefore be exchanged with improving their applications to perform better and creating new services for their end users.

This will improve employee satisfaction and as a result, the retention of employees as it provides a more fulfilling job experience.

Their jobs will not be filled with mundane tasks that require data entry for the sake of data entry, Operational insights will also be more accurate to provide an even better service to their end users as it is no longer manually entered.

Although contactless resolution appears like a negative to the service agents without investigating it, it becomes a positive when it is implemented.

 

This is what really highlights the potential results you can get with a Virtual Agent at all levels of the business.

In the third part of this four-part blog series, we will discuss operational insights and accuracy.

In the meantime, check out this great Virtual Agent demo from ServiceNow.

Posted by Cameron Chambers in Blog, ServiceNow
How ServiceNow’s ‘Virtual Agent’ can assist your organisation: Part 1

How ServiceNow’s ‘Virtual Agent’ can assist your organisation: Part 1

 

This blog entry is part of a four-part blog series on how ServiceNow’s Virtual Agent can assist your organisation.

 

If you talk to someone about the present state of the IT industry, artificial intelligence, virtual agent and chatbots are topics that commonly surface in one way or another.

From forcibly having to “deal” with it while trying to raise a support query from your internet provider to something less prominent to having a popup in the bottom right part of your screen asking if there is anything they can help with.  These concepts have become front and centre in the drive to provide a better customer experience to users.

They are often get implemented with the best intentions, but when not implemented with the right strategy can turn a previously acceptable user experience, to a frustrating one where you are constantly getting distracted by notifications.

  • Is implementing a virtual agent the right thing to do?
  • Will it really provide a better experience for users?
  • Will it improve satisfaction for all members of my organisation and my customers?

In a word, yes.  This blog series will discuss four main topics that should be front and centre when talking and thinking about virtual agents for your organisation, as well as some small bits of wisdom to take on your journey.

We at JDS Australia would love to help you on this journey, and fortunately ServiceNow has a great Virtual Agent out of the box that you can utilise.

Part 1: Empowering People

When Virtual Agent comes up in conversation, the concept of empowerment comes up but normally only focusing on the end user.

In reality though, Virtual Agents help empower both sides of the coin.

What does this mean though?

How can virtual agents empower both end users, service agents and the organisation and their customers at large?

The End Users

To start, let’s start with a thought experiment.

You and everyone else reading this article is an end user somewhere.  Whether for your internet service provider, mobile provider or even as a patron of your favourite fast food chain, you have experience as an end user and will have seen an evolution in how this is done.  In your head, what do you consider a good experience? What do you consider a negative one?  What do you think would help that experience?  Fast food chains introduced self-service terminals where you can order without talking to someone and various telecommunication organisations introduced Virtual Agents, both with varying levels of success.   Now think about the place that you work or the customers that you serve.  What is something you answer day in, and day out based on a question that is commonly asked?

Frankly speaking, Virtual Agents have a bad habit of being introduced and forced onto users, whereas really it can be introduced to empower users, by offering them options and saving time.  If we investigate the last question in our thought experiment, the joke answer is “have you turned it on and off again”. It may be seen as a joke, but yes, it sometimes helps (despite our reluctance to do it before calling).

In a more complex example, what about access and permissions to an external system?  The most common response is to call up IT or ask your friendly IT support team to do it off the record, but what happens if you could do it yourself?

Various systems and applications offer a range of web services that you can hook into with ServiceNow via an integration.  Through these integrations and details you may find on a user record, you could simply automate it.  Where does Virtual Agent play into this though?  Before getting access to a system or understanding permissions, there are often a variety of questions based on the application you are speaking about.  The Virtual Agent can ask these questions first and respond based on the answers provided.  It may not necessarily remove all human interaction to make the request possible (such as requiring approvals), but it will handle the questions that need to be asked that may cancel a request before it is even raised.  Saving the time of the end user, as they no longer need to make time for a phone call and saving the time of the service agent, as they no longer have to spend the time to have the conversation, which includes the time to get back into the groove of what they were working on.  This gives the end user the feeling as they solved their own issue and provides them with the confidence to try to solve this issue first without calling the help desk.

What does this mean for the service desk agent though?  If they are not on the phone with end users, how does this empower them?  Doesn’t that make their job redundant?

The Service Agents

In a word, no.

In fact, having the various service agents involved to in the investigation of how they can better serve the end users is more important than ever.  These are the people who now can spend more time on more complex questions and fulfilling the manual requests when needed and know what is best when serving the end user.  The Virtual Agent empowers these users even more than the end users, as now they can be involved in the development and continual improvement of the Virtual Agent.  This provides the service agents the power to be directly involved in the improvement of their services to the end users but using their experience to ask the questions they need to, to get a better outcome.

That is the main opportunity for Virtual Agent when the service desk agent is directly involved.  They can help in improving the questions and topics that a Virtual Agent asks the end user, so they get the information that they need to resolve the query first time as they continually improve it.  That is what is important to note and the reason why service agents do not simply become redundant.  Implementing a Virtual Agent is not a one and done, it’s a continual process to ensure that as your understanding of your newly empowered end users improves, so the mean time to resolve tickets improves.  Up to the point that this no longer even becomes a metric for some requests, as through asking the correct questions, these issues can be resolved without even contacting the service desk.  This is a concept known as contact-less resolution and will be spoken about in more depth in the next part of this blog series.

So if the end users now feel empowered, as they are now able to solve more issues in their own time, out of hours and without picking up their phone and service agents now can focus on improving these experiences and can spend more time on more complex tasks, what does this mean for the organisation as a whole?

The Organisation

The organisation itself also is empowered as a result of this.  People now feel a sense of autonomy as they are not necessarily required to spend their work hours doing what they use to, as the Virtual Agent assists in alleviating some of the needs around this. The organisation can bring forth new initiatives to improve their service further.  The organisation can direct users down the path they need them too to achieve their goals… but the change on the organisational level is not so much about empowerment, but how the operational insights can move your organisation forward.  That topic however, will be discussed in a later part of our blog series.

What is the end goal when it comes to implementing a Virtual Agent?

How can this can be taken even further?

In the next part of this blog series, we'll cover contact-less resolution.

In the meantime, check out this great Virtual Agent demo from ServiceNow!

Posted by Cameron Chambers in Blog, ServiceNow
How Field Service Management can help your customers

How Field Service Management can help your customers

The Challenge

Field agents are typically the face of most organisations, yet for many businesses, those resources and their day-to-day duties have been overlooked when it comes to workflow optimisation.

Customer service centres and help desks are rarely aligned with the technicians responsible for addressing issues in the field, which can result in multiple calls, emails and at times, tickets or customer records being produced for a single incident or request.

This lack of process cohesiveness can hamper the productivity of those in the field, as well as negatively impacting your the customer satisfaction rating of your business.

The Solution

The ServiceNow Field Service Management (FSM) application helps organisations manage work tasks performed on location, with criteria such as skills, availability and geography (among others) able to be referenced when attempting to match an agent with an actionable task.

The application's dynamic scheduling capabilities optimise the assignment process, while its intuitive workflows and user-friendly design ensures it can easily operate alongside your ITSM and CSM functions.

The Field Service Management Workflow

With its connection to the ServiceNow business and service management modules, the Field Service Management application provides a single, connected platform.

Integration Options

Looking to create a work order request from a customer service case?

Integrating Field Service Management with ServiceNow's Customer Service Management (CSM) offering can do just that!

The ability to better manage deployments in the field can be done seamlessly with a Project Portfolio Management (PPM) integration.

FSM also provides highly configurable integrations for functions such as:

  • Workforce Management
  • Parts and inventory
  • Work order creation (from an external system)
  • Quoting
  • Cost and invoicing

Mobility

One of the most reported challenges flagged by field users is (yep, you guessed it) mobile connectivity.

Even without an internet connection, users are still able to plan, work on and complete tasks.

Check out the video below to see how!

 

Conclusion

To learn more about how JDS can start your Field Service Management journey, contact our team today on 1300 780 432, or email contactus@jds.net.au.

Our team on the case

Ensure IT works

Cameron Chambers

Senior Consultant

At JDS Australia, our ServiceNow team thrives on a foundation of communication, collaboration and a holistic approach to solution design & platform architecture.

My passion for the ServiceNow platform and experience in both Enterprise Service Delivery & IT Operations ensures that the customer experience is prioritised throughout every engagement.

We are focused on:

– ServiceNow integration
– Platform implementation & enhancement
– OOTB compliance and the reduction of technical debt
– Application development & innovation
– Automation & continuous service improvement
– Accelerated performance testing
– Enhancing the end user & customer experiences

Our team is engaged across all major ServiceNow product lines, specialising in:

– Customer Service Management (CSM)
– IT Service Delivery (ITSM)
– IT Business Management (ITBM)
– Human Resource Service Delivery (HRSD)
– Governance, Risk & Compliance (GRC)
– IT Operations Management (ITOM)

Posted by Cameron Chambers in Blog, ServiceNow
ServiceNow Upgrade Process

ServiceNow Upgrade Process

 

With ServiceNow committing to two major releases a year and only allowing customers to operate on n-1, having a well understood upgrade process is not a luxury, it’s a necessity.

To reduce the risk of disruption to the business during upgrades, JDS recommends organisations adopt a clearly defined strategy for upgrades.

  1. Prepare Environments
    • Back up any update sets in non-production
    • Clone production over non-production so the latest configuration and data is available for accurate testing. The clone should include the audit history and the system logs.
    • Upgrade non-production to the latest version of ServiceNow
    • If necessary, reapply update sets, although the recommendation is to suspend custom development during the upgrade process
  2. Bottom-Up Analysis—Review of the upgrade logs:
    • Review skipped updates to understand any potential impact on the upgrade. Although the focus is on skipped records from the latest upgrade, it is important to understand previous skipped records as there may be dependencies that cause complications
    • Focus upgrade testing on areas where updates have been skipped to ensure there are no adverse effects
    • Provide recommendations on where skipped records should be restored or merged to future-proof the organisation
  3. Top-Down Testing—Upgrade testing
    • End-to-end business process testing to ensure the veracity of the upgrade in non-production
      • Business involvement from SMEs (subject-matter experts) is critical to the success of upgrade testing
      • Where possible, follow previously established test cases
      • In the absence of established test cases, JDS recommends a random sample of records, following the audit history of each record and duplicating each step with a new test record (including impersonating users and replicating each of their updates)
      • Automated testing is intended to supplement manual testing
    • Integration testing
      • As much as possible, verify integration works as expected in non-production
      • Inbound email actions can be replicated by manually importing the relevant email XML record from production into non-prod and manually activating the “reprocess email” command
      • Outbound emails can be viewed in the email queue
  1. Defect identification and resolution
    • Based on the results of the previous steps, defects will be classified as
      1. Relating to the core system and therefore the responsibility of ServiceNow support
      2. Relating to the customised system and therefore the responsibility of the customer
        • Where possible, JDS will propose and implement defect resolution in consultation with the customer
        • If issues cannot be resolved, JDS will propose and implement a workaround
      3. User Acceptance Testing
        • UAT should not be confused with the upgrade testing. The bulk of end user testing should have already occurred under the upgrade testing phase. This particular UAT is intended to verify defect resolution.
        • UAT validates the issues exposed during the upgrade process have been rectified to the satisfaction of customer.
        • It is important to note that UAT need not be exhaustive as it's role is to confirm that defects exposed during upgrade testing were resolved
          • Additional defect resolution may be required if additional issues are exposed.
  1. Go Live
    • Upgrade production environment
    • Apply update sets based on the defect identification and resolution
    • Clone back to non-production environments to ensure all environments are in sync and on the latest version of ServiceNow
  2. Go Live Support
    • JDS recommends a go-live support for a period of two weeks
      • Any issues raised during the go-live warranty period will be subject to development and testing in non-prod and will require change management approval before deployment in production
      • If no issues arise, there’s time for enacting best practices and enhancements

The focus of upgrade testing is risk mitigation. The amount of time and effort spent on each of these phases will differ from one customer to the next depending on the size and complexity of their ServiceNow instance, along with the criticality of ServiceNow to their business practices.

If you want to learn more about upgrading ServiceNow, talk to JDS.

Posted by Sam Lindsay in ServiceNow
Modifying Service Portal Widgets On-The-Fly

Modifying Service Portal Widgets On-The-Fly

 

Recently, a customer asked us to remove their Get Help catalog item from the list of Popular Items in the Service Portal because it's not really an item (it's a record producer) and it's accessed from the home page as well as being in the menu bar so it doesn't really belong under Popular Items.

The challenge was, how could this be done WITHOUT changing/modifying the widget (to avoid skipped upgrade updates)

Previously, I've written about how to manipulate portal widgets without modifying them, but that was on submission. This required modifying the widget on load, dynamically changing its contents on-the-fly without actually altering the core widget itself. The trick is to embed the OOB widget and use angular to inject the change.

As you'll see, the code is simple and yet effective, and could be repurposed for a number of other similar applications. Our custom widget acts as a wrapper around the OOB widget (which in this case is sc-category)

Widget HTML Code

<div>
   <sp-widget widget="data.remoteControlWidget"></sp-widget>
</div>

Widget Server Code

(function() {
        data.remoteControlWidget = $sp.getWidget("sc-category");
})();

Widget Client Controller Code

function($scope) {        

        var c = this;
        //We can get the angular data object of BOTH widgets
        var thisWidgetsData     = $scope.data;
        var theOtherWidgetsData = $scope.widget.data.remoteControlWidget.data;

        //Look at the remote scope.data object for sc category to see if have the item we want to hide/remove?
        theOtherWidgetsData.items.forEach(function(item, location){

               //Is our "Get Help" widget on the page?
               if(item.sys_id=='ea8accaedb0508103ea3cd051496198b'){

                       //Angular's injector invoke will allow us to change the scope within a digest
                       window.angular.element(document.body).injector().invoke(function($compile) {

                               //Now we can modify the other widgets scope and angular will do the rest
                               theOtherWidgetsData.items.splice(location,1);
                       });
               }
        })      
}

In essence, all we're doing is remotely accessing the OOB widget's angular scope and then using angular's injector to update that scope.

Although this might seem overly complex, we can look at the scope of any angular widget by holding down the Control key and right-clicking above the widget. Once we've identified what needs to change (in this case, removing an entry from an array), the rest is quite simple.

Have fun!

Posted by Sam Lindsay in ServiceNow
Custom Glide Modal Dialog Boxes in ServiceNow

Custom Glide Modal Dialog Boxes in ServiceNow

 

Modal popups are an effective way of interacting with users when more information is required than would ordinarily be available on a screen. For example, confirming a deletion or getting more information when someone is submitting a record.

ServiceNow has a client-side API called GlideModal but the documentation is focused around displaying records or lists from ServiceNow rather than ad-hoc modal details. There are times when customers need a custom form with a few specific options.

In this example, we're going to add a UI Action button to the catalog task form so when a task is cancelled we can mark it as either:

  • Closed skipped - effectively cancelling the task
  • Closed incomplete - closing all related tasks along with the requested item itself

In this way, we're giving our users the ability to clearly determine what they're cancelling—just one particular task or the whole request.

UI Actions run code on both the client and the server, which is very handy.

The key to getting flexibility with glide modal dialogs is the renderWithContent function which allows us to craft our own HTML form and the window.whatever which allows us to intercept and interpret whatever happened on our modal window as the user interacted with the various options we gave them.

Consider the following code:

////////////////////////////////////////////////////////////////
//Client Side: Dialog box with choices
////////////////////////////////////////////////////////////////
function cancelDialog(){

   var gm = new GlideModal('cancelTask');
   //Sets the dialog title
   gm.setTitle('Cancel Task');
   //Set up valid custom HTML to be displayed
   gm.renderWithContent('<div style="padding:15px"><p>What action do you want to take?</p><p><select name="cancellation" id="taskCancellation" class="form-control"><option value="cancelOnly" role="option">Cancel this task but keep the requested item open</option><option value="cancelAll" role="option">Cancel this and all other tasks, closing the requested item</option></select></p><div style="padding:5px;float:right"><button style="padding:5px;margin-right:10px" onclick="window.changeTaskAction(this.innerHTML,jQuery(\'#taskCancellation\').val())" class="btn btn-default">Abort</button><button style="padding:5px" class="btn btn-primary" onclick="window.changeTaskAction(this.innerHTML,jQuery(\'#taskCancellation\').val())">Cancel Task</button></div></div>');

   //We'll use the windows object to ensure our code is accessible from the modal dialog
   window.changeTaskAction = function(thisButton, thisAction){

      //Close the glide modal dialog window
      gm.destroy();

      //Submit to the back-end
      if(thisButton=='Cancel Task'){
         if(thisAction=="cancelAll"){
            g_form.setValue('state',4);//Closed Incomplete -- will close the Requested Item and all other open tasks
         }else{
            g_form.setValue('state',7);//Closed Skipped -- will only close this task
         }
         //Regular ServiceNow form submission
         gsftSubmit(null, g_form.getFormElement(), 'cancel_sc_task');
      }
   };
   return false;//prevents the form from submitting when the dialog first load
}

////////////////////////////////////////////////////////////////
//Server Side: Dialog box with choices
////////////////////////////////////////////////////////////////
if (typeof window == 'undefined')
   updateTask();

function updateTask(){
   //Runs on the server
      if(current.state==7){
      //closed skipped so simply update this one record
      current.update();
   }else{
      //closed incomplete so update all associated records to close the requested item entirely
      current.update();

      //And now we'll cancel any other open tasks along with the requested item
      if(!gs.nil(current.parent)){
         //Close siblings
         var otherTasks = new GlideRecord('sc_task');
         otherTasks.addEncodedQuery('request_item='+current.request_item+'^stateIN-5,1,2');
         otherTasks.query();
         while(otherTasks.next()){
            otherTasks.state = '4';
            otherTasks.update();
         }
         //Close parent
         var ritm = new GlideRecord('sc_req_item');
         if(ritm.get(current.parent)){
            ritm.state = '4';
            ritm.stage = 'Cancelled';
            ritm.update();
         }
      }
   }
}

Our Glide Modal Dialog presents the user with two options in the browser and then executes the user’s preference on the server.

Code like this can be easily retrofitted, becoming a template for how ServiceNow interacts with users before records are saved. This code has been provided in an attachment. If for some reason the attached UI Action doesn't work for you, toggle the "isolate script" field (save it on then save it switched off) and it should run just fine.

Click here for a copy of the code: sys_ui_action Cancel Catalog Task

Happy coding.

Posted by Sam Lindsay in ServiceNow
How Contract Management Can Help Your Customers

How Contract Management Can Help Your Customers

 

Contract Management

In the ServiceNow platform, contracts contain detailed information such as contract number, start and end dates, active status, terms and conditions statements, documents, renewal information, and financial terms.

Contract Management is active by default for all ITSM subscribers and was initially seen as a means of managing the following:

  • Software licensing
  • Certificates and their expiration
  • Asset fleet management

Contract Management and its usability continues to grow, with many organisations citing it as a solution for both IT and non-IT contracts, including:

  • Employee contracts, probation agreements, super annuation / 401K (HRSD)
  • Customer warranty and rental agreements (CSM)
  • Vendor and partnership documents (ITBM & VRM)

Value Propositions

By choosing to utilize the Contract Management application, your organization will be able to:

  • Reduce risk by utilizing a contract lifecycle management (CLM) solution.
  • Enhance your asset management capabilities by linking contracts to your CMDB.
  • Leverage a single platform to manage contracts both within and outside of your service management ecosystem
  • Improve operational efficiency via document and signature digitization

Improve End User Satisfaction

  • Submit contracts via both the Desktop and mobile interfaces
  • Expedite your signatory process by integrating with Adobe Sign
  • Reduce physical storage requirements by housing your contracts within ServiceNow
  • Create repeatable processes thru workflow automation and the use of contract template documents

Configure eSignature Capability

One of the many perks of managing your organization’s contracts through the ServiceNow platform, is its ability to seamlessly integrate with enterprise-grade eSignature products, specifically, DocuSign and Adobe Sign.

Both DocuSign and Adobe Sign have collaborated with ServiceNow to create Integration Spokes for their respective products.

The pre-packaged workflows, roles and connectors make the initial configuration of these products a streamlined and enjoyable experience, with the added benefit of both vendors providing technical support if required.

 

Conclusion

To learn more about how JDS can optimize your customer's contract lifecycle management, contact our team today on 1300 780 432, or email contactus@jds.net.au.

Our team on the case

Ensure IT works

Cameron Chambers

Senior Consultant

At JDS Australia, our ServiceNow team thrives on a foundation of communication, collaboration and a holistic approach to solution design & platform architecture.

My passion for the ServiceNow platform and experience in both Enterprise Service Delivery & IT Operations ensures that the customer experience is prioritised throughout every engagement.

We are focused on:

– ServiceNow integration
– Platform implementation & enhancement
– OOTB compliance and the reduction of technical debt
– Application development & innovation
– Automation & continuous service improvement
– Accelerated performance testing
– Enhancing the end user & customer experiences

Our team is engaged across all major ServiceNow product lines, specialising in:

– Customer Service Management (CSM)
– IT Service Delivery (ITSM)
– IT Business Management (ITBM)
– Human Resource Service Delivery (HRSD)
– Governance, Risk & Compliance (GRC)
– IT Operations Management (ITOM)

Posted by Cameron Chambers in Blog, ServiceNow
Manipulating Service Portal Widgets Without Modifying Them

Manipulating Service Portal Widgets Without Modifying Them

 

It’s common for organisations to want something a little bit more than what is on offer by ServiceNow in its service portal, but without breaking any core functionality. In this article, we’ll look at how you can manipulate an existing out-of-the-box widget WITHOUT modifying it.

One option is to clone the widget and change it but that causes your cloned version to become locked in time, so it won’t benefit from any enhancements or bug-fixes applied to the original widget by ServiceNow as versions upgrade.

A better approach is to embed the original widget INSIDE another widget and make your modifications there. In this way, you get the best of both worlds. Any changes to the widget will be automatically inherited, while you can change the behaviour of that widget at ease.

This article assumes you are confident in developing custom widgets. If you need more information on what service portal widgets are and how they work, please refer to:

Here’s how it can be done (with this code sample provided at the bottom of the article)

First, notice we’re using the sp-widget directive to embed an OOB widget, but we’re going to use an angular data object (essentially a variable) to hold the name of that widget. This gives us the flexibility to add HTML/Angular before and after the widget.

We populate this angular object in the server script. This gives us the ability to set any properties the widget might be expecting. In this case, we’re going to use the ServiceNow catalogue item widget (v2)

Now, in our client script, we can refer to data in BOTH our widget and the OOB widget, something that is extremely handy!

Finally, in this example, we’re interested to add some extra functionality when the original OOB widget is submitted. Looking at the client script for the OOB widget, we can see that ServiceNow are using broadcast events to transmit (emit) various actions. This is what we’ll intercept.

As you can see there are several events we could intercept and augment, like when a submission fails. Once we know what we’re looking for we can simply listen in the background, waiting for that event to occur.

Once that event fires, we can then choose to do something in addition to what the OOB widget is doing using both client and server code in our custom widget (and importantly, acting on information gathered by the OOB widget itself).

$scope.server.get allows us to send an action the server where it is processed and the response is returned.

In this way, we can manipulate an out-of-the-box widget provided by ServiceNow without modifying or cloning it.

Please find example XML here: sp_widget example

Posted by Sam Lindsay in Blog, ServiceNow
Virtual Agent Is Your Friend

Virtual Agent Is Your Friend

Don’t underestimate the importance of user satisfaction

If there’s one defining characteristic of the social media revolution it’s “make life easy.”

Why did Facebook win out over MySpace? Facebook made it easy to connect, easy to post, easy to find people, easy to interact.

Amazon, Google, Twitter and Facebook have spent the last decade refining their technology to lower the barrier-to-entry for users, making their web applications highly accessible. Have you ever wondered why Google only shows the first ten entries for each search when it could show twenty, fifty or a hundred? Google found that 10 results returned in 0.4 sec, while 30 results took 0.9 sec, but that extra half a second lead to a loss of 20% of their traffic because users were impatient. User satisfaction is the golden rule of online services and so 10 results per page is now standard across all search engines regardless even though now days the difference is probably much less.

When it comes to ServiceNow, organisations should focus on user satisfaction as a way of increasing productivity. ServiceNow allows organisations to treat both their internal staff and their customers with respect, offering services that are snappy, intelligent and well designed. To this end, ServiceNow has developed a number of offerings including Virtual Agent.

What is Virtual Agent?

To say Virtual Agent is a chat-bot is disingenuous. Virtual Agent is a channel for users to quickly and easy get answers to their questions. It is a state-of-the-art system that leverages Natural Language Understanding (NLU) and a complex, decision-based response engine to meet a user’s expectations without wasting their time.

The Natural Language Understanding machine learning engine used by ServiceNow is trained to understand conversational chats using Wikipedia and The Washington Post, and can be enhanced with organisational specific words and phrases. Natural Language Understanding is the gateway for users to reach a catalogue of prebuilt workflows that resolve common issues.

The Virtual Agent Designer allows for sophisticated workflows with complex decision-making. Not only does this reduce the burden on first-level support it drastically reduces the resolution time for common issues, raising the satisfaction of users with the services provided by your organisation.

But the real genius behind Virtual Agent is it can be run from ANYWHERE

A common problem experienced by organisations with ServiceNow is managing multiple corporate websites. The ServiceNow self-service portal can be seen by some users as yet another corporate web instance and a bridge too far, reducing the adoption of self-service. To combat this, ServiceNow allows its Virtual Agent to be deployed ANYWHERE. As an example, it’s on this WordPress page! Go ahead, give it a try. As soon as you click on “chat”, you’re interacting with the JDSAustraliaDemo1 instance of ServiceNow!

By allowing the Virtual Agent to run from anywhere, customers can incorporate ServiceNow functionality into their other websites, giving users easy access to the services and offerings available through ServiceNow.

Keep your users happy. Start using Virtual Agent.

Posted by Jillian Hunter in Blog, ServiceNow
Using Common Functions in the Service Catalog

Using Common Functions in the Service Catalog

ServiceNow’s service portal offers a lot of flexibility for customers wanting to offer complex and sophisticated offerings to their users. Catalog client scripts can run on load, on change and on submit, but often there’s a need for a common library of functions to be shared by these scripts (so they’re maintained in just one place and produce consistent results).

For example, in this case, if the start date, end date or the SAP position changes, the same script needs to run to calculate who the approvers are for a particular request.

Rather than having three separate versions of the same script, we want to be able to store our logic in one place. Here’s how we can do it.

 

Isolate Script

Although the latest versions of ServiceNow (London, Madrid, etc) allow for scripts to be isolated or not, giving ServiceNow admins either the option of protecting (isolating) their scripts or accessing broader libraries, in practice, this can be a little frustrating to implement, so in our example, we’ll use an alternative method to introduce external javascript libraries.

 

UI Scripts

UI scripts, like the one listed below, are very powerful, but they’re also very broad, being applied EVERYWHERE and ALWAYS, so we’ll tread lightly and simply add a function that sets up the DOM for access from our client scripts.

As you can see, we now have some variables we can reference to give us access to the document object, the window object and the angular object from anywhere within ServiceNow.

In theory, we could attach our SAP position changes script here and it would be accessible but it would also be loaded on EVERY page ServiceNow ever loads, which is not good. What we want is a global function accessible only from WITHIN our catalog item, so we’ll put this in an ON LOAD script using our new myWindow object.

The format we’re using is…

myWindow.functionName = function(){

console.log('this is an example')

};

This function can then be called from ANYWHERE within our catalog item (on change or on submit). Also, notice the semi-colon at the end of the window function. Don’t forget this as it is important as we’re altering an object.

Now, though, any time we want to call that common function, we can do so with a single line of code.

 

Following this approach makes maintenance of the logic used by the approval process easy to find and alter going forward.

Conclusion

To learn more about how JDS can optimize the performance of ServiceNow, contact our team today on 1300 780 432, or email contactus@jds.net.au.

Our team on the case

Document as you go.

Peter Cawdron

Consultant

Length of Time at JDS

5 years

Skills

ServiceNow, Loadrunner, HP BSM, Splunk.

Workplace Passion

I enjoy working with the new AngularJS portal in ServiceNow.

Our ServiceNow stories

Posted by Jillian Hunter in Blog, ServiceNow