Agile Business Intelligence

From Wikipedia, the free encyclopedia

Agile Business Intelligence (BI) refers to the use of Agile software development for BI projects to reduce the time it takes to show value to the organization in comparison to other approaches. It helps in quickly adapting to changing business needs. Agile BI enables the BI team, business people or in general stakeholders to make better business decisions, and to start doing this more quickly.[1][2]

There are different approaches for increasing BI agility. Some points are crucial for the success of agile BI projects. For example, the holistic consideration of BI architectures, BI forms of organization and BI technologies as well as the use of agile process models adapted to BI.

Agile methodology works on the iterative principle; this provides the new features of software to the end users sooner than the traditional waterfall process which delivers only the final product. With Agile the requirements and design phases overlap with development, thus reducing the development cycles for faster delivery. It promotes adaptive planning, evolutionary development and delivery, a time-boxed iterative approach, and encourages rapid and flexible response to change.[3] Agile BI encourages business users and IT professionals to think about their data differently and it characterized by low Total Cost of Change (TCC).[2] With agile BI, the focus is not on solving every BI problem at once but rather on delivering pieces of BI functionality in manageable chunks via shorter development cycles and documenting each cycle as it happens.[4] Many companies fail to deliver right information to the right business managers at the right time.[5]

Agile BI is a continual process and not a onetime implementation. Managers and leaders need accurate and quick information about the company and business intelligence provides the data they need. Agile BI enables rapid development using the agile methodology. Agile techniques are a great way to promote development of BI applications, such as dashboards, balanced scorecards, reports and analytic applications.[6]

According to the research by the Aberdeen Group, organizations with the most highly agile BI implementations are more likely to have processes in place for ensuring that business needs are being met.[7] Success of Agile BI implementation also heavily depends on the end user participation and "frequent collaboration between IT and the business".[7]

Definition[edit]

"Forrester Research defines agile BI as an approach that combines processes, methodologies, tools and technologies, while incorporating organizational structure, in order to help strategic, tactical and operational decision-makers be more flexible and more responsive to ever-changing business and regulatory requirements".[7]

Key Performance Criteria[edit]

Aberdeen's Maturity Class Framework[5] uses three key performance criteria:

  1. Availability of timely management information – IT should be able to provide the right and accurate information in timely manner to the business managers to make sound business decisions. “This performance metric captures the frequency with which business users receive their information they need in the timeframe they need it”[5].
  2. Average time required to add a column to an existing report – Sometimes new columns need to be added to an existing report to see the required information. "If that information cannot be obtained within the time required to support the decision at hand, the information has no material value. This metric measure the total elapsed time required to modify an existing report by adding a column"[5].
  3. Average time required to create a new dashboard – This metric considers the time required to access any new or updated information and it measures the total elapsed time required to create a new dashboard[5].

The Agile SDLC[edit]

Agile SDLC Iterative Process

Five Steps To Agile BI[edit]

Bruni[8] in her article 5 Steps To Agile BI outlines the five elements that promote an Agile BI enterprise environment.

  1. Agile Development Methodology – “need for an agile, iterative process that speeds the time to market of BI requests by shortening development cycles”.[8]
  2. Agile Project Management Methodology – continuous planning and execution. Planning is done at the beginning of each cycle, rather than one time at the beginning of the project as in traditional projects. In Agile project, scope can be changed any time during the development phase.
  3. Agile Infrastructure – the system should have virtualization and horizontal scaling capability. This gives flexibility to easily modify the infrastructure and could also maintain near-real-time BI more easily than the standard Extract, transform, load (ETL) model[8].
  4. Cloud & Agile BI – Many organizations are implementing cloud technology now as it is the cheaper alternative to store and transfer data. Companies who are in their initial stages of implementing Agile BI should consider the Cloud technology as cloud services can now support BI and ETL software to be provisioned in the cloud[8].
  5. IT Organization & Agile BI – To achieve agility and maximum effectiveness, the IT team should interact with the business, but also address the business problems and should have a strong and cohesive team[8].

Twelve Agile Principles[edit]

BI model and its characteristic goals[edit]

Kernochan, in his two-year study of organization's BI process came up with the below model and its characteristic goals:[9]

  1. Data entry — accuracy
  2. Data consolidation — consistency
  3. Data aggregation — scope
  4. Information targeting — fit
  5. Information delivery — timeliness
  6. Information analysis — analyzability

Common Issues[edit]

Kernochan's study found these common issues with the current BI processes:[9]

  • 20% of data has error in it (accuracy)
  • 50% of data is inconsistent (consistency)
  • It typically takes 7 days to get data to the end user (timeliness)
  • It isn't possible to do a cross-database query on 70% of company data (scope)
  • 65% of the time, executives don't receive the data they need (fit)
  • 60% of the time, users can't do immediate online analysis of data they receive (analyzability)
  • 75% of new key information sources that surface on the Web are not passed on to users within the year (agility)

