Agility

Agility

Faster returns, improved performance – continuous improvement

RAPID

Many organizations find that IT solution based projects frequently don’t deliver the anticipated business value and often run into a variety of difficulties. Moreover, project teams and senior management have a different approach for project execution. Project teams, often concentrate more on tactical aspects and tend to focus on methodology that will help them get features delivered to customer efficiently and with better quality. Senior management, on the other hand, lay emphasis on the strategic aspects such as project budgeting and payment milestones.

Robust Agile Practices Integrated Delivery (RAPID) is a standardized project delivery framework delivering the agility and flexibility that organizations demand today. RAPID enables effective Agile project delivery covering the execution and governance aspects of project delivery, eliminates fixed price engagements and strengthens the standard Agile methods. The framework adds a phased lifecycle, formal project and risk management techniques to support robust governance.

Governance Execution

RAPID is designed to leverage the power of Scrum and the structure of the Disciplined Agile framework. Scrum execution methodology and underlying CX engineering practices which are adopted from Extreme Programming) form the core execution engine of RAPID. The diagram below explains how RAPID leverages various techniques to address specific problems.

Rapid 2.0 Composition

Scrum and CX

Scrum and CX form the core of RAPID execution framework. Scrum functions as the Agile methodology of choice and is based on timeboxed iterations called Sprints. As an Agile methodology, Scrum is consistent with the values of the Agile Manifesto.

Individuals and interactions over processes and tools

Scrum is a team-based approach to delivering value to the business. Team members work together to achieve a shared business goal. The Scrum framework promotes effective interaction between team members so the team delivers value to the business. The Scrum team has ownership of:
  • Deciding the best approach to execution
  • Delivering solution
  • Identifying impediments
  • Resolving all the difficulties within its scope
  • Working with other parts of the organization to resolve concerns outside their control

Working software over comprehensive documentation

Scrum considers a working, finished product increment as the primary measure of progress. A Scrum team’s goal is to produce a product increment every sprint. The increment may not include enough features for the business to decide to ship it, but the team’s job is to ensure the functionality present is of shippable quality.

Customer collaboration over contract negotiation

Scrum is designed to promote and facilitate collaboration. Team members collaborate with each other to find the best way to build and deliver the solution. The team, especially the product owner, collaborates with stakeholders to inspect and adapt the product vision.

Responding to change over following a plan

RAPID recommends the use of Continuous Planning. In addition to planning for current sprint, teams can create longer-term plans, covering multiple sprints. This helps the team and the business make decisions. The teams should follow adaptive culture of responding to and embracing change than to stick with upfront predictive plan.

CX (a combination of TDD, CI, CT & CD) covers the supporting engineering practices that automate code integration, testing and code delivery in order to improve productivity. Test Driven Development is a development practice that relies on repetition of short development cycle.

Disciplined Agile Delivery

RAPID is based on DAD, a governance framework. It’s a process decision framework that enables simplified process decisions around incremental delivery. It recommends a risk-value delivery lifecycle over value driven lifecycle. Teams are encouraged to consider risk associated with story points while prioritizing product backlog, in addition to the expected business value. Its goal-driven approach compliments Scrum's sprint-wise planning. This is imperative as it allows identification of delivery milestones and their relation with the invoicing model. This makes DAD a scalable option that’s also enterprise aware.
RAPID projects have the following high level phases during a project lifecycle.

Rapid Phases

Project begins during inception phase, followed by iterative construction and transition activities, culminating in the production phase at the end.

Inception

During this phase project initiation activities occur. Once the project to be executed is identified by stakeholders, the team performs the following activities during this phase:

Administrative

  1. Project Initiation: Project is formally initiated in internal project management system and the necessary hardware and software is set up.
  2. Team Set Up: Team members are identified and trained.

Project Management

  1. Agreement on Scope: Product owner facilitates an agreement on scope between business stakeholders and scrum team. Project manager ensures that the team and stakeholders have a common understanding of the project scope.
  2. Agile Estimation: Scrum team estimates the size of the project using Agile Estimation
  3. Agreement on How Requirements Will Be Managed: Project Manager, Product Owner and the Scrum team establish a common understanding of the way requirements will be identified and managed. In most cases, requirement gathering happens in parallel with development. Team should establish a common understanding on aspects such as frequency of product backlog grooming sessions, project viability checkpoints and process to treat scope changes.
  4. Agreement on Delivery Milestones: The team and stakeholders agree on delivery milestones identified.
  5. High Level Enterprise Aware Architecture Modelling: This is done to establish the overall direction of architecture rather than developing it upfront. Detailed architecture evolves during product development.
  6. POCs is carried out, if required.
 

Construction

RAPID Construction phase consists of a series of timeboxed sprints that produce potentially shippable product at the end of each cycle. Key activities performed during Construction are as below:

