Featured Whitepapers
- Apples, Oranges, and Acorns - All Agile Development Tools Are Not the Same
- One's Enough for Agile Application Development Management
- Requirements Management 101 – 4 Basics Everyone Should Know
- Tips on Requirements Traceability – Learn How to Control Change and Improve Quality
- Scaling Continuous Integration to Large and Distributed Teams
|
Over the years, many flavors of Agile have emerged: Scrum, Lean, Feature Driven Development (FDD), Agile Unified Process (AUP) and Extreme Programming just to name a few. These methods have numerous complementary and distinguishing features, but the gamut of choices can be confusing and disorienting - as if being told to choose the best from 31 flavors of ice cream. Return on Investment (ROI) is important to me, so Lean must be the answer. But wait, I also want to be agile with my business priorities so I’ll choose Scrum. On the other hand AUP facilitates scaling, so... we are left wanting a simple question answered: “Which Agile method should I choose for my organization?” I have found that one can view an organization at three levels: the Executive/Project Management Office (PMO), the Management/Project and the Development/Delivery. While the organization typically (or hopefully) has aligned goals, each level has their own sub-goals, focus and deliverables. A strategy-focused executive’s eyes will glaze over if you evangelize the virtues of Extreme Programming (XP) such as continuous integration; these technical details are so foreign to the executive that you might as well be discussing the virtues of object-oriented programming. However, the executive will hungrily ask for more information and how fast can we get started if you describe creating greater shareholder value by removing waste and optimizing across the organization, i.e. Lean. So, as Agile matures within organizations we find the question, “Which Agile method do we choose?” is revised to, “Which Agile METHODS do we choose?” I have found that the various organizational levels align near perfectly with three specific Agile Methods: Lean, Scrum and Extreme Programming. In this article, we will look how to best align Lean, Scrum and XP across an organization. The Organization As A System What is “System Thinking?” Simply put, System Thinkers “view the world, including its organizations, from a broad perspective that includes structures, patterns and events, rather than just the events themselves” (McNamara, 2005). Based upon System Theory, System Thinkers understand that “like a living body, an organization is best understood as a whole, rather than in parts.” For example, breaking up an elephant doesn’t create a bunch of little elephants…just a mess (Smith, 2007). The concept of an organization as a living organism inspires one to look at a company’s organizational levels not as mutually exclusive divisions, but rather as mutually dependent sections of the whole. In following sections we’ll see why this view facilitates Agile successfully fitting across an organization, but first let’s look at a simplified breakdown of an organization into levels. On the Level (Of An Organization)
Each level has distinct goals (where they want to be) and objectives (how they get there). The executive focuses on the strategic corporate and shareholder level. The project manager focuses on the team and product delivery level. The developer focuses on the engineering and task delivery level. Each group usually only has a superficial understanding of the levels outside of their own, with the middle-child project management the most universally aware. For example, as a developer I once received the executive level defined corporate goals of “Client First: Foster Client Trust and Increase Client Value.” I understood the goal, but as a developer I honestly had no clue on how to take action other than to keep it in the back of my mind – the corporate mantra didn’t directly apply to my developer level goals and objectives. On the flip side, I once witnessed a newly promoted developer to project manager attempt to discuss with an executive that we needed to re-organize the directory structure in SVN (a source code control system). The executive, so far removed from the hands-on development world simply stared blankly at the new project manager – the SVN re-organization didn’t directly apply to the executive level goals and objectives. Remember that “talking in terms of the other person’s interests pays off for [everyone].” As Dale Carnegie pointed out, Teddy Roosevelt “knew, as all leaders know, that the royal road to a person’s heart is to talk about what he or she treasures most” (Carnegie, 1981). Having defined the three types of organizational levels, let’s move onto narrowing down the numerous Agile processes.
Choosing The Right Agile (Let The Right Agile In) Agile, as stated in the seminal Manifesto for Agile Software Development, is a set of principles – a philosophy rather than a step-by-step process. Heavyweight processes (Waterfall or SDLC) dominated the development world and were considered, well, heavy. Managers soon began playing with the notion of doing more with less. Over time, lightweight processes emerged that focused on collaboration, communication and adaptability. Finally, in 2001, the Agile Manifesto crystallized the common philosophical concepts of now familiar Agile process – Scrum (1995), XP (1996) and DSDM (1995) to name a few – into a unified set of guidelines and statements. However, this begs-the-question, “Which of the many Agile methods do we choose?” While over time we may see several Agile processes fall-out of favor, for now we have many types to choose from each with unique characteristics and benefits. Three Agile processes standout as ideally differentiating: Lean, Scrum and Extreme Programming (XP). Let’s take a quick look at their key features (Lane, 2006):
As you can see, these three types of Agile processes each have unique strengths that compliment one another. However, like any good superhero movie, the origin back-story usually gives us great insight into our hero’s motivation (if the robber hadn’t killed Peter Parker’s Uncle Ben, our superhero Spiderman would never have been born). So, let’s take a quick look at the three Agile processes. Lean Lean development promotes seven key principles: Lean thinking has been applied across a myriad of industries and has been found to regularly produce significant customer value add. Let’s look at an interesting example with the recent decision by Spirit Airlines to begin charging $45 for carry-on overhead luggage (no charge for luggage that fits beneath the seat). At first glance you might think this decision yet another airline tactic to penny-pinch the customer, but consider for a moment the three main concerns of a frequent flyer: speed, comfort and cost. When the overhead bins are stuffed, the three main customer concerns are negatively affected. First, the boarding and deplaning takes longer. Reduced speed and greater cost emerges as an issue the longer the plane sits idle. Second, customers need to check carry-on bags that don’t fit in the overhead bins. Have you ever boarded a plane and found all the overhead bins were already full (try as you might to stuff your bag into that too small of a space)? Finally, the plane weighs more. It makes sense: more weight, more fuel, more cost. Spirit’s lean decision to charge for carry-on baggage arguably creates greater customer value and choice. As Spirit's Chief Operating Officer Ken McKenzie put it, "Bring less, pay less. It's simple" (Huffman, 2010). Scrum Scrum focuses on team organization (ScrumMaster, Product Owner and Development Team) and practices (Daily Scrums, Sprints and Retrospectives). Scrum has an interesting delineation between those committed to building and delivering software frequently (the “Pigs” – Product Owner & Development Team) and those interested in the project but not committed to delivery (the “Chickens” – Stakeholder & Managers). The terms “Pigs” and “Chickens” comes from a classic joke on commitment, wonderfully illustrated below by Mike Vizdos and Tony Clark: Extreme Programming (XP) XP contains a lot of similar Scrum practices with the engineering elements that Scrum is traditionally missing. Aligning Agile Across an Organization (If the Shoe Fits…)
Putting on our System Thinking caps for a moment (and never taking them off), we must remember to address the whole system and not individual parts. Apply Agile across an organization and not at any one single organizational level else we risk organization goal misalignment and an increased chance of failure, or at least less successful than we could have been. For Your Consideration As we all know, companies’ culture and organizational breakdown can differ greatly. At one financial company where I worked, the high-level Managing Directors often boasted that they could still code with the best of them. The corporate focus leaned more towards a tactical mind-set, i.e. XP. In other words, a company’s unique culture and organization will determine the appropriate Agile fit; whether applying Lean, Scrum and XP to the afore mentioned three organizational levels or a mixture of Agile process to the unique corporate tiers. So remember two things: first, Agile promotes fluid and adaptable processes, thus you can practice the “Agile Way” of keeping what works and leaving out what doesn’t. Second, always “System Think” and apply across the organization and not to a single part. Final Thoughts I believe that we are on the verge of inventing a new way of looking at Agile: a maturation and simplification of Agile from numerous processes to a few or even one. Perhaps even a new process might emerge that addresses the needs across an organization. However, creating a new process will take significant fortitude and community accord. As Albert Einstein noted, “Three Rules of Work: out of clutter find simplicity; from discord find harmony; in the middle of difficulty lies opportunity.” Bibliography Coetzee, L. (2008, Oct 6). What is Scrum? Retrieved from Swat Blog: http://www.mihswat.com/2008/10/06/what-is-scrum/ Huffman, M. (2010, Apr 7). Spirit Airline Charges For Carry On Bags. Retrieved from Consumer Affairs: http://www.consumeraffairs.com/news04/2010/04/spirit_bags.html Lane, R. C. (2006, Oct 17). A Practical Guide to Seven Agile Methodologies. Retrieved from devX: http://www.devx.com/architect/Article/32836 McNamara, C. (2005 Feb). Thinking About Organizations as Systems. From Free Management Library: http://managementhelp.org/org_thry/org_sytm.htm Poppendieck, M. (2002). Principles of Lean Thinking. Retrieved from Lean Software Development: www.poppendieck.com/papers/LeanThinking.pdf Smith, K. M. (2007 28-Sep). Understanding Your Organization as a System. From Ezine Articles: http://ezinearticles.com/?Understanding-Your-Organization-as-a-System&id=755700 Sutherland, J. (2007, Oct 14). The Scrum Papers: Nuts, Bolts, and Origins of an Agile Process. The Free Dictionary. (n.d.). Scrum. Retrieved from The Free Dictionary: http://www.thefreedictionary.com/scrum About the Author Geoffrey Bourne has 12 years of experience in the financial IT field, successfully managing several globally distributed Agile teams in Mumbai, Bangalore, Hong Kong, Japan, and the U.S. He has worked at J.P. Morgan, Goldman Sachs and several start-ups. He has a B.S. in Computer Science from Washington & Lee University and is a certified Sun Java Developer and PMP. Geoffrey is currently a Vice President at a major financial institution in the New York Private Bank and Personal Wealth Management divisions and can be contacted at gbourne@gmail.com
Trackback(0)Comments (2)
|
| Last Updated on Tuesday, 11 May 2010 15:57 |
Agile Marketplace - Announcements and Special Offers
The Business Case for ALM Transformation
Are legacy systems holding your company back? Breakthrough these technical constraints with an open and scalable environment that meets your unique business need to transform. There is no reason to be locked into an obsolete platform. The output of a number of recent transitions from legacy systems, this is practical white paper shares lessons learned and illustrates how guidance and enablement can pave the way for change.
Download this Whitepaper


“If you don’t know where you’re going, you’ll end up somewhere else."






I wrote an article (inspired by this article) on what I called the "selective integration" of agile methodologies. Check it out at:
http://www.agilejournal.com/co...?task=view