Scaling Agile to Lean

Many software teams adopt agile without any significant challenges or problems presenting themselves. However, scaling agile to large development groups, and even further beyond the team to the organizational level pose very significant difficulties. It is difficult to know how to tackle large development groups, to enable agility at the portfolio level, to enable large scale distributed software development, or to make software development an efficient part of the larger Product and System Development process? In this track we aim to document some of these key challenges and consequences as well as present studies and findings from industry and academia on how to tackle these key challenges.

Sessions

Kati Vilkki – When Agile is Not Enough

Agile provides a good framework ´for improving SW development, but it is not enough when SW is only part of the product, in very large-scale development (tens of teams, systems of systems development) or when there is need to improve the way the whole organization works. In these cases agile does not bring the desired business benefits – something else is needed. We have started to combine lean thinking to our agile adaptation.

Lean and agile complement each other in many areas, but there are also challenges in combining these two. Agile is very much team oriented and bottom-up approach works well in agile adaptation. Lean requires more top-down approach and involvement of larger organizations – or course it can be used also on team level.

Another interesting difference is the role managers, which agile and lean see very differently. In this case it could be said that lean addresses the role of management which agile mostly omits.

Agile and lean are not enough either, many of the traditional financial, planning and HR practices should also be changed to enable empowerment and lean way of working. For these issues we are now experimenting with bringing in some thoughts from beyond budgeting.

So agile is not enough, we need a change in the whole management philosophy.

Kati Vilkki is currently heading Lean and Agile Transformation in Nokia Siemens Networks. She has M.Sc. degree in Computer Science from Helsinki University. She joined Nokia in 1994 and has since held various management and development positions mostly within product development, R&D and supporting functions. She has headed quality and process management teams, managed SW process and other improvement programs, driven operational mode development and been the change agent in many different projects. Starting in 2005 the most important improvement action has been introducing lean and agile thinking in large scale product development and in an organization, which has very traditional, water-fallish development back-ground. There has been remarkably change and now agile development is the main street development mode in NSN. Kati Vilkki has also wide experience in organizational and leadership development and in coaching teams.

Ken Power – Refactoring the Organisation

As we embrace agile and lean development we need to refactor our organization structures so they are optimized to support, rather than control, the people who do the work. We need to question traditional management philosophies about how to organize and manage work. We need to acknowledge that everyone involved in the development of our products, from concept to cash, has some stake in the outcome of what we do. We need to adopt effective strategies that help us identify and engage with those people that influence, or are influenced by, our organizations and processes.

In this talk we will explore an example of refactoring an organization design that supports agile and lean development. Along the way we will discuss value streams, test-driven development, sprints, pair programming, Kanban, and daily stand-ups as tools that help us refactor the organization, as well as what we can learn from enterprise strategy, improvisational Jazz, stakeholder management, and the collaborative arts.

Taking a broad view of who are our organization’s stakeholders, and then thinking about the organization from a stakeholder perspective, is ultimately what drives this refactoring.

Ken Power is a software engineer, architect, and experienced agile practitioner and coach. He has wide experience introducing and applying agile development at all levels in organizations, and across a variety of industries and domains. His technical and research interests include architecture, agile processes, lean development, patterns, systems design, test driven development, and organization design to support productive and effective teams. Ken works with Cisco’s Voice Technology Group on development of Unified Communications products, including voice, video and messaging applications. In addition to product development, he is part of the team leading agile process adoption across the organization. He is a Certified Scrum Master and a member of ACM and the IEEE Computer Society.

David Joyce – A Journey to Systemic Improvement

Various Agile methods focus on delivering “value” or “valuable working software” or “delivering quality code” but what if we are just doing the wrong thing righter? A more recent development has been the popularity of “Lean” thinking for IT. However there is far more to a successful intervention than mapping value streams and finding then removing “waste”.

I also see a series of anti patterns forming:

Traditional IT leaves “knowledge of the work” to a mixture of Business Analysts, Product Owners, proxy customers and managers views.

Those within IT often point to meeting the needs of the “business” as if they are the ones who produce revenue for the organisation. The customer becomes forgotten.

The approach of IT implementation is “push” – here is the new IT system, now how do we get people to use it?

I believe decisions about the use of IT should be taken from a position of knowing the “what and why” of current performance as a system. In the Systems Thinking approach IT is “pulled”, the people doing the work understand the “what and why” and “pull” IT into parts of the work, knowing what to expect.

