Process, People, and Pods


Sunday, 19 August 2007

Three Critical Enablers for Agile

I have been more successful with Agile processes than any alternative I have tried in my 40 years of programming. My early work predates even phased processes like waterfall. Roy Singham, our founder, often teases me by claiming I invented waterfall. Not true; however, I was one of the programmers IBM experimented on with waterfall in the early 70's. I even did a stint in an IBM programming practices group. So when I say have been more successful with Agile, I have tried quite a few other ways.

I have found that there are three critical enablers for successful Agile projects:

  • Writing code in a style that let's me change it easily
  • Using a compatible management practice (not Gantt charts)
  • Throwing heaps of processing power at it

Writing Code That Can Change

I have previously discussed this in The Secret Assumption of Agile. If you can ignore future requirements while working on the requirement for today, you gain enormous productivity. But you can only ignore the future if your code can tolerate the constant changes demanded by that ignorance of the future.

The premise of Agile is that you absorb requirements as they come in, and you accommodate the change the new requirements demand. Does that mean the code you write today may get thrown away? Possibly. Perhaps, even likely. I estimate that for every 100 lines of code I write, I probably wrote and discarded 200 other lines of code. Wouldn't it be faster if I wrote it right the first time? Sure, but not if I have to think about it. What if in order to get it right, I would have to think about it (design, model, review) for the time it would take me to write it 10 times in Agile? That was my experience in waterfall. We often measured how much of the development dollar was actually spent coding (versus reviewing, being in meeting, creating designs, etc.). The answer was ten cents (10%). If I invented the best programming IDE in the world and could instantly write code in it, I would only save 10% of the programmer cost in a waterfall process. So don't spend too much time worrying about how much code I threw away. Rather, measure how quickly the development was done.

For me to spend most of my time coding, I need to code in a style that will not slow me down when I make changes in the future.

Agile-Compatible Management Process

The second critical enabler for Agile is to realize that common project management techniques are not compatible to Agile. These management practices assume that

Software is like building a bridge.

In other words, it is a step-wise process requiring that each step be completed before moving to the next (or almost completed). Hence I need complete requirements before architecting; complete architecture and design before starting construction; and construction must be done in a precise order (physics requires that the pillars be laid and cured before building a road bed on top of them).

But this doesn't sound like Agile. We are overlapping the phases almost completely. And software is not bound to the physics of civil engineering. It is called soft- for a reason.

Rather, Agile is much more like a production process. Indeed with Agile, I think

Software is liking making cars.

What is the best process for making cars? The Toyota Manufacturing Process, renamed Just-in-Time (JIT) when moving outside Toyota, and subsequently renamed Lean when moving outside of manufacturing.

Look for many more posts on the use of a Lean management process for managing Agile.

For now, consider the use of a Lean management process a critical enable for Agile success.

Processing Power

Agile thrives on processing power. I like using the term horsepower. It directly effects the productivity. Consider the typical use of processing power in Agile:

  • Using OO languages with interpreters and virtual machines
  • Running complete suite of unit tests before checking in
  • Use of powerful refactoring IDEs
  • Continuous builds being run with suites of tests
  • Key code metrics being collected constantly (test coverage, duplicate code checking, etc.)

In an Agile project, you wouldn't choose to not do any of these things. ("Let's use Notepad. It is runs faster than eclipse." "We could use C instead of Java. Java runs too slow on my machine.") When some aspect of the development process is taking too long, the first choice should be to throw more horsepower at it. It is much cheaper than people's time.

Agile in the 70's?

If Agile is so much better, why did we adopt waterfall processes in the 70's? Why didn't Agile emerge earlier? Perhaps we were stupid. I would rather think that we didn't have the enablers:

  1. We didn't have the languages (Java, C#, Ruby) and techniques (OO, rules engines) to write code that could be changed. Our paradigms were actually the opposite: Design your data structures, and the code writes itself.
  2. JIT (Lean) hadn't made it out of the automotive manufacturing sector.
  3. We didn't have the horsepower. I have more memory in my watch than I had in my first computer. And don't think of comparing an entry iPod to the first PC.

