Understanding the business processes of your users can be the biggest challenge you face when trying to plan a new system or improve upon an old one. Interaction with the system you build can vary greatly depending on the role of the user and the policy and procedure of the organization for which they work. If you support a system that serves multiple organizations, I suggest the following techniques to help you understand the business processes of all users of all levels in all organizations.
Ask for representatives of each type of role (i.e. clerk, worker, manager) to understand the processes of each for the functional area you are planning. Have them show you what they do, not just tell you. Ask the same question in many ways to find the real process. Users will not always tell you every step they do, thinking it’s trivial or not applicable. Write down every step in their process even if it’s not done in the current system.
As an example, I was interviewing a worker who had clients that she served as her job. There weren’t many clients so upon our first conversation she gave the impression that she did not track these clients anywhere but just did so in her head. Upon pressing the issue, I soon discovered she was tracking them in a spreadsheet. There was a big part of her process that she omitted where we as IT could assist in creating a tracking system for her, that would allow her and her management to get reports from to improve and monitor their work.
Meet with Each Organization Separately
Instead of conducting one big meeting with all organizations, host smaller meetings with individual organizations. Larger meetings tend to stifle or derail communication, encouraging only the most outgoing to participate. Manage the meeting by keeping the focus on the “Happy Path,” the process that 90% of your business flows, noting where the 10% deviates. Use the information you gained from the interviews to lay out what you think is the business process and let them help correct and finalize it. Once you have the basic flow, sweep back and discuss the deviations.
Create Flow Charts
Create flow charts for all the business processes that you discover. If the end goal is not the same across all organizations, you may be looking at a different process.
Note milestones and goals of the process. Below is an example of what you may find.
Compare the business flows by role between organizations and note the commonalities. Now you should have a better understanding of the milestones and ultimate goal of the entire organization for this process. Those commonalities may look something like this in green.
Once you identify the common processes, milestones and goals, take some time to understand the processes that are different among the organizations. What is the reason for this difference? Could it be that Organization 2 is larger and therefore requires more structure? Understanding the reasoning for the difference will help you guide them to a place where you can create one system that meets all their needs without having to custom code for each organization.
Bring Everyone Together
Now that your analysis is complete, it’s time to meet with all of the decision makers from each organization. Show them the processes of each organization, where they are in common and where they differ. Facilitate a discussion about why they differ and insist they hear each other out. More times than not, they may come up with a common procedure that fits all their needs with very little compromise on everyone’s part.
Only when you have exhausted this step and determined that there are still differences for justifiable reasons should you consider writing custom code for each organization. After performing these steps, you raise the likelihood that business process improvements will occur and a consensus will be made.