The first part of this talk is an overview of Systems Thinking theory, and more specifically how it can be applied to IT and what benefits this will bring. Part two of this talk revolves around a series of experience reports using the Systems Thinking Method in both IT and non-IT areas within BBC Worldwide.

David is an agile coach with 12 years technical team management and coaching experience, and 20 years software development experience. In recent years, using Scrum and XP, David has coached onshore and offshore teams and successfully launched an internet video startup from inception to launch. More recently David has coached teams on Lean, Kanban and Systems Thinking at BBC Worldwide in the UK. David currently works for Thoughtworks as a principal consultant and is a Systems Thinker, Lean practitioner, Kanban coach and certified Scrum Master. David recently received the Lean SSC Brickell Key award for outstanding achievement and leadership.

Jurgen Appelo – Complexity vs Lean, the Big Showdown

Agile software development is (in part) based on the idea that software teams are complex adaptive systems (CAS), and many experts (like Jeff Sutherland, Jim Highsmith, Sanjiv Augustine, Joseph Pelrine) have borrowed terms from complexity theory (“self-organization”, “emergence”) to explain how software teams work. During a panel session at the Scan-Agile 2009 conference in Helsinki I asked panel members Mary Poppendieck (lean development) and Dave Snowden (complexity theory) what the difference is between complexity thinking and lean thinking. Is there a difference? How do Complexity and Lean “see” each other? Unfortunately, due to some confusion, the question never got answered and the conference moved on. Afterwards Mary Poppendieck told me honestly that she didn’t really know how to answer that question. And maybe the other panel members had the same problem. Now I suggest that I try to answer that question myself. My upcoming book about complexity science and management of software teams has made me think a lot about topics like these. I think I have some interesting ideas that would lead to good discussions. Some examples:

Lean software development promotes removing waste as one of its principles. However, complexity science seems to show that waste can have various functions. In complex systems things that look like waste can actually be a source for stability and innovation;

Lean software development preaches optimize the whole as a principle, and then translates this to optimization of the value chain. However, I believe that complexity science shows us a value chain is an example of linear thinking, which usually leads to sub-optimization of the whole organization because it is a non-linear complex system;

My suggestion is therefore to organize a talk and discussion where I present the concepts of complexity theory, and how this relates to Lean thinking. I will then try and “challenge” a few basic assumptions in Lean software development as a Devil’s Advocate. The audience will discuss the issues with me, and either they decide that my “challenges” don’t hold, or they agree with me and accept some nuance to the basic Lean principles.

Jurgen is a writer, speaker, developer, entrepreneur, manager, blogger, reader, dreamer, leader, freethinker, and… Dutch guy. After studying Software Engineering at the Delft University of Technology, and earning his Master’s degree in 1994, Jurgen Appelo has busied himself starting up and leading a variety of Dutch businesses, always in the position of team leader, manager or executive. Jurgen’s current occupation is Business Unit Manager at Sociotoco, and Chief Information Officer at ISM eCompany. With 200 employees it is one of the leading e-commerce solution providers in The Netherlands. As a manager, Jurgen has experience in leading a horde of 100 software developers, development managers, project managers, business consultants, quality managers, service managers and kangaroos, some of which he hired accidentally. Jurgen is primarily interested in software engineering, quality improvement and complexity theory, from a manager’s perspective. As a writer he has published a number of papers and articles in several magazines, including Dr. Dobb’s, Software Quality Professional, Methods & Tools, The Software Practitioner, StickyMinds, Software Development Network, Computable and Automatisering Gids. He is also a speaker, being regularly invited to talk at seminars and conferences about agile software development, project management, process improvement, and development management. However, sometimes he puts all writing, speaking and managing aside to do some intensive programming himself, or to spend time on his ever-growing collection of science fiction and fantasy literature, which he stacks in a self-designed book case, which is 4 meters high.

David Anderson (host) – Panel: Why Agile? Why Lean

The Agile movement started a transition in the software industry. Some say that Agile brings more professionalism to the industry by focusing on the core activities and calling for a redesign of our software development processes in a fundamentally different way. However, it is clear that as Agile gets adopted, not everything is a bed of roses. Many companies are faced with issues that the available Agile methods do not sufficiently address. Lean is another paradigm that is gathering momentum and, according to many, can be the “next step” for the agile methods to step out of the software development environment and step into the larger business context of our industry. Some of the questions we intend to frame in this panel are: Why have companies embraced Agile? Why have companies embraced Lean? What do each of these paradigms agree on and what are the divergences? Why are those divergences important? What does the Lean paradigm change for a software company that has embraced Agile in the past?

