When to use Agile/Scrum



Similar documents
When is Agile the Best Project Management Method? Lana Tylka

How to manage agile development? Rose Pruyne Jack Reed

Introduction to Agile Scrum

Scale agile throughout the enterprise A PwC point of view

TSG Quick Reference Guide to Agile Development & Testing Enabling Successful Business Outcomes

Quality Assurance in an Agile Environment

Lean QA: The Agile Way. Chris Lawson, Quality Manager

AGILE & SCRUM. Revised 9/29/2015

Waterfall to Agile. DFI Case Study By Nick Van, PMP

Building Software in an Agile Manner

Balancing the Hybrid Development Process. The role of the Business Analyst

EMC PERSPECTIVE. Adopting an Agile Approach to OSS/BSS Development

Introduction to Agile and Scrum

Water-Scrum-Fall Agile Reality for Large Organisations. By Manav Mehan Principal Agile consultant

Agile Information Management Development

Nova Software Quality Assurance Process

Sometimes: 16 % Often: 13 % Always: 7 %

Agile Projects 7. Agile Project Management 21

Getting Business Value from Agile

Applying Agile Project Management to a Customized Moodle Implementation

Adapting Agile Software Development to Regulated Industry. Paul Buckley Section 706 Section Event June 16, 2015

How Product Management Must Change To Enable the Agile Enterprise

Agile and Secure: Can We Be Both?

Agile and Secure: OWASP AppSec Seattle Oct The OWASP Foundation

Agile Project Management and the Real World. Emily Lynema DLF Fall 2010 November 1, 2010

AGILE METHODOLOGY IN SOFTWARE DEVELOPMENT

CHAPTER 3 : AGILE METHODOLOGIES. 3.3 Various Agile Software development methodologies. 3.4 Advantage and Disadvantage of Agile Methodology

Whitepaper. Agile Methodology: An Airline Business Case YOUR SUCCESS IS OUR FOCUS. Published on: Jun-09 Author: Ramesh & Lakshmi Narasimhan

Mastering the Iteration: An Agile White Paper

The Truth About Agile Software Development with Scrum, The Facts You Should Know

The Team... 1 The Backlog... 2 The Release... 4 The Sprint... 5 Quick Summary Stakeholders. Business Owner. Product Owner.

Agile Scrum Training. Nice to meet you. Erik Philippus. Erik Philippus (1951)

Software Development Life Cycle (SDLC)

Adopting a Continuous Integration / Continuous Delivery Model to Improve Software Delivery

Table of contents. Performance testing in Agile environments. Deliver quality software in less time. Business white paper

Introduction to Agile

PLM - Agile. Design Code Test. Sprints 1, 2, 3, 4.. Define requirements, perform system design, develop and test the system. Updated Project Plan

Measuring ROI of Agile Transformation

Course Title: Managing the Agile Product Development Life Cycle

Supply Chain Maturity and Business Performance: Assessment and Impact

Topics covered. Agile methods Plan-driven and agile development Extreme programming Agile project management Scaling agile methods

Taking the first step to agile digital services

SCRUM BODY OF KNOWLEDGE (SBOK Guide)

Traditional SDLC Vs Scrum Methodology A Comparative Study

Issues in Internet Design and Development

Course Title: Planning and Managing Agile Projects

In today s acquisition environment,

AGILE BUSINESS SERVICES. Guiding and supporting your business. at any stage of your agile journey

Executive Guide to SAFe 24 July An Executive s Guide to the Scaled Agile Framework.

Introduction to Agile Software Development Process. Software Development Life Cycles

Redefining Agile to Realize Continuous Business Value

Agile Practitioner: PMI-ACP and ScrumMaster Aligned

Agile Software Development and Service Science

1. Sprint Planning. Agile Ceremonies Demystified. A four part series written by Angela Boardman, CSM, CSP ATG (4284)

Don t forget the testers

Agile & PMI Project Management Mapping MAVERIC S POINT OF VIEW Vol. 7

Agile Development Overview

SCALING AGILE. minutes

Agile Development. Redefining Management in Project Management. Neil Stolovitsky

An Introduction to Agile Performance Management