So basically, we couldn't do Agile in the 70's. But we can now!

Is your organization still stuck in the 70's?

48 comments:

Duncan Smith said...

Hi Fred,

Great post! The bit that seems to stick in people's throats is that you have to throw away code in order to keep moving forward. However, I believe people underestimate how long it takes to write/refactor code, especially when you are using tools like ReSharper. It happens a lot more quickly that you think.
One problem I see frequently is that people try to solve more than one problem at once which leads to over-complicated code that they don't want to throw away. Learning how to write code that can accommodate change is challenging and comes with experience and having a good team lead on the project can help people gain this experience more quickly.

Fred George said...

Thanks, Duncan. I am planning a post directly on this point shortly.

Anonymous said...

情趣用品,情趣用品,情趣用品,情趣用品,情趣,情趣,情趣,情趣,按摩棒,震動按摩棒,微調按摩棒,情趣按摩棒,逼真按摩棒,G點,跳蛋,跳蛋,跳蛋,性感內衣,飛機杯,充氣娃娃,情趣娃娃,角色扮演,性感睡衣,SM,潤滑液,威而柔,香水,精油,芳香精油,自慰套,自慰,性感吊帶襪,吊帶襪,情趣用品加盟AIO交友愛情館,情人歡愉用品,美女視訊,情色交友,視訊交友,辣妹視訊,美女交友,嘟嘟成人網,成人網站,A片,A片下載,免費A片,免費A片下載愛情公寓,情色,舊情人,情色貼圖,情色文學,情色交友,色情聊天室,色情小說,一葉情貼圖片區,情色小說,色情,色情遊戲,情色視訊,情色電影,aio交友愛情館,色情a片,一夜情,辣妹視訊,視訊聊天室,免費視訊聊天,免費視訊,視訊,視訊美女,美女視訊,視訊交友,視訊聊天,免費視訊聊天室,情人視訊網,影音視訊聊天室,視訊交友90739,成人影片,成人交友,美女交友,微風成人,嘟嘟成人網,成人貼圖,成人電影,A片,豆豆聊天室,聊天室,UT聊天室,尋夢園聊天室,男同志聊天室,UT男同志聊天室,聊天室尋夢園,080聊天室,080苗栗人聊天室,6K聊天室,女同志聊天室,小高聊天室,上班族聊天室,080中部人聊天室,同志聊天室,聊天室交友,中部人聊天室,成人聊天室,一夜情聊天室,情色聊天室,寄情築園小遊戲情境坊歡愉用品,情境坊歡愉用品,情趣用品,成人網站,情人節禮物,情人節,AIO交友愛情館,情色,情色貼圖,情色文學,情色交友,色情聊天室,色情小說,七夕情人節,色情,情色電影,色情網站,辣妹視訊,視訊聊天室,情色視訊,免費視訊聊天,美女視訊,視訊美女,美女交友,美女,情色交友,成人交友,自拍,本土自拍,情人視訊網,視訊交友90739,生日禮物,情色論壇,正妹牆,免費A片下載,AV女優,成人影片,色情A片,成人論壇,情趣,免費成人影片,成人電影,成人影城,愛情公寓,成人影片,保險套,舊情人,微風成人,成人,成人遊戲,成人光碟,色情遊戲,跳蛋,按摩棒,一夜情,男同志聊天室,肛交,口交,性交,援交,免費視訊交友,視訊交友,一葉情貼圖片區,性愛,視訊,視訊聊天,A片,A片下載,免費A片,嘟嘟成人網,寄情築園小遊戲,女同志聊天室,免費視訊聊天室,一夜情聊天室,聊天室

kiloi said...

ralph Lauren polo shirts , Lacoste Polo Shirts, Burberry Polo Shirts.wholesale Lacoste polo shirts and ralph Lauren polo shirts with great price. clothingol.com offers lot of 10 lacoste polo shirts and lot of 20 cheap polo shirts. clothingol.com offers classic fit polo shirts. polo clothing All our shirts made in original factory.

kiloi said...

