Ankush Agrawal
ServiceNow Employee
ServiceNow Employee

ServiceNow uses many intelligent tools to increase the productivity of our workforce. Let’s learn about them by going through an engineer's day. Some additional tools are listed at the end of the document.

Each tool has a link to its respective demo. The overall presentation summarizing each tool is also attached to this blog.

 

Table of Contents

Day in the life of an engineer

Developer workspace

Text-to-code

Live Scan

Best Practice Library

Test Assist for Unit Tests

Code Coverage

Update Set Scan

In-instance Update Set review

GenAI tools to enhance code

Change Scan

DevOps using DevNow

Reflecting on a Productive Day

Additional tools for more personas

Instance Scan

Story assist

 

 

 

Day in the life of an engineer

Ankita, a software developer at ServiceNow, was already at her desk on the morning of a busy day. Her workstation was a testament to the blend of creativity and logic that defined her profession—dual monitors displaying streams of code, sticky notes with algorithm ideas, and, of course, her trusty rubber duck for debugging sessions. Today, like any other day, Ankita had a list of tasks to tackle, but with the aid of her suite of intelligent Developer Experience (DevX) tools, she was more than ready to dive in.

 

Developer workspace

Ankita’s day begins with looking at Developer Workspace, a personalised digital dashboard aggregating all her tasks, their priorities, and key dates including freezes and holidays. This tool was her navigational beacon through the sea of daily responsibilities. With a single glance, she could see a high-priority bug fix that needed immediate attention and a feature update due by the end of the week. The Developer Workspace streamlined her workflow, allowing her to efficiently manage her time and focus on tasks that mattered most.

Look it in the action and the download link.

 

Text-to-code

Ankita turned her attention to developing a tricky piece of functionality. Instead of starting from scratch, she decided to leverage a Text-to-Code AI tool. She described the function she needed in plain English, and the tool generated a draft of the code with the standard use of the complex Glide API. It wasn't perfect, but it provided a solid foundation, saving her hours of work. This innovative tool bridged the gap between concept and implementation, allowing her to focus on refining and optimizing the code rather than building it all from the ground up.

Here is a quick demo of the feature.

 

Live Scan

As Ankita types away, developing her latest feature, the Live Scan tool is her silent partner, vigilantly scanning each line of code. It's like having an expert peer over her shoulder, ensuring she adheres to the best coding practices. When she inadvertently strays from the optimal path, Live Scan gently nudges her back, highlighting potential issues and suggesting fixes. This real-time feedback loop not only enhances her code's quality but also serves as an invaluable learning tool, fostering her growth as a developer.

See it in the action.

 

Best Practice Library

Whenever Ankita finds herself at a crossroads, unsure of the best approach to tackle a problem, she turns to the Best Practice Library. She goes to BPL if she needs guidance on live scan findings or refers to documentation, standards, and guidelines around proven methods to achieve desired outcomes. BPL is her go-to resource for ensuring her solutions stand on the shoulders of giants.

Please find a quick demo here.

 

Test Assist for Unit Tests

Midday, Ankita decides to provide automated coverage to her code against future bugs. With Test Assist, generating the scaffolding for unit tests is a breeze. Test Assist understands the written code and develops automated unit tests in ATF, saving her hours of meticulous work. This tool doesn't just automate test creation; it ensures her features are robustly defended against regressions, giving her peace of mind as she builds upon her project's foundations.

Then Ankita uses another GenAI power of Test Assist to generate manual tests and associate them with the Story in TM 2.0. To further enhance the test coverage, she again uses Test Assist to convert the manual functional tests to automated functional tests.

Demo of unit test generation

Demo of manual functional test generation

Demo of automated functional test generation

 

Code Coverage

Before committing her code, Ankita engages the Code Coverage tool. It's her way of ensuring no stone is left unturned, that every line of her code is tested, revealing any uncharted territories in her test cases. This tool provides her with a comprehensive report, highlighting areas lacking coverage and thus guiding her efforts to fortify those neglected paths. It's an essential step in her quest to maintain high-quality code standards.

