Business Intelligence for Applications
Business Benefits
Extract business and technical insights from application portfolios
Application portfolios automate the operations of every organization. Business processes from core banking to claims processing have become indistinguishable from the applications that execute them. As a result, it is essential that these applications align with the business strategies and goals of the organization.
Applications have been developed over the course of years, or even decades. As a result, there is ample time for complexities to creep into a system. New requirements, short timelines, and varying levels of staff experience lead to rising complexity. Combine this with a loss in subject matter expertise as retirements set in and a loss of current documentation, and complexity becomes pervasive.
Business Intelligence for Applications
How can we overcome the challenges of complexity to improve development activities? The answer is by collecting and using business intelligence for applications. By sharing information about application portfolios across global teams, users can better respond to the needs of the business. And they can start reallocating resources away from the daily firefighting toward higher value enhancement activities. Business intelligence for applications allows the following:
- Managers to better prioritize maintenance activities based on business needs
- Business analysts to better communicate change requests
- Development managers to better focus effort
- Developers to better execute necessary changes
- Improved knowledge transfer between development teams
But what does business intelligence for applications entail? Let's look at its constituent parts.
Technical Intelligence
Development professionals must understand the complex structures and behaviors of their enterprise applications. This requires visualizations of how data and other elements flow through a system. It requires the ability to probe an application for artifacts of interest, such as variables that require extra security, elements that will be affected by a proposed change, or code that is inefficiently architected. It requires the ability to measure the size and complexity of the applications to assess the size of a project and focus effort.
To fully understand the reality of our application portfolio requires rich technical insight. Rather than relying solely on high-level scans of artifacts, users must be able to assess their applications to a level that is useful. A manager or architect may find summary analytics to be sufficient. A developer will require highly detailed analysis within programs. Similarly, users will require technical insight across diverse applications. Application portfolios consist of software from COBOL to Java. Technical analysis must be just as inclusive.
Business Intelligence
Over time applications tend to lose their connection with the business function they were designed to support. This is manifested in the creation of names for variables, programs, and other elements that are impenetrable to business users. This requires a shared lexicon between analysts and development teams.
Additionally, it is important for users to understand the logic of how a system behaves. This logic describes business decisions like "approve discount if customer status equals 'gold.'" Governance of this logic allows analysts to better communicate how a process must adapt to support new requirements. It also allows development teams to focus immediately on adapting the correct logic.
Stakeholder Intelligence
As discussed, users have different information and different information needs related to the application portfolio. Complexity can be reduced by collecting relevant insights and making them available where necessary. For example, a business user may have insight into the purpose and behavior of a business process. Mapping this intelligence onto software assets allows development staff to more readily understand how code modifications should be executed.
Other kinds of information can also be associated with applications to provide a richer insight. For instance, executives can assign value and risk to portions of the application portfolio. Similarly, cost and business service data like availability could be associated with an application. This information can be valuable for monitoring the adherence of maintenance teams to service level agreements.