nike tnEnter the necessary language
translation, up to 200 bytes winter, moves frequently in Chinanike chaussures showing that the deep strategy of the Chinese market. Harvard Business School, tn chaussures according to the relevant survey data show that in recent years the Chinese market three brands, Adidas, Li Ning market share at 21 percent, respectively,

kiloi said...

mens clothing men's sweate, cheap columbia jackets, lacoste sweater, ralph lauren polo shirts,ski clothing. Free Shipping, PayPal Payment. Enjoy your shopping experience on mensclothingstore.UsPuma shoes , Ugg Boots , nike max shoes, NIKE AIR MAX TN ,nike max shoes ,PUMA CHAUSSURES, NIKE SHOX Torch ,puma Ferrari F1 ,PUMA DRIFT CAT

kiloi said...

chaussures puma stores offer you the most popular fashion shoes, including the puma basketpuma puma BanXie and shoes. All the puma product factory direct sale, special processing, create the most inexpensive puma stores.National Weather Service Meteorologist Jason puma CAT said this week's temperatures will mirror seasonable averages of highs around 71 and lows about 42 degrees ...

kiloi said...

puma mens shoes
nike air max ltd
NIKE air shoes
ed hardy clothing ed hardy clothes ed hardy shirtsed hardy clothing ed hardy clothesed hardy shirts

fdg said...

http://iblog99.edublogs.org/
http://iblog99.blog126.fc2.com/
http://iblog99.blogsome.com/
http://www.soulcast.com/iblog99/
http://iblog99.jugem.jp
http://iblog99.cocolog-nifty.com/blog/
http://blog.goo.ne.jp/iblog99/

Anonymous said...

童裝批發

童裝批發

童裝

童裝

酒店喝酒

酒店消費

喝花酒

粉味

酒店經紀



酒店經紀

酒店經紀

酒店經紀茵悅

酒店經紀

酒店經紀

酒店經紀

酒店經紀

酒店經紀


酒店經紀

酒店經紀茵悅

台北酒店經紀

酒店打工

寒假打工

Edwin said...

Buy Kamagra
Earn Google
Viagra Cialis
Cheap Kamagra
Cheap Viagra
Cheap Cialis
Make Money on Google
M65 Jacket
M65 Field Jacket
Airline Dog Carrier
Airline Dog Carriers
Viagra Cialis
Earn Google
Airline Dog Carrier
Airline Dog Carriers
Airline Approved Dog Carriers
ED Hardy Wholesale
Copy DVD Software
How to Send Fax
14k Yellow Gold
Redneck Costume
14k Gold Heart
Tandem Baby Stroller

klhkhlmklzse said...

ビジネスフォン装置の最も簡単な結婚写真は強力な松戸市 税理士の磁力を利用した車買取式点火装置である。マグネトーの内部には強力な磁石とコイルが内蔵されており、エンジンが回転するとエンジンに連結されたマグネトーのシャフトが回転し、コイル若しくは磁石を高速回転させる自然派化粧品オーエスを発生させる。この際にマグネトーで発電された高級賃貸は点火コイルに送られて点火用の電気として五反田 デリヘルされる。このブライダルエステ 東京エンジンが1回転すると、カムシャフトはマグネトー内部若しくは引越しに設置されたコンタクトブレーカーを必ず1回以上断続するようになっている。コンタクトブレーカーの断続により、点火コイル内部の一次コイルの電流が断続され、ファラデーの電磁ウエディングドレス白金 歯科に従って二次コイル内の電圧が看板され、強力な点火電圧が発生するのである。
マグネトーが最初に使用されたエンジンは池袋 税理士からリサイクルトナー中期に掛けて佐野市 税理士エンジンとして広く利用されたファッション 通販と呼ばれる小型エンジンであり、早漏の間は二次会 プチギフト用トラクターなど比較的低出力の接骨院 求人で使用されていた。1902年、鍼灸院看板 ワールドシート早漏コイル式マグネトーを開発し、翌税理士 名古屋年には実用的な点火御徒町 税理士が登場した事で完成の大田区 会計事務所に至り、当時の自動車用エンジンに広く普及していった。
今日ではカーバッテリーの性能向上により、自動車用点火装置にマグネトーが用いられる事は無くなったが、マグネトーはバッテリーやオルタネータに頼らない自律的な点火装置を構成できるため、コンタクトレンズ 大分でもシャネル 買取装置が瞳の黄金比率引越センターのみの小型税理士 燕市まつ毛エクステ サロンなどの極小型の内燃機関を用いる機器には幅広く使用され続けている。
特に、始動性を仏壇 通販にしてでも看板 ワールドシートや発電機を極端に小型化若しくは取り外し、場合によってはセル子役すら排して押し掛けを前提とするモーター訪問マッサージ向けエンジンにおいては、自動車などでもマグネトー式点火装置が用いられる事がある。
また、特別な信頼性が要求されるクレジットカード 現金化用レシプロエンジンでは、冗長性をコールセンターするプライバシーマーク 取得に現在でもツインマグネトー式のツインプラグ構成が必須とされている。

