I am a developer at heart. Even while doing other jobs, I still describe my vocation as a software engineer. Sometimes being a software engineer makes you feel like the odd one out. Meetings concerning business intelligence (BI) used to make me feel that way. The people in the room were talking about data, reports, feeds, and data stores — all things that we do in software development, but their focus was different enough to make me feel like a fish out of water. But that is changing and the gap between BI and software development seems to be closing. Let me highlight a few data points:
- The output of BI is more usable by applications — The output from BI tools was traditionally the province of spreadsheets and printouts, but increasingly can be used as a source of data for an application system. Imagine being able to drop a sales history chart into a quotation system, or sales person commission into a HR review. Even if you are not exploiting this today, the writing is on the wall for a more flexible data input approaches that allow knowledge workers to select additional information to augment static feeds.
- Valuable information is more than just a set of end states. IT orgs are placing increasing importance on not only the data being stored, but also the transactional information of that data. For example, who took the order, what time of the day was it, how long did it take, what other products were browsed before this was ordered? Application systems need to surface this transactional data and cannot be gathered by a extract report.
- The information life cycle of an entity requires careful stewardship throughout. Integrity, trust, and security are just some of the attributes that are playing an increasingly important role in the value of information. Application developers have the power to increase or decrease the value of the information asset by the amount of attention they give this information, how they store it, the metadata they keep about it, and the security to give it.
But what does it mean to application development professionals ?
With great power comes great responsibility, but that responsibility is only possible when you development teams understand the value of the information they are managing within the applications they are developing. That means following 4 simple steps:
- Ask difficult questions concerning the information. By asking the business how this data is going to be used, where it comes from, and how long it is valid for helps broaden the development teams’ appreciation of the data.
- Look to different places to get data from, but be careful as to its trustworthiness. Ask subject matter experts how they make decisions, what data feeds they are using to augment the data in the existing system, and how they can be related to the problem at hand. BI does not just have to be from internal data warehouses, but also external information sources.
- Add metadata to the transactional information. Start thinking about if there is additional valuable information that can be obtained from the context and activity being performed. Capture that in the form of metadata.
- Develop BI reports in parallel with transaction requirements. Has the application is changed or developed work with the BI teams developing the associated reports, incrementally improving data breadth and depth.
Perhaps with these four simple steps application development can increase the value of information being held by their company and build better applications to boot.