Alan's closing keynote is about what is next in software development. Alan approaches this field as a scientist and starts off talking about the need to understand what we are doing and why we are doing it. He goes on to talk about software and the critical role is plays in our society... nearly nothing would work in the absence of software. The more important software becomes in our lives.. the more quality becomes important. Some of these software systems are life and death.
Need training, coaching, or help leading an agile transformation?
email: mike@cottmeyer.com or call: 404.312.1471
Friday, May 8, 2009
#LK2009 Alan Shalloway (Closing Keynote)
Alan's closing keynote is about what is next in software development. Alan approaches this field as a scientist and starts off talking about the need to understand what we are doing and why we are doing it. He goes on to talk about software and the critical role is plays in our society... nearly nothing would work in the absence of software. The more important software becomes in our lives.. the more quality becomes important. Some of these software systems are life and death.
Thursday, May 7, 2009
#LK2009 Willeke, Shinkle, and Laribee
This is going to be the last set of talks for the day. The Kanban talks, somewhat unlike the Lean talks yesterday, has been mostly experience report type presentations. It has been really cool.. all the speakers have done a great job... but we are getting to a point where there is not a tremendous amount of differentiation between the stories. I am going to try to keep these next few summaries centered around the "a-ha" moments where the speakers add something new to the conversation.
Eric Willeke: The Inkubook Experience: A Tale of 5 Processes
Eric works for a small company called Inkubook that builds self-publishing website. The presentation was really unique becuase it was totally visual... totally picture based... even the agenda which was a photo of a Kanban board... very clever. This talk was really more like a story... a story about Eric's journey to discover a process that worked for his time.
Just to give you a little background on their situation... if we have learned nothing this week... context is everything. His team had a constantly changing backlog... an agressive timeline to deliver (2 months or so)... and team of specialists. They tried scrum but it just wasn't working for their team. It seemed that the specialization around the analysts was causing problems getting the sprint started on time.
After several iterations of trying new things... pulling the BA out... putting the BA back in... pulling the architect out... putting the architect back in... they started doing some Kanban like process control. Eric told a great story about being sure not to call what they were doing Kanban... if the label stuck... that early transition process would be called Kanban.
Eric's team focused in process maturity around Kanban... introduced queues across the team... they had implicit work limits (the team just seemed to get it)... and established flow across their development process. They got hit with an unexpected layoff and the Kanban process allowed them to recover in less than a day. Their SLA stayed the same but the throughput of the team went down accordingly. It was the specialized analysts that took the brunt of the downsizing. After the team learned how to interact with marketing directly... their throughput actually recovered.
At this stage of the conference... there were really no new ideas presented. Eric did make an interesting comment that his team had gotten so good at single piece flow... they no longer felt the need to use the Kanban board... they just know where things are all the time. He drew no conclusions about their findings but assured the community that he would let us know how things are working out.
It was really cool hearing the transition story, how the team learned from their mistakes, and how they inspected and adapted their way to a pretty cool Kanban implementation.
The other thing that was really cool is that you can tell the speakers are learning from each other. Folks are referencing other speakers in their talks and changing their content on the fly to reflect what they learned. So far... this has been one of the most interactive learning experiences I have ever been a part of... and that is saying something for a conference that was not designed as an open space. So far... no one has wasted my time... and I have a pretty low tolerance for speakers that don't deliver.
Chris Shinkle: Embracing Kanban, A case study examining how Kanban has been integrated into Software Engineering Professional (SEP)
This talk is shaping up to be one of my favorites so far. Chris starts his talk by explaining his particular context... 4-6 month projects... 4-6 people per team. They have many transitional projects where they frequently stop and start... go on hold and come off hold. The company was agile friendly and had tried implementing FDD... but the transition did not have lasting impact. Once things got widespread... agile was met with resistance. Can you guess what they tried next ;-)
Chris takes a totally different perspective than the other speakers on Kanban today. He introduces the transition to Kanban by introduces the Dreyfus model of learning. If any of you guys are familiar with Aistair Cockburn's Shu-Ha-Ri methaphor... this is very similar. The Dreyfus model has five levels: novice, advanced beginner, competend, proficient, and expert. The talk centers around the Kanban related behaviors related to their progression through the Dreyfus model... very enlightening.
Here is a quick summary of what Chris observed as the team moved through the various stages of the Dreyfus model:
Novice - Using the Kanban board as a task tracking system with no regard for WIP. One advantage was that it illustrated the development process and exposed it to the team. They could see what they were doing and had a better understanding of what everyone else was doing.
Advanced Beginner - At this point, the WIP limits being followed. Teams started to understanding the impact of blocked work items and the cost of re-work.
Competent - The whole team participated and had a sense of ownership. They ought out alternate practices and discovered BDD, TDD, Pair programming, Modeling, and pair code reviews. They started seeing the effects of the changes they made and discovered lean principles for themselves.
Chris made a quick acknowledgment here that without emotional involvement you will never move past the competent level of development...
Proficient - Throughput and reducing cycle time became the primary focus. The team began to focus on the other roles... not just their own... they started looking at optimizing the whole. They became focused on reducing swim lanes and work in progress. Kaisen moments became more commonplace
By using Kanban the team started learning lean... in this case process led to an increased understanding of the principles.
Expert - Team never got to that... could take 5 to 15 years.
This was a great talk and an interesting gear shift from the other experience reports we have heard earlier in the afternoon. Looking forward to hearing David Laribee up next...
David Laribee: A Leaner Form of Agility
David sets up this talk by discussing is role at XClaim... the company he joined prior to joining VersionOne. David was the product owner and coach and involved with all elements of development and process design.
The first half of David's talk focuses on process and his experience developing the Kanban system at XClaim. David is a BIG believer that values drive your choice of practices and that practices drive your choice of tools. If you don't know what your team values... you need to go back and figure it out. David is also a big believer in collaborative process design... people support a world they help create. He goes on to explain how his team at XClaim went about designing their Kanban board.
David explained how practices increase performance... but that over time... the team will plateau. The only way to get better is to eliminate waste. He tells this great story about a team of phychologists that decide to pay people to dig holes. At the end of the day... the holes are covered over. The diggers are told they will be paid double if they come back tomorrow to dig more holes. Over time... people stop coming becuase they value meaningful work.
By elimating waste... you not only make things faster... but you engage your team in meaningful work. David talked about how Kanban is a window into how we work and that processes should emerge... start with the simplest thing possible and only add steps and practices as they are deemed necessary by the team. Reflect what you are doing now... first... and optimize for essence over ceremony.
The second half of David's talk is about the engineering practices that support Lean practices.
David highlights why Scrum is failing... it is due to the lack of solid engineering practices as the foundation. He goes on to describe how stories and tasks need to be independent, but that pairs of pairs can be deployed, that we can use set based concurrent engineering to solve some of these problems. He talks a bit about how teams can use BDD... composite applications... feature inboxes... a highlights some companies that are doing this stuff in their lean enterprises.
At this point, David is splashing code up on the screen so I have to admit... I tuned out a little bit. This was the most technical talk of the conference and worth checking oout the InfoQ video when it is posted. It was cool hearing David talk since we both work for VersionOne... he did a great job... so next time... check him out.
Subscribe to Leading Agile
Subscribe to Leading Agile
#LK2009 Vale, Cook, and Landes
The day has certainly gotten off to a strong start. We are seeing lots of great practical advice on how various organizations have implemented Kanban systems in their organizations. I enjoyed the first few session of the morning and am looking forward to the next set of talks. This set bridges the morning and the afternoon. After this set... we'll have three more speakers and close out the day.
Alisson Vale: Practical Experiences and Tools Applied to a Kanban Sustaining Engineering System
Alison is taking the conversation up a notch. His talk is explaining a very sophisticated approach to managing his Kanban process. There is no way that I am going to be able to explain to you guys the depth of complexity here... but I think I can share with you a few key takeaways that will augment some of the earlier session overviews.
I didn't talk at all about David Anderson's class of service discussion in his earlier talk. It was a really interesting point... but was discussed late in the talk and not fully developed. The main idea is that a Kanban card can have a class of service... an indicator that speaks to the risk associated with that feature. Does the feature need to be delivered by a certain date... is it an emergency request... is it a nice to have? All that kind of stuff is a class of service.
The reason I bring up David's class of service idea is that Alisson had a slightly different take on class of service. Alisson sets up the conversation by establishing the idea that long term relationships require long term agreements and defines four types of agreements in his organization: problem solving agreements, support agreements, improvements for stability, and new value agreements. Alisson defines his class of service around the agreements he makes with his customers.
Interesting concept and I think you can see how these might play out in scheduling... and defining work in progress queues.
By establishing work in process limits around each class of service... we create predictability... we create flow... around each class and can mitigate risk by deciding how much to invest in each particular class. One interesting outcome of taking the Kanban approach is that you create a policy driven... metrics based... organization. Setting limits on work and giving the teams guidance about what to work on... when... and how... you actually empower the team to work without management intervention.
Another theme of Alisson's talk... and this is starting to be an emerging theme across the talks... is the distinction between allocation vs. prioritization. This idea can be applied to classes of service AND for different types of business activities of features. If I am hearing correctly... what this tells me is that the team is allocated based on class of service and feature type... and then prioritization happens within those allocations.
Prioritization is not absolute across the entire backlog but only relevant within the context of a particular feature or service class. This is an important distinction because it allows the business to mitigate risk and apply resources to risk mitigating activities that might not otherwise make it to the top of a priority driven product backlog. Like most of what I am learning about Kanban this week... this approach gives us explicit mechanisms for managing our sofware organizations and get's us past the typical handwaving about letting the team decide.
This is all about the appropriate level of constraints... and the appropriate level of guidance... constraints and guidance that actually empowers the team to operate in accordance with the overall business objectives. Alison's talk was deep and detailed... it was impressive. Personally... I am still struggling to see how to apply this level of detailed management to the kinds of organizations that Dean Leffingwell is talking about.
Linda Cook: Crack that WIP - Introducing Kanban into an Organization
Okay... this was a really interesting talk. For one, the talk was centered around two infrastructure projects.... most everything so far has either been software or non-IT. To add another wrinkle, Linda's last project with this team was done using Scrum but Scrum created too much process overhead for the team. She decided to introduce Kanban as a way to eliminate waste and to right size the process.
As I am listening to the setup of the project, she describes the team as a set of experts that didn't want to estimate, didn't want to do any documentation, didn't want to use any user stories, didn't want to do retrospectives, did not want to do sprint planning, and had no need to review their outcomes. They did not have... or need... a Product Owner and did not have a need for a ScrumMaster. I was left after the setup wondering what separated this kind of process from just an ad-hoc get-it-done attitude.
The team did track and measure task completion on the Kanban board and they did do a daily stand-up meeting. As Linda explained the process further, it seems that her team was really going for aggressive elimination of waste, measurements around the flow of tasks, and making sure the team was getting to done by minimizing the amount of work in progress. With no process controls, no estimating, no understanding of the backlog, and no baseline against which to measure flow... how would you ever know when you are going to be done.
That is probably more my problem that Linda's problem. Linda's method sounds great for a support team with a continuous flow of requests... I can't get my head around how such a lightweight process would apply if there were any sense of constraints or controls... or if the team was less expert in getting their work done. I am hoping that either Linda or someone else from the conference will weigh in and help me understand this a little better.
Eric Landes: ChaMP Continuously Improving and Enterprise Development Group
Eric Landes has an environment that seems to lend itself pretty well to the kind of process I described in my summary of Linda Cook's talk. Eric's team was made of of 10 or so developers that were tasked primarily with handling a steady flow of services requests into the IT organization. The request... something he called a change request... is really what they were tracking as part of their Kanban process.
After implementing Kanban processes he was able to reduce the cycle time of a request from 41 days to around 9 days. This was done through the basic implementation of Kanban first and then by continuous improvement of the process and the focus on eliminating waste. Listening to Eric talk... the key to the success... like on most of these other talks... centered around limiting the amount of work in queue... and then subsequently work in progress.
Eric introduced a concept called a parking lot to keep track of all the work the team could potentially do. This work was pulled into the backlog, and at the point the item was in the backlog, it became in progress... this was the first and primary buffer. At this time they are not limiting buffer size within the WIP states. This seems to be because the entire team was developers. Eric is building disciplined practices around analysis and QA and could move to tracking intermediate states at some point... this could result in further improvement.
We had a pretty interesting side conversation around whether it is important to have a real visual board or is it better to use an electronic system. One guy in the audience... a master black belt... was a strong advocate for manual visual controls... Corey Ladas spoke up and talked about the use of large LCD screens in the team room area. Like most things... the answer is likely to be to very situationally specific. David suggested yesterday we use both as a best practice.
Kanban seems powerful... but is not rocket science. The common themes being expressed are really interesting. It is encouraging that we seem to have a somewhat common understanding of how this should be done. That said... the amount of variation driven by team characteristics and the local environment is powerful as well. We need to remember that none of this stuff... lean... kanban.. agile.. .is a one size fits all strategy.
Getting ready for the last three sessions of the day...
Subscribe to Leading Agile
Subscribe to Leading Agile
#LK2009 Anderson, Scotland, and Hathaway
Here we are on day 2 of the Lean & Kanban conference... the focus shifts today from Lean to Kanban. David Anderson is giving the opening keynote... David Laribee from VersionOne is giving the closing talk. There are lots of great speakers in between and I cannot wait to hear what they have to say. Hopefully I'll be able to keep up with these summaries... David Laribee is promising a bunch of techno-talk... so we'll see how well I am able to keep up ;-)
David Anderson (Opening Keynote) Kanban-Applying Principles and Evolving Process Solutions
David starts his keynote by highlighting a problem with the Lean and Kanban community. We are trying to take a bunch of Japanese words and figure out how to apply manufacturing processes to software processes. David is encouraging us to stop trying to find the software equivalents to manufacturing and focus on the consistent application of principles. As a community we need to judge people by how well they apply principles of lean... not practices of lean.
David shared a few quick set of principles that are worth sharing here:
First he introduces five principles that managers can use to ensure their success as a manager: Focus on quality, reduce work in progress, balance demand against throughput, prioritize, and reduce variability to improve the process
Later in the talk David introduced an agile decision filter... ask yourself as you make decisions if you are applying these criteria: Are we making progress with imperfect information, are we encouraging a high trust culture, and are we treating work in progress as a liability rather than an asset?
His final list was a lean decision filter to help us make decision around applying lean practices: Value trumps flow, flow trumps waste elimination, eliminate waste to improve efficiency. As you are deciding what to do on a day to day basis, evaluate your decisions against these lean priorities.
David shared many of his thoughts on how to structure a Lean/Kanban organization. He has come to the conclusion that visual control are insufficient for managers and software based controls don't create the right culture of accountability. His recommendation was to use both... interestng. David's teams met daily to review the Kanban data and then broke into smaller daily standups if necessary. He held a monthly ops review, rather than the traditional agile retrospective, to ensure accountability and look for opportunities to improve.
David's talk emphasized that Lean and Agile adoption needs to be values based and underpinned by cultural change. Practices are going to be influenced by very situationally specific needs of each team. Management decisions and policies need to support the unique properties of the organizational culture and selected in such a way that we influence the organizational culture in the direction we need it to go.
There were lots of examples in this talk based on David's extensive experience with his current clients... his time at Sprint... and his time at Corbis. This is another one of those talks that you need to go find on InfoQ. There were lots of great, specific information about Kanban tools and techniques are extensive guidance on how David thinks some of these principles should be applied. Way... way... too much to include in this summary.
Karl Scotland: Kanban, Flow, and Cadence
Karl Scotland started his talk by explaining some of the language and basic principles behind Kanban. Kanban is a Japanese word that means visual cards and showed some pictures of Kanban systems from industry and software. He explains that Kanban is a way to improve productivity my limiting the amount of work in progress AND limiting the amount of work in queue.
It is pretty counter intuitive to think that if we put less work in the system we actually get more output from the system. This is based on Little's law that states cycle time is equal to the number of items in progress divided by the completion rate. To decrease cycle time... our ability to deliver... you either have to reduce the number of items in queue or increase the completion rate.
What I appreciated about Karl's talk was the specificity with which he described how his team implemented the process. He talked about the specifics of the features and drew some parallels to the INVEST model of story creation and how we can take larger features and epics and break them into something that could be put on a Kanban card and digested by the team.
Finally... I really liked how Karl was very explicit about buffers and limits and how a team would prioritize for finishing work rather than starting new work. One of the most common objections to lean/kanban is the fact that some people will be idle if there is a bottleneck in the system. Karl addressed this by talking about the kinds of things that folks can work on while they are waiting. They can basically work on anything that does not create work for a downstream process.
What does this mean? Well... they can do spikes, minor refactoring, or training. If they can find a feature that does not create downstream work, that could be done to. My personal opinion is that this one point is the most counter-intuitive part of the whole lean/kanban movement. Getting past this really gets to the ideas of continuous improvement, systems thinking, eliminating waste, and the entire lean value system.
Like I said... there was quite a bit of very specific guidance during the talk... but these were my key takeaways.
Rob Hathaway: Not Just Fun and Games Building the Mousebreaker Web Site
Today is proving to be much more tactical than what we heard yesterday. I guess that makes sense... Lean focuses more on principles and philosophies... Kanban is a specific practice within that overall framework.
Rob started his talk by stating that sustainable change is created by living the principles of lean and choosing practices that support the principles. He introduced several core principles that we have heard in most of the other talks: deliver value, prioritization, work in progress limits, and quality... and several practices that can be applied: minimum deliverables, releasing on demand, establishing visibility around MMFs, and the importance conducting reviews and retrospectives.
Rob encouraged us to focus on using smallest simplest process first...add more when and why the team or system needs it.
It has been interesting to see some of the different perspectives on what it takes to to effectively implement Kanban. Rob focused on the importance of collaborating with the business, the challenges with iterative delivery and the perceived need for certainty, and getting the executives involved early.
Like most of the speakers so far... Rob talked a lot about the specifics of his implementation and some of the challenges they faced along the way.
Subscribe to Leading Agile
Subscribe to Leading Agile
Wednesday, May 6, 2009
#LK2009 Tabaka, Hsu, and Shalloway
Okay... I am on the verge of becoming a whiner here. All these talks are so good, it is exhausting to try and get them summarized in real time. I am surely missing many key and interesting points. I have a request out to the other conference attendees to comment on these posts to either add or correct any of my perceptions.
BTW - This will be the last post of the day but we'll resume the discussion tomorrow. Friday is Open Space so we'll have to see what to do about that one... not sure it will lend itself to that kind of summarization.
Jean Tabaka: Learning to be Lean
Jean has decided to take the room in yet another direction. Her talk centers around learning... and how we learn to be Lean. She kicks the talk off by introducing the 5 orders of ignorance. We move from having no process for discovery all the way to a lack of ignorance... actually being informed. She encourages us to be intentional about how organizations learn and how they can learn to adopt lean.
Jean's talk emphasized the idea that we have to be conscious about being systems thinkers... we need to stay focused on the whole. She discussed very tactical things like feedback loops and queing theory... but all that technical stuff was not really her main focus. She made the point that practices are secondary to how the organization thinks about itself and how it delivers value. She talks about how the mental the organizations mental model shapes how it behaves.
We need to focus on organizational change... how the transition is going to impact people... metrics... and compensation... and less on whether we implement Scrum or XP or Lean. Very often we implement practices without putting in the underlying scaffolding and how this can be detrimental to the long term success of any change initiative. My favorite point Jean made was that we need to look at the entire system... how the nature of the system needs to inform our thinking... and then how our thinking can inform our decisions about what tools we select.
Like everyone else, Jean's talk was very rich and full of great ideas and great examples... this was my best distillation of the essence of what she had to say.
Alina Hsu: Lean Beyond Software Development
Alina is a functional manager that has managed developers, testers, and analysts. Right now she is focused on lean process improvement as a consultant for her current company. Her focus is on IT service management and project management from more of a business perspective.
If you haven't noticed, I am writing these summaries in real time as the speaker is doing their talk. The model so far is to jot down all the cool thoughts, put together some summarization stuff on the fly, and then as the speaker is wrapping up... see if I can slam down a complete summary of the presentation. So... that said... I might have a better read on Alina's talk if I were paying more attention, but right now I am not sure where she is going.
Right now we are about 70% through the talk and she appears to be explaining the intricacies and challenges with a previous COTS projects. She is touching on the idea of respecting people and the need to optimize the whole. She introduces the idea of eliminating waste and delivering value and the impact of poor decision making, frequent delays, rework, and even wrong work.
As Alina closes the talk, she is discussing the need to define the big picture up front, timebox everything, short feedback cycles, standard work patterns, decision making and communication patterns, the importance of having flexible architecture. Okay... got it... I just needed everything pulled together a little bit. It is a bit ironic that a talk on Lean thinking seems to have focused on the parts with little attention to the whole.
If anyone else out there got more from this talk than I did, please chime in... I am wearing out so maybe I missed something early that could have tied it all together a bit better.
Alan Shalloway: Redefining Lean... Creating a Model to Understand Product (and Software) Development
Okay... I have formally worn out summarizing these talks so Alan Shalloway is going to get the bums rush. What's cool about Alan is that he has a vision for where all this needs to go and his passion comes through in how he talks about this.
Alan believes that the Toyota Production System does not equal lean but that TPS is a special instance of Lean. As we move Lean forward, the state of the art will come from the intersection of three angles: Lean Science, Lean Management, and Lean Education.
Just like Jim Sutton, Alan want to save the middle class but is not confident he is able to change organizational culture at scale. He does believe that through the application of lean principles he can help organizations get better. Simple things like colocation... limiting work in progress... single team assignments... putting everyone under the same manager...can cause a 3x improvement - even in a waterfall team.
If this is so simple... why aren't we doing more? It seems that we only change when we have pressure to change. Sometimes we know the right practice but we don't always do it because we don't know why it works.
Culture is an idea arising from experience. Lean practices support the organizations need to change... the practices support the mindset we are trying to achieve. Great talk... but I am ready for a beer.
#LK2009 Rathore and Ladas
The diversity of perspectives at the Lean & Kanban conference is really refreshing. We spent the morning talking about Lean in the large... we have now spend most of the afternoon looking at Lean in the small. I hope these summaries are giving you a good glimpse of the kinds of things we are talking about here.
#LK2009 Observations from the Lean/Kanban Conference
First, the Mardarin Orient Hotel in Miami, FL was an excellent choice of venues. The facility is beautiful and right on the water. We have great views of the ocean and a picturesque urban residential area on the other side of the waterway. The staff here has been excellent and their responsiveness to various requests has been stellar.
I am not sure this is what David indented, but this year is a pretty small conference. If I had to guess we have maybe 40 or so attendees and almost half as many speakers. What that means for those attending is that the density of thought leaders is very high. Many of those not on the formal agenda often speak at other conferences. The room is very full o really smart people.
The average age of attendees seems to be higher than at many of the other conferences. I haven't run around polling the crowd but I would guess the average age is at least 40... maybe a little higher. That probably speaks to the target audience for this particular topic. The Lean Kanban stuff is really aimed more toward effective management of software creation rather than the practice of developing software.
My guess is that this attracts a more seasoned audience.
The final thing I'd like to comment on is the overall structure of the conference. There are a lot of speakers but only one track. Every speaker, aside from the keynotes, gets 45 minutes to talk. This format has resulted in a few rushed presentations but really adds value for the attendees. The conference is really fast paced and no one has to choose which talk to attend. Everyone gets to hear everything.
I cant' say enough about how things are going. Like I mentioned, this is going to be replicated next year in Atlanta. You might really want to consider adding this to your list of travel destinations next year.
#LK2009 Sutton and Mortensen
This post is just going to get us through the morning sessions. So... next up I'll summarize sessions from Jim Sutton and Sterling Mortensen. We'll pick up Amit Rathore in the next post...
James Sutton: Let Lean be Lean, Let Agile be Agile, and Ever the Twain Shall Meet
James Sutton is the other author of the book "Lean Software Strategies: Proven Strategies for Managers and Developers". He is a systems engineer at Lockheed Martin, and much like Middleton, is not really an agile guy. Jim is bringing a very structured, large company, systems engineering approach to the conference. His voice is very welcome. This talk was so dense with information... it is going to be very hard to summarize. I understand that InfoQ is recording the sessions and will post them to their site... this is one that you'll want to find a take a listen.
Sutton says that his goal is the save the middle class in the US and he is not kidding. Jim believes that if we lose industry... if it all goes overseas... we will no longer have jobs in the US. His fundamental paradigm is that business in the West is focused on a unit cost model and that this way of thinking is killing us. As you might expect that his focus is on value streams and optimizing flow through the system. Jim starts his talk with some stats on the efficacy of various software models... he makes the case that agile is good and has value but that lean can improve productivity by 400% and quality by over 1000%.
After setting up the problem, Jim gives us some background on Demming and lays out the philosphical underpinnings of lean thinking. He emphasizes that while there are lean practices... lean is more of a mental model... a way about thinking about systems and organizations and a fundamental disposition to put people first. Jim goes on to talk about Demming's system of profound knowledge, systems thinking, and suboptimization. One of the most interesting comments in the talk was the distinction that lean introduces science into the idea of systems optimization where agile focuses more on how optimization emerges from the team.
After lots more talk around these ideas, Jim encourages us to take the tools of agile... and the tools of lean... to do the right amount of planning... but balanced with the legitimate need to just get started. I appreciated Jim's perspective that agile and lean are complementary worldviews and that we need to evaluate our particular context to decide what elements of each that we need to implement. All in all a very valuable talk.
#LK2009 Shalloway, Leffingwell, and Middleton
I've been down in Miami all week at the Lean/Kanban Conference. The conference didn't actually start until today but I came down early to participate in a few meetings and ended up having a voice in the future of the Lean/Kanban movement... more on that in a moment. For now... I want to let you in on what's going on down here... why it is important... and maybe... just maybe... give you a few anchor points for our discussion on scaling agile in the enterprise.
Alan Shalloway: Opening Remarks
Alan Shalloway got the conference going with a few opening remarks around what's getting him excited about the lean movement. When agile was introduced it opened up new possibilities for how we write software. Lean represents a similar paradigm shift in the software community. Alan is a scientist at his core and appreciates the science behind lean and is pretty geeked on the idea of utilization theory... options theory... and flow theory. Lean will give software practitioners a scientific language to describe the process of creating software.
Alan announced the creation of a new organization to support the lean community. The organization is called the Lean Software and Systems Consortium... creating this organization was the reason for the pre-conference meetings.
The Lean Software and Systems Consortium will support the lean community by gathering a body of knowledge, establishing a set of competencies, creating a new certification for practitioners, and reaching out to business and academia for accountability, support, and feedback. The consortium will support an annual conference and a multi-tiered membership model. Speaking of the annual conference... the next one will be in Atlanta in 2010... venue to be announced.
Dean Leffingwell (Opening Keynote): A Lean and Scalable Requirements Information Model for Agile Enterprises
I've been a big fan of Dean Leffingwell for a while now. His book Scaling Software Agility is probably the most clear... well reasoned explanation of doing agile at scale that I have ever read. As we've been exploring here for the past few months... agile at scale is not a trivial problem... and that means the solutions are not likely to be trivial either.
Dean starts his keynote by explaining some of the basics of agile software development and why certain practices break down when you start to scale. He addressed some 'controversial' ideas like agile architecture, component teams, and managing dependencies across multiple agile teams. His talk leverages pretty heavily his recent work on a Lean Scalable Requirements Model but never really got into the Lean concepts that are required to make it all work.
During the Q and A session, Dean began to address the idea of creating a pull system to drive requirements across the team of teams concept. I totally agree with Dean's approach and really respect his work. You are going to see me explore some of these ideas over the next few weeks in my blog posts. That said... I think his keynote missed an opportunity to directly link lean into his lean agile requirements model. Dean's explanation of his model brought up issues that many in the software development community really needed to hear and he delivered a great talk.
Peter Middleton: Lean Software Development, Achieving Better Requirements
Peter Middleton is the co-author of "Lean Software Strategies: Proven Strategies for Managers and Developers". He is an academic at the Queens University in Belfast and has been researching Lean for the past 20 years. Peter writes about how lean will have an impact on the software community going forward.
Peter's talk starts with the fundamental assumptions of agile... agile methodologies assume that there is a high level of noise in the system... that requirements are evolving... technologies are evolving... and we just need to do something to make progress in the face of uncertainty. Peter's perspective is that this is a flawed paradigm... he postulates that the reason we don't understand our requirements is because we don't understand our purpose.
The talk focused on the idea that much of our problems with software requirements is that we have too much noise in the system.
Lean can help us reduce that noise by identifying our failure modes and improving them first. Middleton says that we should focus on what delivers value to our customer and work to optimize that value delivery. Getting there is a non-trivial problem... it involves reducing variability in the process... establishing the correct measures, constraints, and context... making sure your KPIs drive the right organizational behavior.
Taking the noise out of the system helps our requirements become more stable. Cleaning up the noise will help you improve performance but getting people to see this is the real challenge. Many folks have quite a bit invested in the status quo. To lead change you have to take a more indirect approach. As change agents we have to design an experience that lets the leadership team see the problems for themselves. Software is often not the problem... we need to address the bigger constraints in the system.