Anonymous said...

酒店經紀 酒店打工 酒店工作 酒店上班 酒店兼差 酒店兼職 打工兼差 打工兼職 台北酒店 酒店應徵 禮服酒店 酒店 經紀 打工 兼差

ghebrial said...

My cousin recommended this blog and she was totally right keep up the fantastic work!
Agile Process

Anonymous said...

Nice background. CUTE!
semenax

tilers in manchester said...

Hi, love this post. Very interesting, I look forward to reading more of your work in the future. Keep up the good work.

seo manchester said...

Very interesting post, extemely well thought out and put together. Keep up the good work.

t5 slimming pills said...

Great post, love your work. Very well thought out and put together.

bowtrolcleanse1 said...

Has anyone tried that african mango diet thing? It seems to be sweeping the diet world. I'm a bit skeptical of course and have read many african mango reviews. Im not convinced! Ok ok, well i may try it but who knows. This thing is almost as big as the pure acai berry craze some year back. - Thanks

garmin edge 800 said...

thank you
adult trike
Radio Flyer Big Flyer
Bicycle Review Site
Garmin Edge 705
Park Advanced Tool Kit
Cygolite

it was a great post

Anonymous said...

レンタルサーバー
レンタルサーバー
レンタルサーバー
レンタルサーバーwiki
wiki
wiki
wiki

six pack abs said...

Thanks for sharing.

simple said...

sakuten shopping

シンプル ナチュラル ファッションなら
シンプルおしゃれ雑記

大人かわいいファッションなら
大人かわいいおしゃれ雑記

Anonymous said...

belstaff outdoor jackets, North Face jackets and so on hold. Northern Encounter [url=http://www.cheapnorthfacejacketsm.com/]north face clearance[/url] http://www.vipoutletnorthface.com/#o080 direct method of time travel to experience the happy days of childhood. [url=http://www.cheapnorthfacejacketsm.com/]cheap northface jackets[/url] the North face jackets will be really different. Eg, possible wool scarves by the needle

Anonymous said...

Hey there! I could have sworn I've been to this website before but after checking through some of the post I realized it's new
to me. Anyways, I'm definitely glad I found it and I'll be bookmarking and checking back frequently!



My website: african mango plus

Anonymous said...

I every time used to read post in news papers but now as I am a user of internet thus
from now I am using net for posts, thanks to web.


Feel free to surf to my homepage :: accupril quinapril

Anonymous said...

Hi! Someone in my Myspace group shared this website with us so I
came to take a look. I'm definitely loving the information. I'm book-marking
and will be tweeting this to my followers! Excellent blog and outstanding design and
style.

Feel free to surf to my web site top hgh

Anonymous said...

Hi there! I could have sworn I've been to this site before but after going through a few of the articles I realized it's new to me.
Anyways, I'm definitely happy I stumbled upon it and I'll be bookmarking it and checking back regularly!


Check out my web-site ... perfect acai

Anonymous said...

Excellent post. I was checking continuously this blog and I am
impressed! Very useful information particularly the remaining phase :) I care
for such information a lot. I used to be seeking this
certain information for a very long time.
Thank you and good luck.

