Sunday 27 April 2008

Systematize / Projectize - Which?

Month end again. The normal processes kick into gear as we ensure there is a good sales cut off, the expense reports have been submitted, the banks reconciled and the overseas operations results are ready for consolidation. On the whole, month end is a well oiled machine where everyone knows what is expected of them. That's the mark of a good system, particularly if all of the processes have been documented and people check them off as they are completed.

Most of the work of the accounting department can be systematized, i.e. turned into a pattern of regularly recurring processes, but what about the surprises? You know, the President is looking at purchasing that little plant in Omaha, you need to have a Sarbanes Oxley review, the accounting software needs to be updated, the Chairman wants a five year forecast, etc. When the accounting staff have their hands full with the system, how do you handle these unpredictable requirements?

The answer is to projectize. Let's face it, even though nobody can predict what surprises lay in store for you next month or next year, you know for certain that they will be there. Why not include them in your planning?

Personal Goals

You know some of the projects that have to get done. In fact, some of them may have been waiting a long time for someone to have enough time to address them. At a recent client, I commented on how enthusiastically one of the staff had taken to the new reporting software. "That's because the new Controller included it in her personal goals for the year," the Assistant Controller said.

"Great," I replied. "What's your goal?"

"Clean up the GL," she said, with a sad smile. It was a big job.

Delegating projects to people is good, but that's only just the start.


Resources, Tools & Time

Of the three techniques available to a project manager, finding the time can be the hardest. Whatever else you do, the accounting system must be maintained. On the other hand, project work can be fun. It's a break from the routine. People get a chance to learn new skills and work independently. What better way to prepare someone for their next career step than to give them a project to manage?

In my experience, the best way to make room in the schedule for project work is to be open with the team about what you are doing. Then enlist their help in finding faster ways to do the normal work, such as automating or eliminating manual processes, getting transactions booked properly the first time rather than adjusting them at month end and reducing any duplications between separate systems. If the whole team is motivated to save time, the results will be much better than a solo effort by you. You might have to make it clear that your objective is only to save time, not to reduce headcount.

Resources and tools are other issues that you have to address. Your team members may need training to take on the projects, whether a formal course or coaching from someone more senior. An outside consultant may be necessary, but encourage your team to work independently. Have them create a project plan and come back to you with any additional resources they think they need. Finally, insist on regular updates and status reports. After all, as head of the department, you are still responsible for delivering the goods.

So, should you systematize or projectize the accounting department? The answer is: both.

Saturday 19 April 2008

Spring Cleaning

Okay, I was not cut out to be a gardener. How do I know? I was raking last year's leaves from the garden when I realized that this year's crocuses had already sprouted, flowered and died. I never saw them because they couldn't get through all the dead leaves. Time for spring cleaning!

Is there any dead wood in your accounting system? When the year end is done and the audit over is a good time to look at the system and decide if anything needs to be tweaked.

Lessons Learned

A great tip from the world of project management is to have a Lessons Learned session with the team where you go over a recently completed project (e.g. the audit) and ask what everyone would do differently in a similar future situation. This is not a finger pointing or blaming exercise, in fact great care should be taken to emphasize that the session is about the future rather than the past. If people are open about their experiences, a lot of good can come from these sessions. To get more value from the meeting, arrive with a few open ended questions to get people talking. To continue with the audit example you might ask:

  1. Did anyone have to create a manual spreadsheet that we could have the system produce if a change was made to the chart of accounts?
  2. Could any of the auditors' requests be combined so that two requirements could be completed at once?
  3. What could the auditors have done that would have achieved the same results more effectively or efficiently? (They need feedback as well.)
  4. Could the timing of any of the audit be improved?
  5. Was anything else dropped as a result of the extra work required for the audit?
Another candidate for spring cleaning is financial reporting. Governments, regulatory authorities and operations managers often require more detailed information. Ask if it would be possible to produce this information more quickly or effectively with a change to procedures or to the accounting system setup. You would be amazed at how often issues like this go unexamined until someone comes along and stirs things up a little.

Just like the leaves in my garden.

Sunday 13 April 2008

Going Bug Hunting

Bugs are usually thought of as programming errors, but I would extend the concept to include all unexpected results, whether they are due to programming or due to the system being used for a purpose it wasn't designed for. Here are a few tips to help you in your hunt.

Document

The easier you make it for a developer to isolate and correct the problem, the faster the problem will get solved and the more reliable the result. The very first step is to make a copy of the screen showing the error message. This may take some training because the typical response is just to click on OK without even reading the error message. Paste the screen shot into a Word document and email it to the support person.

Follow Up

Keep track of your support requests via a support log to be sure they are followed up and addressed in a timely manner. If a description of all the support requests is kept, then it can be used to point to a solution should the same issue crop up again.

