News on Monday
more>>
SharePoint Tech Report
more>>


   

 
 
Download Current Issue
ISSUE 7/1/2009 PDF

Need Back Issues?
DOWNLOAD HERE

Receive the print Edition?


 
Is the mystery Borland suitor Serena?
Borland software is considering an offer from another company after a preliminary deal with MicroFocus. Is Serena the new company?
06/30/2009 01:55 PM EST

Windows 7 - An eBayer's dream product?
Windows 7 pre-orders can make people money on eBay.
06/29/2009 03:48 PM EST

Know thine cloud provider
Cloud computing require companies to understand compliance and regulation. Third parties will play a big role in regulated industries.
06/29/2009 02:58 PM EST

 

Microsoft Worldwide Partner Conf.
7/13/2009 to 7/16/2009
New Orleans
Microsoft

OSCON (Open Source Convention)
7/20/2009 to 7/24/2009
San Jose
O'Reilly Media

XBRL Technology Workshop & Summit
7/28/2009 to 7/30/2009
Santa Clara
XBRL US

ACM SIGGRAPH
8/3/2009 to 8/7/2009
New Orleans
ACM SIGGRAPH

OpenSource World (formerly LinuxWorld)
8/12/2009 to 8/13/2009
San Francisco
IDG World Expo


 
Most Read Latest News Blog Resources

It’s Lean, But Is It Agile?


Iterative methods are closely aligned



June 15, 2007 — 
Kent Beck was giving a talk about agile software development to a group of business executives, when he noticed one audience member who just wasn’t engaged.

“The guy’s arms were folded and his body language said he didn’t like my message,” recalled the inventor of Extreme Programming (XP). But when Beck made reference to the lean development approach, the guy’s face lit up. “Why didn’t you tell me [agile and XP] are lean manufacturing for software?” he asked Beck after the talk.

But are lean software development and agile software development—of which XP is the most prominent example— one and the same?

They both are iterative approaches to developing software, and in some respects lean and agile are closely aligned, said Beck. Several other agile experts interviewed by SD Times agreed. But when asked whether lean software development is an agile methodology, alongside the others that fall under the agile umbrella—Adaptive, Crystal, Dynamic Systems Development Method, Feature-Driven Development, Scrum and XP—only one of the experts said yes.

Beck did not answer yes or no, but transformed the question instead. “If an XP programmer joined a team that had been practicing lean, would [he] feel right at home? I expect the answer is yes.” By contrast, if the XP programmer joined a team doing waterfall development, he would likely feel he had landed in “a different country, on a different planet,” said Beck, referring to the traditional approach to building software, where each stage completes, before the next is begun.

Lean software development is derived from the lean manufacturing approach, which Toyota originated in Japan as early as the 1940s, said Mary Poppendieck, co-author with Tom Poppendieck of “Implementing Lean Software Development,” among other books. She said that the process of building cars, for example, isn’t exactly the same as that of developing software. But the principles of lean manufacturing, known earlier as just-in-time manufacturing, apply to software development too.

For instance, a key idea in lean manufacturing is “eliminate waste.” Applied to software development, waste is defined as “anything that is not in direct support of the customer, such as writing requirements that have to be changed later,” said Poppendieck. Another lean manufacturing principle is “stop the line,” she said. In software that translates to “fix bugs as soon as you find them.”

Asked to characterize lean software development’s relationship to agile methodologies, she said: “Lean is direct support of agile.”

Crystal creator Alistair Cockburn admitted that he knew little about lean manufacturing when he and others authored the Agile Manifesto in February 2001, coining the term “agile.”

“But since then I have been doing a lot of reading about lean, and I can’t see that we in the agile community have added much of anything to what Toyota was already doing,” he said. “It is sobering to realize they have been doing for decades stuff we think we invented.”

Asked whether he considers lean software development an agile methodology, Cockburn said: “Yes, it fits in the agile suite absolutely.”

The Agile Manifesto was the result of a February 2001 meeting that brought together Beck, Cockburn and other backers of iterative development approaches, known at the time as lightweight methodologies. The document (agilemanifesto.org/history.html) articulates the values of agile development, including “People and interactions over process and tools,” and “Working software over documentation.”

Ward Cunningham, who works for the Eclipse Foundation, was a key contributor to the Agile Manifesto meeting. But unlike some of his agile colleagues, he fundamentally disagrees that ideas from manufacturing can be successfully applied to software development.

“Software development is a knowledge activity, not a material processing activity,” he said. “Manufacturing has been improved by insights associated with lean [thinking], but software has never been improved by modeling its processes on manufacturing.”

THE LEAN ZEITGEIST
Agile or not, lean software development is attracting the attention of business executives (such as the one listening to Beck’s talk) because it is based on a concept the business world is familiar with, said Beck. “Lean is part of the zeitgeist. It gets talked about in business schools, and even people who aren’t in manufacturing have heard of it.” By contrast, the message behind agile development approaches has been marketed mostly to IT executives, he said.

Business executives are comfortable with the lean software development because it has a set of thinking tools for looking at the big picture and optimizing it, said Beck. “None of the agile methodologies emphasize that.” The lean concept of “continuous improvement,” for example, is also found in XP ideas, such as “Don’t try to do things perfectly if you don’t know how” and “Make changes in baby steps,” he said. “The thinking is there, but [the idea of continuous improvement] is not expressed directly.”

Forrester analyst Carey Schwaber agreed that lean software development and agile methodologies are two complementary schools of thought. “There are quite a lot of people out there using the terms ‘agile’ and ‘lean’ interchangeably, but they are not the same thing,” she said. She has also seen agile consultants attempt to differentiate themselves by citing expertise in lean. “But often that expertise isn’t much to speak of.”


Share this link: http://www.sdtimes.com/link/30780
 

Add comment


Name*
Email*  
Country     


  • Comment
  • Preview
Loading