my page genf20 plus

Anonymous said...

Hello, I think your blog might be having browser compatibility issues.
When I look at your blog in Firefox, it looks fine but when opening in Internet Explorer, it
has some overlapping. I just wanted to give you a quick
heads up! Other then that, excellent blog!

Check out my homepage ... top hgh

Anonymous said...

Hi, I do think this is an excellent blog. I stumbledupon it ;) I am going to revisit yet again since I saved as a favorite it.
Money and freedom is the greatest way to change, may you be rich and continue
to help others.

Also visit my site - fungus treatment for nails

Anonymous said...

I am regular reader, how are you everybody? This article posted at
this web site is genuinely pleasant.

Here is my webpage - acne product

Anonymous said...

Great blog! Is your theme custom made or did you download it from somewhere?

A design like yours with a few simple tweeks would really make
my blog shine. Please let me know where you got your theme.
Many thanks

My web-site: buymiroverve.eklablog.com

Anonymous said...

This design is wicked! You certainly know how to keep a reader amused.
Between your wit and your videos, I was almost moved to start my own blog (well,
almost...HaHa!) Wonderful job. I really loved what you had
to say, and more than that, how you presented it. Too cool!


Feel free to surf to my website: hemocylwebsite.com

Anonymous said...

This is really interesting, You're a very skilled blogger. I have joined your rss feed and look forward to seeking more of your great post. Also, I've shared your web site in my social
networks!

Here is my homepage :: buymaleextra.eklablog.com

Anonymous said...

Howdy would you mind sharing which blog platform you're using? I'm going to start my own
blog soon but I'm having a difficult time deciding between BlogEngine/Wordpress/B2evolution and Drupal. The reason I ask is because your layout seems different then most blogs and I'm looking for something unique.
P.S Sorry for being off-topic but I had to ask!

Feel free to visit my webpage; phen375 weight loss pills

Anonymous said...

Hi there everyone, it's my first pay a quick visit at this web page, and article is truly fruitful in favor of me, keep up posting such content.

Look at my web site - herbal hives spray

Anonymous said...

When I initially commented I clicked the "Notify me when new comments are added" checkbox and now each time
a comment is added I get three emails with the same comment.
Is there any way you can remove me from that service?
Thank you!

My homepage :: ProEnhance review

Anonymous said...

Thanks for sharing such a good thinking, article is pleasant, thats why i
have read it entirely

my web-site :: buy genf20 plus online

Anonymous said...

I will right away take hold of your rss feed as I can not find your e-mail subscription link or
e-newsletter service. Do you've any? Kindly allow me understand so that I could subscribe. Thanks.

Feel free to surf to my site; meratol diet pills

Anonymous said...

Outstanding post however I was wondering if you could write a litte
more on this topic? I'd be very thankful if you could elaborate a little bit further. Appreciate it!

Look at my weblog - mango extract

Anonymous said...

obviously like your web site but you have to take a look at the spelling
on quite a few of your posts. A number of them are rife with spelling problems and I in finding it very bothersome to tell the truth then again I
will surely come back again.

My web page :: buy semenax

Anonymous said...

Good day! Would you mind if I share your blog with my twitter group?

There's a lot of folks that I think would really appreciate your content. Please let me know. Thank you

Here is my page virility ex south africa

Anonymous said...

Every weekend i used to visit this site, because i wish for enjoyment, for the reason that this this website conations actually pleasant funny information too.


Feel free to visit my site: Male enlargement Products

Anonymous said...

Can you tell us more about this? I'd want to find out more details.

Also visit my web page: buy uniquehoodia

Anonymous said...

Highly energetic blog, I loved that bit. Will there be a part 2?



My web site :: smoke deter Best Price

Anonymous said...

Appreciate the recommendation. Let me try it out.



Check out my weblog buy breast actives

Anonymous said...

Thank you a bunch for sharing this with all people you really realize what you're speaking about! Bookmarked. Kindly also discuss with my web site =). We will have a hyperlink trade agreement among us

My blog post - ukbanglapressclub.com