The result concluded that the adding of agility to existing business intelligence will minimize problems. Organizations are slowly trying to move the entire organization processes to agile methodology and development. Agile BI will play a big part in company's success as it "emphasizes integration with agile development and innovation".[9]

Improving Business Intelligence Agility[edit]

There are couple of factors that influence the success of Business Intelligence Agility.

Data Entry[edit]

20% of data is inaccurate and about 50% is inconsistent and these numbers increases with new type of data. Processes need to be re-evaluated and corrected to minimize data entry errors.[9]

Data Consolidation[edit]

Often companies have multiple data stores and data is scattered across multiple data stores. "Agility theory emphasizes auto-discovery of each new data source, and automated upgrade of metadata repositories to automatically accommodate the new information".[9]

Data Aggregation[edit]

Is a process in which information from many data stores is pulled and displayed in a summary report. Online analytical processing (OLAP) is a simple type of data aggregation tools which is commonly used.

Information Delivery[edit]

One of the key principal of Agile BI is to deliver the right data at the right time to the right individual. Historical data should also be maintained for comparing the current performance with the past.[9]

Information Analysis[edit]

One of the largest benefits of Agile BI is in improving the decision-making of its users. Real Agile BI should focus on analysis tools that make an operational process or new product development better.[9] The Agile BI approach will save company money, time, and resources that would otherwise be needed to build a traditional data warehouse using the Waterfall methodology.

Agile BI Checklist[edit]

  • A team of developers and business representatives should be assembled to work together
  • Select either a business stakeholder or technical liaisons to represent the business
  • Identify and prioritize appropriate user stories or requirements to address during an initial project[1]
  • Assess various Agile BI delivery tools that can integrate with your existing data warehouse and BI environment[1]
  • Initiate iterative development process

Advantages of using Agile BI[edit]

Agile BI drives its users to self-serve BI. It offers organizations flexibility in terms of delivery, user adoption, and ROI.

Faster to Deliver[edit]

Using Agile methodology, the product is delivered in shorter development cycles with multiple iterations.[10] Each iteration is a working software and can be deployed to production.

Increased User Acceptance[edit]

In an Agile development environment, IT and business work together (often in the same room) refining the business needs in each iteration.[10] "This increases user adoption by focusing on the frequently changing needs of the non-technical business user, leading to high end-user engagement, and resulting in higher user adoption rates".[10]

Increased ROI[edit]

Organizations can achieve increased rate-of-return (ROI) due to shorter development cycles. This minimizes the IT resources and time while delivering working, relevant reports to end-users.[10]

Agile BI Best Practices[edit]

  1. A program charter should be created, which will set the stakeholder expectations on how Agile BI system will work.[11]
  2. Start with the business information needs to provide context for scope.[11]
  3. Iterations should be time-boxed.[11]
  4. Stress on data discovery through the requirements and design phase.[11]
  5. Use the Agile process of incremental and iterative development and deployment.[11]
  6. Validate the BI Architecture and get approval on the proof of concept.[11]
  7. Data validation and verification should be completed for each development iteration.[11]
  8. Use flow charts or diagram to explain the BI process along with some documentation.[11]
  9. Any change that will be deployed to production should be thoroughly tested in regression environment.[11]
  10. Have a formal change control; this will minimize the risk as all changes have to be approved before it goes into production.[11]

References[edit]

  1. ^ a b c "Enabling Agile Business Intelligence with Balanced Insight Consensus" (PDF).
  2. ^ a b "What is Agile BI". Archived from the original on 2013-10-30. Retrieved 2013-02-09.
  3. ^ Agile software development
  4. ^ DeSarra, Paul. "BI Dashboards the Agile Way". BUSINESS INTELLIGENCE Journal. 17 (4).
  5. ^ a b c d e White, David. "Agile BI – Three Steps to Analytic Heaven", April 2011
  6. ^ Sherman, Rick. "How to leverage agile BI to help your BI architecture", January 2011
  7. ^ a b c Violino, Bob. "Getting a fast start with agile BI development", ComputerWorld, Nov 21, 2011
  8. ^ a b c d e Bruni, Margherita. "5 Steps To Agile BI", Informationweek.com, June 13, 2011
  9. ^ a b c d e f g "Kernochan, Wayne. "What Agile Business Intelligence Really Means", IT Business Edge, April 7, 2011".
  10. ^ a b c d "Making Business Intelligence Easy".
  11. ^ a b c d e f g h i j Larson, Deanne. "BI Principles for Agile Development", Business Intelligence Journal, Volume 14, Number 4, Pg 41, 2009