Project Management

  1. Sufficient Requirements to Start: The team ensures that there are sufficient requirements to start the sprint. Based on the story point size of the feature and team's velocity, the team can decide on the minimum number of stories that are necessary to start the sprint.
  2. Embrace Change: Besides planning the current sprint, teams can create longer-term plans, covering multiple sprints. This helps the team and the business make decisions. The teams should follow adaptive culture of responding to and embracing change than to stick with upfront predictive plan.
  3. "Definition of Ready": Scrum team and Product Owner agree on the definition of "Ready" before the sprint begins. This is an agreement where a particular story can be taken for development. If all sides don't agree that a story is "Ready" for development, it’s not taken up in the sprint.
  4. "Done" - Scrum team and product owner agree on the definition of "Done" before the sprint begins. After the completion of each sprint, product owner verifies the features delivered and explicitly marks them "Done" or accepted. Such acceptance driven execution ensures that the team is working on the features as per the priorities set by the product owner and stakeholders.

Development

  1. Agile Architecture Practices: Teams follow the Agile architecture practices to develop a product.
  2. Produce Potentially Shippable Product: Each sprint aims at producing a potentially shippable product. Business sponsors may eventually take a call on deploying the feature to production, however if they do decide to do so, the feature is expected to work in line with the production environment.
 

Transition

For large enterprises, Agile projects deploying the solution to the stakeholders is often a complex exercise. RAPID teams streamline their deployment processes so that over time this phase becomes shorter and ideally disappears from adopting the continuous deployment strategies.

Project Management

  1. Sufficient Features Ready: The team ensures that sufficient features are ready to be pushed live, instead of waiting for the entire development to finish. This is consistent with the team’s objective of delivering potentially shippable product at the end of each sprint.

Development

  1. Release & Deployment planning
  2. Executing Prod Deployment: Activities involved here include preparing the application for release, configuring, building, and testing a release version of the application.

As a framework, RAPID does not have a specific preference for an execution methodology. It can be tailored to support a number of options from waterfall to various flavors of Agile. Following guidelines indicate how you can choose right execution methodology based on your organizational needs.

Scrum Water-Scrum-Fall Waterfall
Budget Allocation Ongoing/ Upfront Upfront Upfront
Project Planning and Requirement Gathering Ongoing Upfront Upfront
Adaptability to Changing Requirements High Low Low
Deployments Ongoing Ongoing Towards the end
Feedback Cycle Frequency High High Low
In Process Visibility High Low Low
Customer Involvement Provide direction throughout Provide direction at the beginning, review at intervals Provide direction at the beginning, review at the end

RAPID Execution Framework Layer provides solutions to specific problems by leveraging underlying DAD and Scrum frameworks.

Budgeting for an Agile Project

  1. Establish an understanding of the stakeholder’s vision during Inception phase
  2. Breakdown the high level vision into smaller user stories
  3. Refine into workable requirements during product backlog grooming
  4. Scrum team can use Agile Estimation technique using story point estimation. If the entire scrum team is not identified, it’s recommended that a core team comprising of Scrum Master, Architect/ Technical Lead and QA representative are involved in this process. Product Owner should help clarify the user stores at this point if needed
  5. Sum of all story points gives overall size of the project
  6. Translate the story points into hours, divide it by the team velocity. This gives number of sprints needed to complete the work
  7. Velocity can be applicable provided the teams have the same team size and sprint length
  8. Once the sprint length and team size are identified, it becomes easy to translate it into person hours and cost

Identifying Agile Project Milestones

  1. During Inception phase, when team follows above steps to identify project budget, it can also arrange stories by sprints, based on risk-value of each story
  2. This exercise allows the team to identify the expected sprint in which a particular story or feature may get delivered
  3. These are project milestones which can be tied down to invoicing as required

Continuous Planning

  1. Responding to change is a core Agile value. Continuous planning is the process that allows teams to embrace changing business needs instead of sticking to a pre-determined plan
  2. RAPID Inception phase produces stakeholder vision as a deliverable. When the project enters construction phase, it is necessary that the team has sufficient requirement to start the work
  3. Product Owner ensures that the team has sufficient requirements available and they satisfy the agreed Definition of Done
  4. It is likely that the Product Owner may continue to work on identifying stories for the rest of the project, while the team starts with initial sprints
  5. During sprint planning session, the team plans all the sprints whose stories are identified
  6. The process is followed for all subsequent sprints
  7. If new stories are identified during the sprint execution, they are added to the backlog. Each sprint planning session also serves as a project viability checkpoint where the impact of newly added stories on project budget is assessed
  8. Project Management and Client Principle can take a decision on marking the added scope as billable change

How is RAPID Different and Better?

The Bitwise client service experience is the single most compelling factor for our growth. Our ecosystem ensures that each client has a distinctive and satisfying experience, ensuring the underlying fundamentals of the Bitwise promise remain unchanged.

Client Service Ecosystem

 

Share this page

Want to learn more?

Let's talk about how Bitwise can empower your organization with a better approach to data and analytics.

TOP