Mark Flaherty (MF): What we are doing now in the agile BI arena is responding to new requirements fairly rapidly through direct interactions between these various stakeholders, IT and the business with incremental prototyping and iterative prototyping, where it's all about face-to-face interaction that allows you then to quickly move towards an environment where you don’t need to, and shouldn’t, have any big grand unified BI development effort that’s a boil-the-ocean initiative but rather you can build your BI, your reports your queries, your predictive models and so forth in a very iterative fashion.
Each of these development stages delivers a working product essentially that addresses some large or small fine-grain requirements. So you are minimizing your risk moving towards an agile BI approach. So this whole approach for the agile BI involves services infrastructure. Like I said, social technologies, we are seeing more and more uptake of that in the BI and data services arena to enable direct interaction between these different groups, using a common community infrastructure.
#1 Ranking: Read how InetSoft was rated #1 for user adoption in G2's user survey-based index |
|
Read More |
Service-Oriented Architecture Context
In terms of integrated BI and data services component management, increasingly, we are seeing that all rolled out in a service-oriented architecture context so you can essentially leverage all of the platform and the infrastructure and the middleware as you have within your agile system’s environment into BI and analytics projects.
A Service-Oriented Architecture (SOA) is a software design approach that structures an application as a collection of loosely coupled, interoperable services. In an SOA, services are self-contained, modular units of functionality that can be accessed and reused across different applications and platforms. These services are designed to be independent of each other, communicating through standardized protocols such as HTTP, SOAP, or REST, and can be orchestrated to perform complex business processes. By decoupling functionality into discrete services, SOA enables greater flexibility, scalability, and agility in developing and deploying software systems. At the heart of SOA is the concept of service abstraction, which hides the underlying implementation details of a service and exposes only its interface or contract to other services and clients.
This abstraction allows services to evolve independently over time, as long as they maintain compatibility with the agreed-upon interface. Additionally, SOA promotes service reusability, allowing organizations to leverage existing services to build new applications or extend existing ones more efficiently. By encapsulating business logic and functionality within reusable services, SOA reduces duplication of effort, promotes modularization, and facilitates rapid development and integration of software systems.
Another key aspect of SOA is service interoperability, which enables services to communicate and interact with each other regardless of the underlying technologies or platforms they are built on. Services in an SOA are designed to be platform-independent and language-neutral, allowing them to be accessed and invoked by clients implemented in different programming languages or running on different operating systems. This interoperability fosters greater integration and collaboration across heterogeneous IT environments, enabling organizations to leverage existing investments in legacy systems while adopting new technologies and architectures. Overall, SOA provides a flexible and scalable foundation for building distributed systems that can adapt to changing business requirements and technological landscapes.
Where agile BI and agile data access stresses reuse, and that reuse is via service oriented architecture, there is a lot of REST, Representational State Transfer, for building out Web focused BI and data services capabilities through a matching of abstraction layers and similar virtualization schemes that essentially help you to hide or conceal a lot of the complexity of the source data models and schemas and formats and present a unified object model and way of accessing just for information sets in a way that’s fairly and relatively simple and visual in terms of the set of modeling tools.
Agile data access is the core of any agile BI effort. When you look at agile data access, look at it on several levels. Essentially what you need to do to build out an agile data access strategy is that you need to think about refactoring all of your data integration, data persistence, access and presentation and other BI components as the usable capabilities that can be leveraged into new projects fairly quickly.