I wrote a piece called Why are you still generating reports that spawned a few other posts from fellow bloggers James Taylor, Todd Biske, and Robert McIIree. Robert had an interesting point of view which I would like to discuss. In his post he stated:
Excel and similar tools are used for two reasons: first, because it is very familiar to most users and "good enough" to generate reports and analytic output; and second, such use is quick and effective without running through the IT gauntlet to enlarge the effort by "gathering requirements," making it a full-blown project, and waiting a long time for "results."
I agree that Excel is user friendly and a favorite of most business users. Excel is an acceptable tool to manipulate data but should not be used as a system of record. I have seen too many occurrences of key financial data/reports residing on someone's C: drive with no way of validating the integrity of the data. I have also seen many business users create their own "systems" by pulling data out of various databases and building critical reports that are most likely inaccurate. Why are they inaccurate? First, most users don't understand the concepts of data integrity, don't have access to data dictionaries, and don't understand the physical implementation of the data which means they have limited means of validating what they have created is accurate. Second, since IT usually has no idea that these systems exist or how they are updated, changes to the source data are made without the knowledge of the end users' home grown systems. So I say Excel is a great tool for dicing and slicing data but the business community should not be driving the business off of home grown Excel systems.
Further down in the article Robert states:
Instead of asking "What problem are you trying to solve?" we should be stating "Here's what we have available, what is missing or needs to be altered for your needs, and will this work in other parts of the business?" The former question implies that IT knows more about the business and its specific issues than the business does.
Which it doesn't, and never did.
I understand Roberts point but this is where I ask the question, "Are you customer centric or a customer servant?" If you are a mere servant for the business, when they ask for stuff you simply build it the way they want. At the end of the day, you are letting the users design systems. If you are customer centric, your goal is to provide the business with accurate tools while at the same time ensuring that the business processes being requested are value added. One of the main reasons why BPM is so hot these days is that we have been servants to the business for years. The business knows what they need to do their jobs, IT should know how to provide solutions to meet those needs. My company just reevaluated its business processes in a certain area of the business and found that over 50% of the processes were non-value add processes, also known as waste. Why is this? For years the users asked for reports and we created them. The users knew what they needed but they did not ask us to build the right solution, nor should they. Here is an example:
We were asked to create a "data quality check" report to ensure that a certain attribute in a legacy order entry system matched the appropriate value of an attribute in a legacy financial system. The real problem was that the order entry system needed additional quality checks in the user interface to prevent erroneous data from getting into the database. So if I did not ask the question, "What problem are you trying to solve?", we create a new report accompanied by a new non-value add business process which requires manual labor to validate and to correct and does not guarantee that the problem will get fixed. If I do ask the question, I get the answer, "We need to be proactive to find and fix discrepancies between the financial system and the order entry system before we expose bad data to our customers". That response leads us to a simple UI fix which allows the systems to handle the problem and eliminate the need for a data entry clerk to perform more mind numbing, non-value added processes.
I keep going back to
Nick Carr's theory that IT does not matter. If IT is simply taking orders and letting the users design their systems, then Nick is right. Instead, IT needs to help the business meet its objectives by delivering feasible solutions that provide quality, ease of use, and business value. If IT's role is to be servants, then there is no reason for the company to have it's own IT staff. Simply hire cheaper labor to follow orders. Just my 2 cents!