Demo of code coverage

 

Update Set Scan

As the day winds down, Ankita prepares her update set for deployment. Before she proceeds, she runs an Update Set Scan. This tool meticulously examines her code, conducting both a health and a security scan. It's like a final quality check before her work reaches the broader audience, ensuring that her update set is not only functional but also adheres to the highest coding standards. It's her assurance that her contribution is ready for the world.

Demo of the update set scan

 

Code review

In the midst of her day, Ankita is ready to send her code for review. Leveraging the in-instance review feature, she submitted her code, enabling asynchronous reviews. This tool allowed her colleagues in different time zones to provide feedback at their convenience, streamlining the review process. Moreover, it facilitated comparison with code from the next instance, highlighting code modifications and ensuring only the desired code is moved with the highest quality. The tool has modern review practices along with inline comments. This feature not only expedited feedback but also fostered a collaborative environment.

Demo of update set review

 

GenAI tools to enhance code

During the rigorous code review, Ankita received feedback pointing out several areas in her code that needed refinement for better clarity and optimization. Instead of feeling overwhelmed, she turned to her GenAI-based toolset.

The reviewer suggested reusing code from an existing Script Include. The code explanation feature provided a concise explanation of complex logic.

The code comment function automatically generated insightful annotations, making her code easily understandable for her peers.

Auto description summarised the script include and put the summary in Script Include’s description.

With the code refactor feature, she effortlessly enhanced her code's structure and efficiency, aligning with best practices.

These AI-driven tools transformed the daunting task of addressing code review feedback into a smooth, educational experience, further polishing her contribution to perfection.

 

Please find the quick demos of these features here:

  1. Code explain
  2. Code refactorization
  3. Code comment
  4. Script Include

 

Change Scan

Finally, before merging her code with the master branch, the  Change Scan is automatically initiated. This tool acts as the final guardrail, performing a thorough examination of all the merged/batched code. It's the last line of defence, ensuring that the collective work of her and her peers meets the project's stringent health and security benchmarks. It's a crucial step that maintains the integrity of their codebase, safeguarding the project's future.

Please find the demo here

 

DevOps using DevNow

Now as Ankita focuses on the deployment for the new feature, she used a DevOps approach, integrating their development and operations to improve collaboration and productivity. She uses DevNow to automatically deploy the code to the desired instance and perform the post-deployment actions (e.g.: run automated tests, prepare change request etc.). DevNow brings automation to the end-to-end lifecycle giving a smooth experience of code deployment and related steps saving a lot of time for Ankita and the GRC team.

 

Demo of DevNow with Update set

Demo of DevNow with Source control

 

Reflecting on a Productive Day

 

As the day drew to a close, Ankita pushed her final commit, marking the completion of another successful feature. She leaned back in her chair, reflecting on how the developer productivity tools had transformed her workflow.

 

In the rapidly evolving landscape of software development, these tools were not just conveniences; they were necessities. They allowed developers like Ankita to focus on what they did best—solving problems and creating innovative solutions. As she shut down her computer and headed out, Ankita felt a sense of accomplishment. With the right tools, she was not just an engineer; she was a craftsman, shaping the future one line of code at a time.

 

Additional tools for more personas

Instance Scan

It is also important to continuously monitor the deployed code and ensure that our applications are secure and performant. A monthly instance-level scan detects any code or configurations that do not adhere to best practices. Once identified, these issues are assigned to the respective teams for resolution.

Please see the quick introduction video.

 

Story assist

Story assist enables product managers to generate detailed story description and acceptance criteria using GenAI. It transforms the short description into a comprehensive story description with clear, and use case based acceptance criteria. The Product manager inputs their initial thoughts, and like magic, a structured, detailed narrative emerges, ensuring that the team and stakeholders have a clear understanding of the project requirements. This tool not only speeds up their documentation process but also enhances clarity and alignment across the team.

Don’t miss out the demo.

11 Comments