Scrum: A disciplined approach to product quality and project success.

Adopting Agile Approaches for the Enterprise

Agile Methodologies and Its Processes

In the IEEE Standard Glossary of Software Engineering Terminology the Software Life Cycle is:

Agile and Secure Can We Be Both? Chicago OWASP. June 20 th, 2007

The Agile Manifesto is based on 12 principles:

Agile vs. Waterfall. Why not both. Arnold Okkenburg PMP

Agile Project Management and Agile Practices Training; with a Scrum Project that you will do.

TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW

Selecting a project management methodology

Agile So)ware Development

RAPID ENGINEERING WITH AGILE RIGHTSHORE DELIVERY (REWARD)

Agile Scrum Workshop

Answered: PMs Most Common Agile Questions

Applying Lean on Agile Scrum Development Methodology

Moderator: Albert Jeffrey Moore, ASA, MAAA. Presenters: Albert Jeffrey Moore, ASA, MAAA Kelly J. Rabin, FSA, MAAA Steven L. Stockman, ASA, MAAA

This handbook is meant to be a quick-starter guide to Agile Project Management. It is meant for the following people:

Agile/Scrum Implemented in Large-Scale Distributed Program

Medical Device Agile Systems Development Workshop

Introducing Agility into a Phase Gate Process

Agile Systems Engineering: What is it and What Have We Learned?

Challenges in adopting Agile

Scrum, User Stories, and More! CSCI 5828: Foundations of Software Engineering Lecture 22 11/06/2014

Succeeding with Business Process Outsourcing

Statistics New Zealand is Agile Continued Implementation of AGILE Process at Statistics NZ

How to optimize offshore software development with Agile methodologies

A Viable Systems Engineering Approach. Presented by: Dick Carlson

Iteration Planning. also called Iteration Kickoff

AGILE SOFTWARE TESTING

When User Experience Met Agile: A Case Study

Leveraging Agile and CMMI for better Business Benefits Presented at HYDSPIN Mid-year Conference Jun-2014

Transcription:

When to use Agile/Scrum A Common Sense Model to Determining When or If You Should Leverage an Agile Scrum Methodology Depending on Your Project, Resources and Company. By Rick Rene Managing Director of Consulting Note: This White Paper assumes the reader already has a basic knowledge of Agile and Scrum.

The Agile Landscape Today Agile and Scrum are hot concepts today and many advocates feel this is the only way to go. Many case studies are emerging showing the true value of iterative development, even with large complex programs that may have numerous interdependent projects. But does this mean that Agile and Scrum is a no brainer for your organization? And even if you have had some successful projects, does that mean that all types of projects should use Agile moving forward? Also, can distributed and offshore resources be leveraged for Agile projects? Common Sense Framework To give these attributes a framework of common sense, we will look into 3 frequently used Software Development Life Cycle (SDLC) methods that we see within the IT world today. T hen we will dive into the characteristics of the above 3 attributes (project, resources and company) to help determine which SDLC will most likely be successful. The 3 SDLCs we will discuss include: Agile using Scrum (Co-Located) Agile using Scrum (Distributed) Sequential Development (Waterfall) Should Agile be used by all companies for all types of projects? Can distributed and offshore resources be leveraged for Agile projects? Agile is Not Always Suitable Agile and Scrum is not suited for all projects. You need to look at the characteristics of the project, the resources and the company before deciding to move down the Agile Scrum path. Some Agile purists would disagree, but common sense can prevail if you use a model that looks holistically at these three main attributes: Project Attributes Resource Attributes Company Attributes Moving down the Agile path before analyzing these attributes can lead to frustration when Agile projects go astray. Many other Agile or iterative development methods exist besides Scrum (XP, FDD, UP, Lean, DSDM, etc.) However, Scrum has become the most popular and most successfully implemented, largely because of its simplicity. All of these Agile methods focus on prioritization of features/ user stories by business value and working in short fixed time frames/sprints where each iteration produces working software. With Scrum, co-located teams are recommended for maximum productivity. However, new techniques and tools are available that are now allowing distributed teams, even with offshore resources, to be effective with Scrum. The Waterfall Sequential SDLC dominated best practice thinking until the iterative movement took hold over the last decade. Many flavors of Waterfall also exist, but nearly all have an emphasis on comprehensive documentation, sign-offs and heavy project management. 1 www.wavecreste.com

