Quantcast
Channel: Infosys-Oracle Blog
Viewing all articles
Browse latest Browse all 561

Agile BI - Implementation through continuous process and Best practices

$
0
0

What is Agile BI?

Agile Business Intelligence (BI) is about delivering the bits and pieces of functionality in manageable chunks using shorter development cycles rather than implementing the whole BI functionality at once. Here the focus is on delivering quality product to meet the changing business needs within quick turnaround time.

Agile Sprint Overview

The Agile sprint starts with Planning and ends with Review & Retrospective. A brief stand up meeting called daily scrum is held every day to get an update on the progress.

The Sprint is a continuous process with one cycle followed by the next cycle without end and it includes the below elements of Scrum.

User Story: A User Story describes the business need in brief and it is a clear fine-grained requirement. Every user story gets a unique ID.

Epic: Epic is a large user story and usually span across multiple sprints. The Epic need to be broken into smaller stories before work on them.

Product Backlog: It houses all the stories planned for any sprint and is prepared by the product owner and ordered by priority.

Release Backlog: A release is a time frame within which all the iterations/sprints are completed. A release backlog is a subset of Product backlog which contains the user stories that are planned to be delivered in the coming release. Product owner with help from team and other stakeholders would select some amount of high priority work and move them to the release backlog.

Sprint Planning: The work to be performed in the sprint is planned at the sprint planning and Sprints should be in short iterations with some functionality delivered.

Scrum Meetings: The Daily scrum is a 15-30 min time boxed event for the development team to synchronize activities and plan for next 24 hours.

Sprint Retrospective: Retrospective's main aim is to discuss the results and determine the ways how to improve development process on the next sprint. The Scrum master hosts this and talks about the accomplishment of team in the last sprint and lesson learned.

 

 

 

                                              Fig 1. Sprint release flow

 

 

Scrum Agile Methodology

Scrum is an agile process that enables business requirements to be delivered in the short period of time and it allows the deployment of requirements into production every week or bi - weekly. Scrum projects make progress via series of "sprints". The roles and responsibilities in agile scrum process are -

Product owner: Takes care of the end user's interests and prioritizes the items based on customer usage.

Scrum master: Coordinates the whole scrum process and make sure that Scrum is used in a proper way and also holds the Scrum meetings.

Development Team: Responsible for the creation and delivery of BI solutions. This includes data modeling, ETL developing, data reporting or, testing, and release activities, as well as others.

BI/Data Architecture: Understand BI tools, processes, architecture and deliverables, coordinate any architecture integration, design solutions, and provide problem solving.

BI Testing: Test the reports, dashboard and ETL programs and validate the data sufficiency and accuracy.

 

Best practices for Agile BI Projects

Active participation of stake holders: The Active Stakeholder Participation is an essential practice in Agile BI developments to avoid any gaps and to have the update in business needs if required.

Break the User stories into meaningful and smaller chunks: If a User story is an epic, break them down as

1.      Stories for creating new dimensions, measures

2.      Stories to build the reports combining the dimensions and measures.

Breaking down the deliverable into multiple and manageable stories helps in assessing the effort accurately.

Use incremental and Iterative approach for DW: Propose Stories such that it increases dimensional and fact coverage incrementally and results in incremental Data Warehouse expansion. This would also avoid the rework from story to story.

Use Planning Poker tool for Story pointing: Agile teams use Planning Poker for estimating the user stories.

Planning Poker is a technique for story point estimation using consensus based approach and a deck of cards with values like 0, 1, 2, 3, 5, 8, 13, and 20 etc., given to each member of the team. Here the value represents story points. The Product Owner/Scrum master reads the description of each user story or theme to be estimated and each agile team member selects a card depending upon the value assigned to it. The process is repeated until team arrives at a single estimate.

Better story point estimation: Definition of "Done" should include both the development and acceptance testing within the same Sprint. This helps in better story point estimations, as we can compare the stories better.

Effective Communication: Agile project's success depends on communication, more so in case of distributed teams. Distributed teams should be provided with facilities such as video conferencing, screen sharing capabilities in addition to traditional messenger and conference bridges for better collaboration.

Team structure: Allocate specific resources of the development team to work on production bugs in order to avoid distractions that would impact the sprint deliverables. This helps the team to stay focused which results in better Sprint progress.

Conduct weekly Design Thinking Sessions: This session helps to resolve any potential design issues for planned user stories in the earlier stages of the Sprint. Design thinking sessions can be planned every week among agile team to review the design of deliverables.


Viewing all articles
Browse latest Browse all 561

Trending Articles