Tesugen

Skrev ett snöigt svar på AgileSweden-mailinglistan i morse, om att bilindustrin kan vara relevant som inspiration för systemutveckling:

Visst, men den är relevant i ganska många avseenden ändå. Och i synnerhet eftersom biltillverkning så uppenbart är något som är väldigt kostsamt och där riskerna är höga.

En sak som är relevant är det att bilindustrin har gått från att vilja spika designen i ett tidigt skede, före dyra moment som att skära till pressblock (om det nu heter så på svenska) för att pressa karossdelar. Från boken (Lean Software Development):

When sheet metal is formed into a car body, a massive machine called a stamping machine presses the metal into shape. The stamping machine has a huge metal tool call [sic!] a die which makes contact with the sheet metal and presses it into the shape of a fender or a door or a hood. Designing and cutting these dies to the proper shape accounts for half of the capital investment [!] of a new car development program, and drives the critical path. If a mistake is made and a die is ruined, the entire development program suffers a huge set-back. So if there is one thing that automakers want to do right, it is the die design and cutting.

Åndå påbörjas, enligt Poppendieck, detta arbete parallellt med designarbetet. Om man i bilindustrin kan driva utvecklingen, samt tillverkningen, av nya bilmodeller parallellt istället för i faser – varför vill man, för att få “kontroll”, driva utvecklingsprojekt i distinkta faser?

En annan sak som är relevant är köteori. Hon talar om Kanban-system, som drivs av “pull” snarare än “push”—av efterfrågan snarare än förutseende. När uppgiften att implementera en feature ska passera flera personer, där varje person ska vänta på den föregående, uppstår stor ineffektivitet. Utvecklarna måste vänta på att beställaren ska bilda sig en uppfattning om vad som önskas; testarna måste vänta på att utvecklarna ska bli klara; utvecklarna i sin tur måste vänta på att testarna blir klara för att fortsätta, osv.

I ett utvecklingsprojekt kan ett Kanban-liknande system uppnås genom att man har en vägg indelad i sektioner för uppgifter som pågår, som ej är påbörjade, samt uppgifter (i form av index-kort, postit-lappar, eller liknande) som är klara. När man som utvecklare blir klar med en uppgift tar man en ny från dem som ej är påbörjade; testaren kan ta uppgifter som är klara för att testa dem.

Samtidigt ger en blick på denna vägg en omedelbar statuskoll – istället för att varje måndag ha ett möte där man går runt bordet och var och en ska redovisa sin status, vilket bara ger en illusion av att man har koll på läget.

Som sagt, Poppendiecks bok rekommenderas. En väldigt bra summering av lean-tänkandet—dock utan koppling till systemutveckling—finns i kapitlet “Muda, Service, and Flow” från boken Natural Capitalism, vilken finns online i sin helhet här. De fullständiga kapitlen finns som nedladdningsbara PDF-filer.”

The above was posted to my personal weblog on May 15, 2003. My name is Peter Lindberg and I am a thirtysomething software developer and dad living in Stockholm, Sweden. Here, you’ll find posts in English and Swedish about whatever happens to interest me for the moment.

Posted around the same time:

The seven most recent posts:

  1. Tesugen Replaced (October 7)
  2. My Year of MacBook Troubles (May 16)
  3. Tesugen Turns Five (March 21)
  4. Gustaf Nordenskiöld om keramik kontra kläddesign (December 10, 2006)
  5. Se till att ha två buffertar för oförutsedda utgifter (October 30, 2006)
  6. Bra tips för den som vill börja fondspara (October 7, 2006)
  7. Light-Hearted Parenting Tips (September 16, 2006)
Bloggtoppen.se