Common Sense Framework (continued) Descriptions of each of the SDLC we will use for this model are provided in the matrix below: Based on the above definitions, we will now determine when to use each of these development methodologies based upon the project, resources and company attributes. When To Use Agile Using Scrum (Co-located) Co-located Agile often produces the best results of reliable working software in short timeframes (usually 2-4 weeks). Co-location allows for daily stand-ups, improved communication and teamwork. Use Co-located Scrum when the characteristics of the Project include: High Profile Project. Success is an imperative so you need continual feedback from the business. You are also more likely to get a strong full-time dedicated Product Owner from the business which is critical to the success of Scrum. Newer Technology. When working with new technology, surprises will happen and adjustments will need to be made. Short sprints allow these problems to surface early which is important to success with newer technologies. Innovative Process. When IT is working with the business on an innovative process, the business needs to be part of the team since there is likely very little tribal knowledge or proven out detail processes. A Scrum Product Owner is more vital than ever when rolling out innovative processes. Requirements Flexibility Needed. If requirements are likely to change for any reason, Agile will be much more productive than Waterfall as only a small number of high value features are developed each Sprint. If there is any directional uncertainty, an Agile approach can help create progress and momentum while providing for flexibility to change directions as competitive, regulatory or environmental needs become clear. Quick Time to Market Needed. Only developing the highest priority features and having working software in each sprint results in a better chance of eliminating non-vital features. In addition, co-located teams almost always have shorter ramp-up times. 2 www.wavecreste.com

When To Use Agile Using Scrum (Co-located) (continued) Use Co-located Scrum when the characteristics of Resources include: Dedicated Full-Time Team Members that are Cross-Functional. Scrum needs to have full-time dedicated resources that are cross functional (developers, testers, etc.). The ideal team size of 5-7 dedicated team members with a dedicated Scrum Master and Product Owner from the business. Ability to Co-locate. Often co-location can be accomplished through the use of local resources as well as augmenting the team with Agile experienced contractors or consulting resources. This can include resources that travel weekly to the team site. When the scale of a project increases, often talent from multiple locations needs to be leveraged and colocation may not be an option. Team Sizes Between 2-10 Members. Dedicated, co-located, cross functional teams of the correct team size will perform best with Scrum. Projects that are too small to be cross-functional with dedicated development resources often are not good candidates for Agile. Large complex projects can also be a challenge for Scrum, especially if a significant number of developers are needed. A Scrum of Scrum concept can help scale larger projects with multiple Scrum teams, however, each team ideally needs to have a the majority of the team located with the Product Owner and the business stakeholders. Use Co-located Scrum when the characteristics of the Company include: Collaborative Culture. A business that is less command and control and encourages teamwork within and between the business and IT. Business that is IT Savvy. A business that needs to be in charge of all critical IT projects. Every critical project needs one business Product Owner and to allow scope to be flexible for each sprint. Contracting with IT and vendors is based upon timeframes and prioritized workable code, not based upon scope. Co-location allows for daily stand-ups, improved communication and teamwork When to use Agile Using Scrum (Distributed) Distributed Scrum is more difficult to execute than Co-located Scrum as a co-located team will almost always outperform a distributed team. However, when it s infeasible to co-locate talented team members, distributed agile often is the best choice. Distributed teams significantly increase communication challenges. You will need well defined and followed processes, distance communication tools and documented methodology on how all of the parts work together to allow Scrum to work. Example tools include unified communication tools (video or web conferencing) and Agile development software (Rally Dev, Version One, etc.). With distributed teams running a Sprint Zero and the first few Sprints on a co-located basis, can be very helpful. Also, having empowered Scrum Masters and Product Owners offshore can often create selffunctioning teams offshore. Use Distributed Scrum when the characteristics of the Project include: Same as Co-Located Agile (see above for detail). High Profile, Newer Technology, Innovative Process, and Requirements Flexibility Needed. Ramp Up Time is Available. For new teams, ramp up time will be longer than co-located teams or established Waterfall teams. However, ramp-up time is often worth the investment when Agile productivity is realized. In addition, early co-location of the teams can shorten this ramp up time. 3 www.wavecreste.com

