デスマーチの概念を初めて提唱した人の取り扱い

Table of Content

はじめに

デスマーチについてのWikipediaの記述が凄く引っかかり、また、多くの人がそれを無批判に受け入れているので記事を書きます。

2020/06/07時点のWikipediaより

https://ja.wikipedia.org/wiki/%E3%82%A2%E3%83%B3%E3%83%89%E3%83%AA%E3%83%A5%E3%83%BC%E3%83%BB%E3%82%B1%E3%83%BC%E3%83%8B%E3%83%83%E3%83%92

アンドリュー・ケーニッヒ (プログラマー)(英語版) - アメリカ合衆国のプログラマー。デスマーチの概念を初めて提唱した。

https://ja.wikipedia.org/wiki/%E3%83%87%E3%82%B9%E3%83%9E%E3%83%BC%E3%83%81

デスマーチ (death march) とは、プロジェクトにおいて過酷な労働状況をいう。本来は、コンピュータプログラマのアンドリュー・ケーニッヒ(英語版)によって1995年に示された、コンピュータシステムのアンチパターンのうち、プロジェクトマネジメント上の問題点の1つとして示した言葉である。

アンドリュー・ケーニッヒとアンチパターン

アンドリュー・ケーニッヒは英語版のWikiPediaによると「アンチパターン」で知られるとあります。
https://en.wikipedia.org/wiki/Andrew_Koenig_(programmer)

またこのページによると以下の経緯があるようです。

1995年 アンドリュー・ケーニッヒは、最初にJournal of Object Oriented Programの1995年3月-4月号でアンチパターンという用語を造語しました。"アンチパターンはパターンのようなものであり、解決策の代わりにそれが解決策のように表面的に見える何かを与えるが、1つではないことを除いて、ちょうどである"。

1998 Linda Risingは、アンドリュー・ケーニッヒのアンチパターンの定義をThe patterns handbook: techniques, strategies, and applicationsの中で再掲しています。

1998年 書籍「 AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis」という本は、この用語を広めました。

AntiPatterns: Refactoring Software, Architectures, and Projects in Crisisは日本では以下の書籍として出版されています。

アンチパターン―ソフトウェア危篤患者の救出
https://www.amazon.co.jp/dp/4797307587

英語版 Anti Pattern のWikiPediaの記載

2020/06/07時点のWikipedia
https://en.wikipedia.org/wiki/Anti-pattern

An anti-pattern is a common response to a recurring problem that is usually ineffective and risks being highly counterproductive. The term, coined in 1995 by Andrew Koenig, was inspired by a book, Design Patterns, which highlights a number of design patterns in software development that its authors considered to be highly reliable and effective.

The term was popularized three years later by the book AntiPatterns, which extended its use beyond the field of software design to refer informally to any commonly reinvented but bad solution to a problem. Examples include analysis paralysis, cargo cult programming, death march, groupthink and vendor lock-in.

1995年にアンドリュー・ケーニッヒが「anti-pattern」という言葉を造語し、3年後に書籍によって有名になったという記述は同じです。また、書籍化を行う際に、ソフトウェア設計を超えた分野についての問題を取り扱うようになり、そのなかにデスマーチも入っていると読み取れます。

アンチパターン―ソフトウェア危篤患者の救出におけるデスマーチの話

p258,259でデスマーチの話題をとりあつかっていますが、そこにアンドリュー・ケーニッヒは登場しません。
デスマーチの定義についてはエドワードヨードンの定義を参照しています。

エドワードヨードンのデスマーチの定義

エドワードヨードンは書籍デスマーチにおいて自身の考えるデスマーチの定義を行っています。

https://www.amazon.co.jp/dp/4810189821
https://www.amazon.co.jp/dp/4822282716

なお、第一版、第二版ともにアンチパターンについても、アンドリュー・ケーニッヒにも言及はありません。

まとめ

・アンドリュー・ケーニッヒはアンチパターンという言葉を提唱した。
・アンチパターンにデスマーチなどのソフトウェアの設計の範囲のものが追加されたのは書籍出版のタイミングと思われる。
・書籍のデスマーチの項目にはエドワードヨードンのデスマーチの定義が参照されている。

つまり、今、日本語Wikipediaで言われている「アンドリュー・ケーニッヒ がデスマーチの概念を初めて提唱した。」という記述には疑義がある。

これを確認するにはJournal of Object Oriented Programの1995年3月-4月号を読む必要がある。