KISSの原則
KISS の原則 (英: KISS principle) とは、「Keep it simple stupid.」(シンプルで愚鈍にする)、もしくは「Keep it simple, stupid.」(シンプルにしておけ!この間抜け)、もしくは「Keep it short and simple.」(簡潔に単純にしておけ)という内容の、1960年代の米国海軍において言われた、経験的な原理・原則[1]の略語。その意味するところは、設計の単純性(簡潔性)は成功への鍵だということと、不必要な複雑性は避けるべきだ、ということである。
由来
編集この言葉は、ロッキードスカンクワークスの技術者のケリー・ジョンソン(1910-1990)によって造られた。
この言葉は、一般には
Keep it simple, stupid.(シンプルにしておけ!この間抜け)
と解釈されるが、ジョンソン自身は「simple」と「stupid」の間に句読点のない
Keep it simple stupid.(シンプルで愚鈍にする)
と書いていた。そのため元々この言葉にエンジニアを馬鹿にする意図はなかった。
この原則の実例として次のような逸話がある。ジョンソンが設計チームに一握りの工具を手渡して、平凡な整備兵が戦闘状況で、この工具だけを使って修理ができるようなジェット戦闘機を開発しろと課題を出したのである。
類似の概念
編集この原則の起源と思われる似た概念がいくつかある。例えば、
- オッカムの剃刀
- アルベルト・アインシュタインの「何事もできるだけ単純な方がいい。ただし、単純にしすぎてはならない」
- レオナルド・ダ・ヴィンチの「単純であることは究極の洗練だ」の言葉
- アントワーヌ・ド・サン=テグジュペリの「完璧とは、これ以上加えられないときではなく、これ以上削りとれないときに達成されるようだ」
- コーリン・チャップマン(ロータスの創業者)は、設計者たちに「単純かつ軽量にしろ」と要求した。
などである。
KISSの原則に逆らった例
編集ルーブ・ゴールドバーグ・マシンは、KISSの原則の逆に、度を過ぎた複雑な解決法を取った場合にどのようなことが起こるかを示している。
また、シンプルな設計のソ連製ソユーズロケットは比較的信頼性が高く 1960年代から現在に至るまで使われつづけているのに対し、「(250万個もの部品を使い)人類がこれまでに製造した中で最も複雑な機械」などと言われている米国製スペースシャトルの信頼性が比較的低く、事故を何度も起こし、死者も多数出し、5機中2機を失い、保守費用が巨大化し、2011年に廃止になってしまったことでも示されている。
ソフトウェア開発
編集KISSの原則に反して、仕様が徐々に複雑化していくことは、ソフトウェア開発の世界でよくみられる。これは、「なし崩しの機能追加主義」として知られる[1]。ソフトウェアが複雑になるにつれて、使い方を習得する時間が増えたり、操作に手間取ったり、どれが重要な機能なのか分からなくなったりする。さらには、ハードウェアへの要求スペックが高くなったり製品価格が高くなったりもする。しかし、大多数のユーザーが実際に使用する機能は、そのごく一部であったりする。ユーザへの負担や開発コストを考えると、単純なソフトウェアの方がユーザフレンドリかつ生産性が高い可能性がある。
アニメ業界
編集著名なアニメーターのリチャード・ウィリアムズは、その著書[2]の中で KISS の原則を説明している。また、ディズニー社のナイン・オールドメンも、アニメーターのバイブルとされる本[3]の中でこの原則について書いている。経験の浅いアニメーターはしばしば、動かしすぎをしたり、やりすぎをする。身振りや表情や口の動きを、ことさら強調しすぎたりするのである。ウィリアムズはアニメーターたちに KISS の原則を考えろと言っている。
注釈
編集- http://quotiki.com/quote.aspx?id=7923 – この記事は2008年11月1日以前にFree On-line Dictionary of Computingから取得した項目の資料を元に、GFDL バージョン1.3以降の「RELICENSING」(再ライセンス) 条件に基づいて組み込まれている。
関連項目
編集- YAGNI - 「機能は実際に必要となるまでは追加しないほうがよい」とする、ソフトウェアのエクストリーム・プログラミングに関する原則。
- ミニマリズム