When to use Agile using Scrum (Distributed) (continued) Use Distributed Scrum when the characteristics of Resources include: Dedicated Full-time Team Members that are Cross-functional. Same as Co-Located Agile (see above for detail). Inability to Co-locate. Often co-location cannot be easily accomplished (space, budget, etc.) and the talent on either or both IT and the business is naturally distributed. Larger Team Sizes Needed. Projects that are complex and need a large amount of resources often cannot be co-located. If many of the characteristics point to agile, Scrum can be successful, even with offshore resources. Processes and Tools discussed above need to be leveraged and a Scrum of Scrums concept should be considered. Use Distributed Scrum when the characteristics of the Company include: Use Distributed Scrum when the characteristics of Collaborative Culture. Same as Co-located Agile the Company include: (see above for detail). Collaborative Culture. Same as Co-located Agile Business that is IT Savvy. Same as Co-located Agile (see above for detail). (see above for detail). Business that is IT Savvy. Same as Co-located Agile (see above for detail). When it s feasible to co-locate When it s feasible to co-locate talented talented team members, distributed Agile team members, often distributed is the best Agile choice often is the best choice When to use Sequential Development (Waterfall) When actively managed with proper procedures and the right talent, waterfall development can work quite well. However, failure often happens because the characteristics of the project, resources and company are better suited for agile. Use Waterfall/Sequential Development when the characteristics of the Project include: Non-High Profile Project. Not all projects are high profile and can benefit from the rigor of the waterfall methods. Stable Technology. Waterfall is best suited for stable technologies. Significant project delays can occur if a technology surprise happens late in the process. No Major Process Innovation. Many projects don t require major process innovation and therefore, the risk is low of process changes happening midstream. Requirements are Stable. Best suited for welldefined projects with fewer tendencies to change during the project timeline. Quick Time to Market not Needed. It s important for IT to work with the business to prioritize projects against each other to assure projects without a true time to market need are identified. These projects can often be completed with non-dedicated teams which are never recommended with Scrum. Well established waterfall teams often have little ramp up time and thus are often less risky than newly established distributed agile teams. 4 www.wavecreste.com

When to use Sequential Development (Waterfall) (continued) Use Waterfall/Sequential Development when the characteristics of Resources include: Inability to Co-locate. Often co-location cannot be easily accomplished (space, budget, etc.) and the IT and business talent is naturally distributed. Low Cost Talent Available. Less expensive resources with less experience are available (i.e. offshore). Strong documentation is imperative for these projects, so waterfall is often the best fit. Team Size Varies. Scrum works best with teams from 2-10 developers. If the project only needs a few resources or very large teams that are distributed, often waterfall will be a better fit. For very large programs, Agile requires your company to be very mature and disciplined in agile methodology. The Agile Scrum of Scrums has shown much success in delivering large scale projects, but it requires significant experience and success with agile. Use Waterfall/Sequential Development when the characteristics of the Company include: Command and Control Company Culture. Agile is very collaborative and does not work well with dictator type project management. The rigor of Waterfall may be necessary in these cultures. Contracts Require Full Scope and Documentation. Often when working with contracts, flexible scope is not an option. Flexible scope is an absolute necessity of Scrum, so contracts need to written with that in mind. Otherwise, Waterfall may be a better fit, especially if the contract also requires heavy documentation. When actively managed with proper procedures and the right talent, waterfall development can work quite well Companies Can Leverage All Three Methods Many MATRIX clients leverage a combination of the Companies Can Leverage All Three above methodologies by using much of the common Methods sense discussed above. High-profile, quick time-tomarket projects utilize the co-located Scrum Many MATRIX clients leverage a combination of the methodology where we can create value very quickly above methodologies by using much of the common with local teams. For maintenance and other noncritical projects, a waterfall type methodology is sense discussed above. High-profile, quick time-tomarket projects utilize the co-located Scrum utilized. methodology where we can create value very quickly with Some local clients teams. actually For maintenance leverage all and 3 of other above noncritical methodologies. projects, a Larger waterfall initiatives type methodology that are time- is tomarket sensitive utilize distributed Scrum with utilized. offshore resources empowered with offshore Some clients actually leverage all 3 of the above Product Owners and Scrum Masters. Maintenance methodologies. Larger initiatives that are time- tomarket sensitive utilize distributed Scrum with projects use less expensive and less experienced resources leveraging Waterfall. However, several offshore resources empowered with offshore smaller, but time-to-market sensitive projects are Product Owners and Scrum Masters. Maintenance now using onshore, co-located Scrum. projects use less expensive and less experienced resources Designate leveraging from Waterfall. the beginning However, several of the smaller, project but time-to-market what methodology sensitive projects you will are now using onshore, co-located Scrum. leverage and adhere to the methodology principles with rigor Designate from the beginning of the project what methodology you will leverage designate from and the adhere beginning to the of the methodology project what methodology you will leverage and adhere to the principles with rigor The key to improving project success is to assure you methodology principles with rigor and assure you The have key the to proper improving resources project dedicated. success is to If Agile assure is you going designate to be a bigger from the part beginning of you company s of the project future, what it s methodology often best to you create will hybrid leverage teams and adhere of highly to the methodology experienced principles resources with combined rigor and with assure less you have experienced the proper resources. resources Also, dedicated. having the If Agile less is going to experienced be a bigger part resources, of you shadow company s experienced future, it s often resources best to can create allow hybrid you to teams replicate of highly teams with experienced greater success resources on later combined projects. with less experienced resources. Also, having the less experienced resources, shadow experienced resources can allow you to replicate teams with greater success on later projects. 5 www.wavecreste.com