Dennis Stevens – Executing Strategy as a Competitive Advantage: Using Lean and Agile to Lead an Organizational Transformation

Companies need a sustainable model for leading continuous change – yet most leadership teams are too busy running the business to effectively lead change. Many transformation efforts fail due to false starts, organizational resistance, and a lack of effective governance. We will explore a strategic change project management model that has repeatedly resulted in successful ongoing change initiatives. The model draws on Agile and Lean principles and techniques to lead change initiatives in a way that is simple, provides focus and transparency, and builds trust. This project used A3’s to help decide what to do and what not to do and Kanban to manage the work so they could stay focused on it.

Dennis Stevens has been helping organizations improve economic outcomes through improved technology alignment and software development since the mid-1980’s. Starting in 2000 he has been focused on developing business analysis and project management methods that leverage the incremental and iterative cadence of Lean and Agile delivery. His approach to capability analysis was the basis for Microsoft’s Business Architecture methodology, was published in Harvard Business Review in June 2008, and has contributed to improved performance in dozens of projects delivering over $200 million in value. Dennis has been certified as a Project Management Professional, in Lean Value Stream mapping, as an OPM3 Certified Consultant and a Certified Scrum Master. Dennis originally attended Florida State University on a violin scholarship and eventually earned his degree in Organizational Psychology and Development. He served as a US Marine during Desert Storm and earned a Naval Commendation Medal during Operation Fiery Vigil in the Philippines.

David F. Rico – Lean and Agile Project Management: For Large Programs and Projects

This talk discusses how agile methods can be used for managing high-risk, time-sensitive R&D-oriented new product development (NPD) projects with demanding customers and fast-changing market conditions. It establishes the context, provides a definition, and describes the value-system for lean and agile project management. It provides a brief survey of popular lean and agile project management approaches and illustrates the mechanisms for scaling the lean and agile project management model up to large-scale, distributed projects. It also illustrates a few key agile project management case studies as well as basic, burnup/burndown, cost estimating, business value, earned value management, and advanced metrics for agile methods including real options. Finally, this talk addresses the critical differences between agile and traditional non-agile project management paradigms, as well as the debate surrounding the pros and cons of agile certification.

Maarit Laanti – Agile Transformation Study: One Year After

Many organizations have started to deploy agile methods but there exists only few extensive surveys on the impacts of these methods. In the previous study we researched if the agile methods are here to stay or if they are just a passing fad. The survey result showed that the methods have wide support, and rather than turning pessimistic after putting it into practice people tend to grow more positive attitudes towards agility. In this study, we wanted to see if there is any change in the opinions after yet one year of appliance, and if any real trends could be found from the data. We also wanted to study more on the perceived benefits of agile methods. The data were collected using a questionnaire. The population of the study contains more than 500 respondents from three different continents (Europe, North America, and Asia) and seven different countries. The results reveal that most respondents are satisfied to agile way of working and would like to stay in agile mode. They also think using agile methods is important for the future. In two consecutive studies we can see that he opinions the people who have actual experience on agile methods have stayed the same, and that the opinions of those who have not yet been tried out agile themselves are grown more positive attitude towards those.

Colm O’hEocha and Kieran Conboy – The Role of the User Story Agile Practice in Innovation

The concept of an innovation space where different knowledge and perspectives can interact leading to innovation is central to lean thinking. The SECI framework of organizational knowledge creation identifies five enabling conditions which impinge on this space, namely intent, autonomy, fluctuation, redundancy and variety. User Stories, introduced in XP and now commonly used in Scrum, are a key practice in requirements capture. In common with lean thinking, they are user value centric, encourage rich dialogue between project stakeholders and avoiding premature specification of solutions. This paper examines user stories through the dual lenses of an innovation space and the five SECI enablers. The authors conclude that expressing user needs as user stories can support the development of innovative solutions, but that care must be taken in the design of the user stories and their application. This paper concludes with a set of recommendations to support innovation through user stories.

