How to scale user training for application updates

An extremely common problem with very large and complex enterprise applications as they scale is being able to provide real-time notifications to users on the changes being deployed. Especially at BlackRock where more than 100 components of Aladdin are used by 5000+ users, update notifications and user training needs come with a very high priority! Proactively pushing relevant content updates, increasing new feature visibility and application stickiness were also aspects of this problem that we wanted to address as part of the larger application update training conversation at BlackRock.

In order to solve this issue in a scalable way, we proposed an in-app interactive help and training framework that would allow first time users to understand how to use the app, while allowing seasoned users to understand changes being incorporated into the products functionality without the need for human capital support. If implemented well, this approach would potentially not only enhance a user’s experience, but it could also help develop focused usage analytics and dramatically reduce documentation that needs to be shared offline in product trainings or product update communications.

There are several ways we meet this challenge at BlackRock. In the past we have relied on release notes, technical specification documents and guided user training. Currently, since releasing this proposed in-app solution, we have the first cut of libraries available to provide in-app help along with the documentation approach used in the past. Moving forward, we intend to incorporate more sophisticated functionality in this in-app module like just-in-time training, advanced analytics and more.

Why in-app training?

User training has always been and continues to be a challenge. Today, UX designers have a renewed focus on this subject due to the vast proliferation of mobile applications. The two main challenges are First-time User Experience (FTUE) and continued training.

Challenge 1: The first-time user experience: 

Mobile applications often have very little time to grab a user’s attention and pull them into the experience – the competition is so intense that anything that’s remotely difficult to use has an impossible handicap for user retention – Without a way to engage users from the get-go apps face an uphill battle or worse, go unused entirely.

Challenge 2: Continued Training: 

It’s well-documented that people don’t actually read manuals. This means we have limited ways to educate users about the applications we build without extensive human capital to support and guide them. Incorporating training into the application without pulling users out of the application context is a possible solution.

How does this apply to BlackRock and our applications? 

Developing the Aladdin platform is challenging: We need to train people on 300+ applications, empower clients to respond to market events quickly and easily and simplify our support model that receives 17,000 ‘how-to’ requests a year. Solving the training challenge is a critical step in enhancing our ability to scale.

How is this challenged tackled?

Solutions are varied, but some consistent themes have appeared over the years that are applied to multiple types of mobile applications. These solutions have since made their entry into desktop applications as well.

In-app help is a big result of this research, along with the usage of game design theory or gamification for training. You’ve probably already seen it in Gmail, Facebook and almost every modern web application. This has huge benefits – Twitter recorded a 29% sign-up boost when they redesigned their in-app help for the signup process.

A closer look at in-app help

The ground rules

In-app help is a simple but powerful tool that allows the application to deliver help and training to a user by itself! Its effectiveness, however, lies in the execution.

The ground rules and best practices that any in-app help mechanism should typically follow include easy access from the application as well as clean and simple visual language that highlight the features in the application. It should not be disruptive to the user’s experience, we’ve all felt the pain of having to get through a number of unnecessary steps in order to access an application! The in-app help component should also be easily implemented into the intended target software and most importantly it should be scalable for future enhancements.


When an application implements in-app help, it has a number of positive effects including but not limited to enhanced user experience, increased stickiness to the application, dramatically reducing ‘how-to’ requests and human support overhead, reduced documentation overload for clients or product managers as well as allowing for the collection of well-defined focused usage analytics which then help to provide further insights into usage patterns for future extensions.

Depending on the implementation, it can also free delivery of content from being tied to the application’s release cycle and allows for crowdsourcing of content.

Current open source solutions and their usage

There are a number of open-source standalone website walkthrough frameworks: intro.js and jQuery Joyride are the most widely used options with a number of other frameworks also currently available. These frameworks typically use JSON data in the code or in the backend for the steps in the walkthrough. They offer varying degrees of flexibility and have their own strengths in how they deal with the website and the DOM. However, many of these frameworks have not gone into production in commercial websites. Companies like Facebook, Google or Adobe tend to adopt their own solutions. This is due to a couple of challenges that stem from the generic nature of these frameworks:

  1. Open-source frameworks may encounter issues with special content or elements on the commercial site
  2. These frameworks typically offer a one-size-fits-all visual language which is often very different from the design language of these websites and requires heavy tweaking

While these challenges are not huge, commercial websites often use walkthrough frameworks only for the initial user experience. This makes it more cost-effective for them to design a lighter custom walkthrough within their website.

The same generic nature, however, becomes a strength when the frameworks are used to power in-app help in a product suite like Aladdin’s suite of web applications. It allows us a base from which we can tweak and build a solution that can be used across multiple applications while maintaining a consistent design language.

Help at BlackRock

We use our help framework to provide in-app help as a feature of web applications. This framework has been built on top of intro.js for the walkthroughs, a lightweight custom list design for the display layer (also powered by Bootstrap) and a lightly modified version of jQuery event drag for our content creation GUI. Our aim has been to simplify the help process for developers, product owners and users.

For developers, it’s as easy as including a JavaScript and a CSS file and getting started with a couple of lines of code.

Initializing Help

 jQuery(window).load(function () {
   HelpObject = new HelpObject({
                   appName: 'ApplicationName'

Product owners are enabled to create content via straightforward interaction with the application. This allows the steps to be recorder in a JSON file which records the element via identifiers and can be further customized if needed.

Help steps in JSON

"My Sequence": {
 "sequenceTitle": "My Sequence",
 "appName": "ApplicationName",
 "data": [
 "element": "[class='ai-file-drop ng-isolate-scope']", //unique identifier using id, name or CSS path 7 detected by the framework
 "content": "<div><h3>Header</h3><p>Content</p></div>" //Can use HTML
 "element": "[id='contentConsumptionNavButton']",
 "content": "<div><h5>Content</h5></div>"
 "element": "#ai-navbar > span > button",
 "content": "<div><h3>Feedback</h3><p>Feedback text</p></div>"
 "seqId": 1424459511622

This framework allows us to take advantage of the structure in our system while enabling all of our users. In its initial form, it has already garnered positive reception and is in the stages of being built out into an even more robust solution.

Some examples in action

Delivering content via notifications


Highlighting new content


Highlighting application content via interactive help


Providing contextual information within an application



Being able to create and deliver in-app help allows us to engage, train and help users at a much greater scale. There are a few applications on the BlackRock Aladdin platform which have implemented an initial version to very positive feedback.

In-app training sits at a very interesting intersection of technology, user experience design, and product design. We are very interested to see how this process evolves as the firm grows and this problem is tackled both at BlackRock and in multiple forums and organizations around the world.

The data provided is for informational purposes only. The information and opinions contained on this website are derived from proprietary and non-proprietary sources deemed by BlackRock to be reliable, are not necessarily all inclusive and are not guaranteed as to accuracy. BlackRock shall not have any liability for the accuracy of the information contained herein, for delays or omissions therein, or for any results based on the use of such information.


©2015 BlackRock, Inc. All rights reserved. BLACKROCK and ALADDIN registered and unregistered trademarks of BlackRock, Inc., or its subsidiaries in the United States and elsewhere. All other marks are the property of their respective owners.



Arjun Kannan


    Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 28024832 bytes) in /var/www/ on line 2162