No Mini-Waterfall or Scrumbut I see many clients struggle with Scrum and the causes of these struggles almost always come down to the lack of adherence to Scrum principles. When only a few of the principles are followed, the methodology often becomes a mini-waterfall or WaterScrum which is doomed to failure from the start. Others call it Scrumbut meaning We use Scrum, but we don t. Success with Scrum requires no deviation from the basic principles. Some key Scrum principles include: One dedicated Product Owner (decision maker) from the business as part of the team who meets daily with the team. Dedicated full-time resources that are crossfunctional (QA included!). Each Sprint s scope needs to be flexible within a fixed timeframe and workable code developed for every Sprint. The Sprint deadline is sacred and does not change. A working software demo is given to the business stakeholders for every Sprint. Sprint Retrospectives are completed for every Sprint.. User Stories are prioritized by business value before every Sprint. User stories with serious defects are not considered done and incomplete stories are reprioritized into the user backlog during Sprint Planning. Additional success factors could be discussed, but I find nearly everyone who is struggling with Agile is not adhering to one or more of the above basic Scrum principles. So be sure to pick your methodology for each project from the beginning and then fully live up to the methodology s key principles. Otherwise, you may be using Scrumbut and the desired results will not be met. About the Author: Rick Rene Rick Rene is the Managing Director of Consulting for WaveCreste. Rick helps clients create IT value through services including Agile education and adoption. He helps deliver Agile LunchNLearn sessions for leads training development for Agile and Application Development. Prior to joining WaveCreste, Rick was a Partner with Accenture for the High Tech and Communications market unit and led an IT Department of over 400 resources functioning as the CIO for Excel Communications. Rick holds an MBA from the University of Texas. He can be reached at rick.rene@wavecreste.com. About WaveCreste WaveCreste is an IT professional services, consulting and outsourcing company helping clients leverage technology to improve business results. Our strategic approach to solutions delivery features onsite consulting expertise at the client site backed by offsite teams at our U.S. rural and near-shore centers. This approach provides clients with superior value and ease-of-management when compared to costly global consulting firms or offshore alternatives. WaveCreste was spun off from parent entity Genesis Networks in 2010 and has been delivering value for clients since 2001. WaveCreste is headquartered in San Antonio, Texas, with its flagship rural delivery center in Abilene, Texas, and locations throughout North America. 6 www.wavecreste.com

www.wavecreste.com 2015 WaveCreste WHITE PAPER