Re-create
Should a solution not be immediately available, see if you can make the error happen again. Microsoft Dynamics, like most accounting systems, comes with a sample company. Re-creating the error in the sample company has the advantage that the programmer has access to the same system. It also rules out your data being the culprit.

Frustration

Let's say that the support representative looks at your issue and says that they are unable to re-create the problem. Furthermore, you can't either. But then it happens again. This is when you need to be rigorous and scientific in your approach. The worst kind of bug to find is the intermittent error. You need to comb through ever instance of the error looking for a common thread or a pattern.

Like everyone in systems work, I have lots of stories of obscure errors or the amount of hair I lost trying to sort out a problem. It comes down to patience and luck. In general, I would say that half the time it was the system's users who figured out where the actual problem was.

Hardware

When the answer is elusive, I try to eliminate sources of error. The first thing to eliminate is hardware. One defective router dropping or corrupting messages from one user's computer to the server can cause serious issues in the whole system. At one client we had printout going to (apparently) random printers. It turned out that new users were being set up with a copy from an existing user. The copy included the computer identification number, so there were duplicate identification numbers in the system simultaneously. When routing printed reports to printers, the server would choose the first computer to login with that identification number, causing an intermittent error.

Security and Set Up

Another source of error to eliminate is the user set up. The more flexible a security system is, the more complex the user set up. Watch to see if the error happens to more than one user. Also check whether it is tied to a particular time of day. At one client, the system slowed to a crawl every day around 12:00 pm. It turned out that the warehouse staff were playing internet radio stations during their lunch break.

Within the accounting system try to determine which modules are involved. For example, a transaction that works well in the local currency may cause problem in a foreign one. Pore through all of the set up to see if anything attached to the transaction causing the error message was unusual (e.g. the vendor, inventory item, general ledger account, etc.) If everything looks good, then document everything you can and wait for the situation to recur.

Patience

Patience is your best ally in this quest. Bugs are often a source of finger pointing between people who are convinced that the answer lies with someone else. The message you need to keep repeating is that we are all on the same side. We are all working towards the same goal: bug elimination.

Sunday 6 April 2008

Do It Yourself Reporting

The spreadsheet report on my computer was refusing to balance, when the IT Manager dropped by. (I later found the problem. Someone had overridden one of the formulas with a number, so that line was not updating properly.)

"You should get one of my staff to write the report for you," she said brightly. "We're creating them for everyone. In fact, you could learn to make them yourself." She was proud of her new SQL Reporting Services and couldn't resist showing off a little.

After she left, I wandered over to the Accounting Manager's office and asked her about this reporting tool. It turns out she's using it too. I asked her how much training she had needed and she answered none. It was so much like doing reports from Microsoft Access that she just played with it until she had the answer she wanted. I asked her how to use it and she showed me how you access the tables from Excel. After that it's like any spreadsheet. That actually set off alarm bells for me, as I pictured anybody with a little Excel knowledge accessing our payroll records.

"Relax," she said. "You have to get the IT department to grant you access to the tables first. Just let them know which ones you need."

One thing I admire about Microsoft is their drive to make the way their different products look the same. It isn't just the savings in training time, it's also the confidence that people feel when they see something they recognize.

Are You a Sensei (Teacher)?

In Aikido, the teacher is referred to as "Sensei" meaning literally, one who has gone before.

When he was 10, my son used to be quite good at Judo. Now that he's 15, we have been encouraging him to go back to it for physical fitness. We weren't getting anywhere, until my wife suggested that we all do it together as a family. So we signed up for Aikido (the choice being between Aikido and Kendo and I didn't feel like getting hit with a stick) at the Japanese Canadian Cultural Centre. That is how I met Sensei Jim.

There we were, dressed in sweats in a room full of people outfitted in martial arts uniforms, made to stand at the front of the class, feeling something like a new member in the accounting department (ah, you see where I am going with this!) Anyway, as I was busy feeling like I'm too old for this kind of thing, and mixing up my left and right (although I must say that there is a satisfaction in throwing and being thrown by your son), I got a chance to observe Sensei Jim.

First, Jim led the class through some basic warm ups and stretches. Then he told the class to do a standard exercise and took us newbies (my son's term) aside and started us on rolls. As soon as he saw that we were getting it, he asked one of the other students to work with us while he taught the main class. Every ten minutes or so, he checked back looking not just at our form, but also helping the student leader with his / her teaching. In that way, he was able to teach the whole class, despite the radically different abilities of the students. At the same time he was able to improve the teaching skills of his better students. Finally, everyone received Jim's personal attention at some time during the lesson.

At that first class, I learned more than how to fall without hurting myself. It reminded me that I tend to jump in and fix things when I should really use the opportunity to teach my staff. I also tend to intervene personally when I could have delegated the task to someone who could use the opportunity to learn how to be a teacher.

How do you welcome new members to your team? How do you ensure they learn the skills they need? How do you help your team members become team leaders?

Arigato gozimashita (said to the Sensei at the end of the lesson)