鷲崎です。
こちらでの XP と Taylorism に関する議論を踏まえまして、
以下に、科学的管理法と XP に関する考察を記述致します。
同じ内容を以下の場所に置きました。
http://www.fuka.info.waseda.ac.jp/~washi/taylor/
1. 文献の整理
以降において XP と科学的管理法に関し議論するにあたり、
まず私が参考とした文献を整理します。
私は、K.Beck がテイラリズムについて言及した(らしい)4月19日の
XP Seminar には参加しませんでした。その際に発表された内容を推測
するにあたり、文献 [Beck00][Ogis01][XP-jp:01844] を参考としました。
また、テイラリズムに関しては、文献 [Taylor57][Bloemen00][Sandrone] を
参考としています。
なお、議論をするにあたって、誰でも直ぐに参照可能な Web 上の、
できれば日本語の資料があることが望ましいと考えましたので、
[Sandrone95] は私が急遽日本語に翻訳したものとなっています。
[Sandrone95] は科学的管理法の原著である [Taylor57] の全てを
網羅するものではありませんが、テイラリズムの要点を述べ、さらに、
現代的な考察を加えているという点について、テイラリズムに関する
議論を展開する上で有用な資料と考えます。
科学的管理法を構成する各基本要素("時間研究" や "道具の標準化"
など)の詳細に関しては適宜 [Taylor57] を参照します。
2. 用語の整理
幾つかの用語を整理します。
・F.W. テイラー(F.W.Taylor): 科学的管理法の提唱者(1856〜1915)
・科学的管理法(Scientific Management): テイラーが、出来高払制私案(A Piece
Rate System)と工場管理法(Shop Management)を基礎として 1911 年に発表した論文
"科学的管理法の原理(Principles of Scientific Management)"によって広く知られる
組織的な管理法
・テイラーシステム(Taylor System): 科学的かつ組織的な管理を遂行する体系。
科学的管理法とほぼ同義。
・テイラリズム(Taylorism): 科学的管理法の指導原理。または、科学的管理法
そのもの。
3. Kent Beck の誤解
XP セミナーにおいて、Kent Beck はテイラリズムを、労働者を "部品" として
扱うものとして捉え、対して XP は異なるという持論を展開したものと思われます
[XP-jp:01844] 。
しかしながらテイラーが本来提唱するは、労働者と経営者間の関係について、
対立から協調への精神革命を目的とするものです [Taylor57][Bloemen00]
[Sandrone95] 。
テイラーは、労働者について怠業するもの(soldiering)、あるいは、その可能性
のあるものと捉えていますが [Taylor57]、その一方で、テイラーは
労働者が発達し成長することについての熱心な支持者であったとの指摘が
あります [Sandrone95]。
一方、テイラー自身による記述中において、 労働者を直接的に部品として
表現する記述を、全参考文献中において見つけることが出来ません。
"工員を機械あつかいにするとの非難について" という節 [Taylor57] において、
工員が与えられた仕事について専門的かつ発展的となることを促すものであって、
仕事の領域が狭いからといって工員を機械扱いしているとは言えないと
主張しています。
K.Beck が指摘するような "テイラリズムは労働者を部品として扱う" という
捉え方は、テイラー後の様々な批判や著述、および、テイラリズムを自分達の
都合の良いように適用した後の経営者達の影響 [Bloemen00] を多分に受けている
ものと推測します 。
従って、労働者の扱いに関する考え方をもって XP とテイラリズムが
全く異なるものと位置付けることは出来ません。
4. 科学的管理法の適用範囲
科学的管理法の目的は、人的資源の無駄を無くし有効活用することにあります。
テイラーは科学的管理法の適用範囲として、製造工場に限らず、家庭の管理や
農場の管理、大学や政府各部署の管理のように、全ての社会活動について
応用可能であるとしています [Taylor57] 。
[XP-jp:02656]
> 量産品の製造工程における最適化の手法だと思いますので、
> XPとは思想が異なります。
従って、上手さんのご指摘にあった上記における、テイラリズム(科学的管理法)
に関する "量産品の製造工程における最適化の手法" という認識は、
科学的管理法の定義としては適切でないと感じます。
[XP-jp:02657]
> そもそも、ソフトウェア開発では、同じものを開発しても意味がない
> ので、同じ生産物を作る、同じプロセスで作業を遂行するといった、
> Taylorismの前提が成り立ちません。
> # それなのに無理に適用したりするからおかしなことになる:-<
同様に、濱井さんのご指摘にあった上記における "同じ生産物を作る、
同じプロセスで作業を遂行するといった" 前提は、テイラリズム
(科学的管理法)には無いように思います。
しかしながら、科学的管理法の有効性がテイラーによって実証された例は主に、
ご指摘のような同一の作業を繰返して、同じ物を生産するような製造工場
および単純な労働現場におけるものです。
これは主に、同一の作業が繰返されるような製造工場において時間研究(後述)
が実行しやすかったことに起因すると推測します。
5. 科学的管理法と XP に共通な特徴
私が [Washizaki01] において記述した科学的管理法と XP に共通する特徴に
ついて、以下に詳しく考察します。
ここで、科学的管理法と XP の両手法における共通性を議論するにあたり、
両手法における特徴がどれだけ "具体的に" 類似していてはじめて "共通
している" と認識できるか、について考えることは重要です。
5.1. 道具の標準化とコーディング規約
科学的管理法における工具の標準化(Standardization of tools and implements)
は、当時、工員がそれぞれ異なる工具を用いていたため、同一の作業に対する
動作が異なってしまい、結果として作業効率向上の妨げとなっていたことへの
対応策です。
一方、XP におけるコーディング標準(Coding standards)は、
複数のプログラマによって構成されるチーム内で、プログラムコードを記述する
方法(エディタの種類やコーディング規約)を統一することで、
チーム内でのコードに関する混乱をなくしコードに基づく対話を促進する
ことを目的とします。
工具の標準化とコーディング標準は、それぞれ解決策としてとる手段が同一である
という点で共通であると認識することが出来ます。なぜなら、プログラマにとって
エディタは工具に他ならず、また、コーディング規約の統一とは同一の作業に対する
動作の統一に他ならないからです。
しかしながら両解決策は、組織全体の生産性を向上させるという最終的な目的に
ついて一致しますが、より直接的な目的としては一致していないと見なすことが
できるかも知れません。
コーディング標準は作業従事者であるプログラマ間での対話を重視した
ものであり、プログラマの便宜を考慮しているからです。
対して、工具の標準化は、作業従事者である工員の便宜よりもむしろ、
管理者側の便宜に沿った解決策といえます。
[XP-jp:02657]
> 「Coding Standars」などの文書標準や時間の見積もりって、XPに
> 限らず、ソフトウェア開発のプロジェクトでは、ごく普通のことでは?
> 無用の混乱を防ぐための標準化は、現在のほとんどのビジネスで普通の
> ことだと思いますし、時間の見積りを行わないビジネスなど想像するのも
> 困難です。
しかしながら、"道具の標準化" という解決策が、19-20世紀初頭の製造工場と、
現代のソフトウェア開発現場の両方にとって必要であった(ある)という事実は
見逃すことが出来ず、従って上記の濱井さんのご指摘は適切ではないと感じます。
ソフトウェア開発の現状として、同じチームやプロジェクト内で用いるコーディング
規約やエディタが統一されていないことがよくある [XP-jp:01844] からこそ、
XP ではコーディング標準を "ごく普通のこと" ながら解決策として明示しています。
一方、19 世紀の後半や 20世紀の初頭において、労働者が用いる工具が標準化
されていなかったからこそ、科学的管理では道具の標準化を解決策として
明示しています。
5.2. 時間研究と計画ゲーム
科学的管理法における時間研究(Time studies)は、労働全体を細かい作業工程
に分割し、各作業単位で最も効率的に遂行した際にかかる時間をストップウォッチ
で測定し、作業を行うための標準的な方法と、最短必要時間を用いた賃金体系
を構築することで、管理者と労働者双方に利益をもたらすことを目的とします。
対して、XP における計画ゲーム(The Planning Game)は、ソフトウェアの出荷に
関する計画を行うもので、より正確な計画のためにはソフトウェア開発(の特に
機能実装)にかかる時間の見積りが重要であるとしています。
計画ゲームの実行にあたって必要な時間見積りのために、時間研究のような
作業あたりの単位時間予測手法を活用することは可能かもしれませんが、XP は
そのようなことについて言及していません。
以上より、時間研究(および現代的コスト予測システム)と計画ゲームは、
時間を見積もるという行為が重要であると指摘しているということについて
類似すると見ることは可能かもしれませんが、解決策としての直接的な目的が
異なります。
従って、[Washizaki01] における "時間研究と計画ゲームは類似する特徴である"
とする主張は、全面的に間違っているとは思いませんが、適切ではないと感じます。
6. 基本思想の相違
両手法の基本思想として、人物間の関係について考察します。
科学的管理法の目的は、管理者と労働者間の関係を対立から協調へと改善する
ことにあります。一方、XP はそのもたらす価値として、プログラマ・管理者・
顧客間の対話が促進されることを挙げています。
関係者間の信頼関係の構築を重視しているという点で、両手法は類似していると
見なすことが出来ます。しかしながら、科学的管理法は労働者間の関係について
言及していません。この点について、XP は科学的管理法とは異なっていると
見ることが出来ると思います。
参考文献
[Washizaki01] 鷲崎, "XP と Taylorism(旧版)"
http://www.fuka.info.waseda.ac.jp/~washi/other/taylor_old.html
[Sandrone95] V.Sandrone 著, 鷲崎 訳, "テイラリズム: F.W.テイラーと科学的管理",
http://www.fuka.info.waseda.ac.jp/~washi/other/taylorism.html
[Taylor57] F.W.Taylor 著, 上野 訳, "科学的管理法", 技報堂, 1957
[Bloemen00] E.Bloemen 他著, 三戸 他訳, "科学的管理: F.W.テイラー
の贈り物", 文真堂, 2000
[Beck00] K.Beck, "Productivity gains through XP", 2000
http://www.cse.dcu.ie/cse/2000conference.html
[Ogis01] オージス総研, "XP Seminar 参加報告", 2001
http://www.ogis-ri.co.jp/otc/hiroba/specials/KentBeckXPseminar/XPSeminar_Rep/
[XP-jp:01842] Kent Beck Seminar report
http://objectclub.esm.co.jp/ml-arch/extremeprogramming-jp/1800/1842.html
[XP-jp:01844] Re: Kent Beck Seminar report
http://objectclub.esm.co.jp/ml-arch/extremeprogramming-jp/1800/1844.html
[XP-jp:02656] Re: XP と Taylorism
http://objectclub.esm.co.jp/ml-arch/extremeprogramming-jp/2600/2656.html
[XP-jp:02657] Re: XP と Taylorism
http://objectclub.esm.co.jp/ml-arch/extremeprogramming-jp/2600/2657.html
以上です。
--
鷲崎 弘宜 washi@....jp
http://www.washizaki.net