Choosing the appropriate software development methodology is something which continues to occupy the minds of many IT professionals. The introduction to “Agile” development methodologies such as XP and Scrum held the promise of improved software quality and reduced delivery times. Combined with a Lean philosophy, there would seem to be potential for much benefit. While much evidence does exist to support many of the Lean/Agile claims, we look here at the contention that such methodologies are not fully suited to the rigorous environment of safety critical embedded software development, and in particular medical device manufacturing due to its high regulation. By means of a systematic literature review we find that evidence is sparse for Lean/Agile adoption in these domains. However, where it has been trialled, “out-of-the-box” Agile practices do not seem to fully suit these environments but rather tailored Agile versions combined with more plan-based practices seem to be making inroads.

Distributed software development teams are common-place today. One good reason for distribution is the need to combine special skills or competencies from different locations. However, integrating skills flexibly is both a technical and a communication challenge. Lean and agile projects depend on direct communication. In this contribution, we investigate how agile teams can be distributed by adding a “remote partner” – and still maintain agile advantages. We analyze communication using the goal-question-metric paradigm (GQM) and apply it to a programming project, part of which was distributed. We discuss our insights on the minimal set of additions (technical and organizational) that are required to turn distributed while staying agile.

David Lempia – Lean Enablers for Systems Engineering

Lean Systems Engineering is flawless mission assurance or product success delivered without waste, in the fastest possible time. This presentation describes the do’s and don’ts of systems engineering as a checklist. Applying these checklist items to projects helps companies move toward the goal of lean systems engineering. Along with the checklist, real-world examples are used to describe both why the lean enablers are needed and how different companies have applied the lean enablers. The primary source for this presentation is the article “Lean Enablers for Systems Engineering”, written by Bohdan W. Oppenheim, Earll M. Murman, and Deborah A. Secor. This work was developed in the Lean Systems Engineering Working Group and won the INCOSE 2009 Best Product Award and the Shingo 2010 Research & Professional Publication Award

David Lempia is a Principal Systems Engineer in the Engineering Infrastructure Development & Lean organization of Rockwell Collins and has over 20 years of experience in systems development. He received his M.S. in electrical engineering from the University of North Dakota in 1987 and his M.S. in Business Administration from the University of Iowa in 2007. David’s interests include requirements management and model-based development. He is currently developing best practices and training materials for using SysML (Systems Modeling Language). Prior to this he has 5 years experience doing research on formal methods, model based development and requirements engineering management, 10 years experience developing flight control computers and aircraft simulators, and 3 years experience developing display systems.

Pekka Abrahamsson and Nilay Oza (hosts) – Grand Dual

The Grand Dual is a battle of the minds, where two selected participants engage in a dual, standing in the middle of the room, during which the audience can participate after a few minutes of argument. The audience decides who wins the Grand Dual by standing behind them, in a silent show of support for the one whose arguments are better.

Many organizations have had initial success with Agile methods only to find that their pilots’ success could not be maintained. This has led many to believe that scaling agile is hard. However, it may be that pilot projects solve one problem and do not address the real problem the organization is facing. This talk discusses the difference between the bottom-up approach of scaling agility and using lean principles to guide agile transitions – what we at Net Objectives call Lean-Agile Transitions. We will discuss the need for transforming the leadership, management, team processes and technical processes in a coordinated manner so that the entire value stream of software development can be improved.

Where to start a Lean-Agile transition will be discussed by considering the many places in an organization’s value stream that may need improvement. Learn why starting agile at a team level without considering the entire value stream may actually impair your ability to scale agile to the enterprise. The need for creating a big picture view of any local implementation (e.g., pilot projects) will also be discussed. A few case studies, including dynamic feature teams will be presented to show how multiple teams can be synchronized to lower the need for coordination.

Alan Shalloway is the founder and CEO of Net Objectives. With almost 40 years of experience, Alan is an industry thought leader. He helps companies transition to Lean and Agile methods enterprise-wide as well teaches courses in Lean, Kanban, Scrum, Design Patterns, and Object-Orientation. Alan has developed training and coaching methods for Lean-Agile that have helped his clients achieve long-term, sustainable productivity gains. He is a popular speaker at prestigious conferences worldwide. He is the primary author of Design Patterns Explained: A New Perspective on Object-Oriented Design, Lean-Agile Pocket Guide for Scrum Teams, Lean-Agile Software Development: Achieving Enterprise Agility and is currently writing Essential Skills for the Agile Developer. He has a Masters in Computer Science from M.I.T. as well as a Masters in Mathematics from Emory University.