When we speak about client success, we often imagine a group of really happy users smoothly finding their way around the product we delivered. They know exactly what to do and how to interact with it. How can we make sure that scenario in our mind matches the reality of how users experience with our product?
Through practice and reflective thinking, we figured out the solution: we introduced software training as part of our delivery process. In our mission to deliver the best possible solution to our clients, we include this service to ensure that we’re always aligned on our shared understanding and expectations.
Software training takes on many forms depending on the client’s needs and the project’s complexity. In some cases, training might look like a classroom setting with an instructor walking users through the app. Other times, it takes the form of a game or competition to help users remember key features of the app. Still other times, it might be an online training module. For some clients, we can even provide a combination of all of the above to suit their needs.
Software Training In Practice
For one client of ours — a large multinational corporation that operates hundreds of medical centers around the world — we conducted something we like to call “train the trainers”.
For a corporation with thousands of users, it’s basically impossible to train every single user at the same time. It wouldn’t be efficient and would turn out to be a waste of time and effort for everyone involved. So, we chose a different approach.
We gathered a group of experienced employees who knew the operation processes extremely well but have never used or seen the system. Through multiple hands-on training sessions, they learned the ins and outs of the system’s structure and specific functionality that would soon be part of their daily work. Later, those same users would take on the role of trainer and show other users within the organization how to use the system.
Before we get too far into the details of the training itself, we should note that each training is always accompanied by a vigorous research and preparation phase. Well before we even come close to starting, we gather information about the attendants and have prepared content that specifically serves their needs and the ones of the users they’ll train later on.
At the beginning of the training, we made sure that everybody in the room knew their role and why this training is crucial for their work. We started with a small presentation to introduce how we turned the existing business logic into system functionalities and component dependencies. This would later help them to better understand the manner in which the system works. After completing this stage and answering all questions, we proceeded with a live demonstration of the newly built system.
For many in attendance, this was their first time seeing the system. We started with the basics like how to log in and the different options within the menus. Our training group consisted of users with different roles, so we divided the demonstration into several stages, each one aimed for specific trainees. While we demonstrated the functionalities, we would often get “…ok, but what If…”. For me as a trainer, this is the best possible thing that could happen as it means that the group is on board, understanding the content and thinking about cases that they could face when using the system on their own.
Once we completed the demonstration, we proceeded to the most exciting part for us as trainers: the users started using the system by themselves. We built several practical tasks, each highlighting different aspects of the system, including all the roles that would use it in a real-world environment. The users would then use the system to complete the tasks and see if there were any aspects that they didn’t fully understand.
We started off giving a bit more guidance and support from our side and slowly shifted to being observers on hand to help when there were difficulties understanding or using the system. In our second session with the users, we made them perform the same practical tasks with minimal or no instructions from us. The goal here was to determine which functionalities they were experiencing the most difficulty with, so we could go over them again later.
When we completed the training, we were left with a room of confident users and many new ideas on how can we extend the system. We helped the users better understand and use the system and the client now had a group of trained users who could make the new system implementation smoother and easier for their colleagues.
This on-site, hands-on, “train the trainer” style of software training worked for this particular client because of the company’s massive scale. However, for a smaller organization with fewer users and a less complex piece of software, we can just as effectively complete the training online. Regardless of which method works for your organization, software training is increasingly a critical step of the development process that should not be overlooked.