90対90の法則 | 阿波の梟のブログ

阿波の梟のブログ

ブログの説明を入力します。

90対90の法則(英語: ninety-ninety rule)は、コンピュータプログラミングとソフトウェア工学において、プロジェクトの進捗と時間の使い方に関する皮肉めいた言葉です。この法則は、ソフトウェア開発プロジェクトが予定よりも遅れがちであることを指摘しています。以下がその内容です:

"The first 90 percent of the code accounts for the first 90 percent of the development time. The remaining 10 percent of the code accounts for the other 90 percent of the development time."

これを日本語に訳すと、「コードの最初の90%が開発時間の最初の90%を占めている。残りの10%のコードが、他の90%の開発時間を占めている」となります。

この法則が言いたいことは、ソフトウェア開発プロジェクトにおいて、最初の段階では進捗が順調に見えるものの、最後の10%の作業が非常に時間を要するというものです。これは、ソフトウェアの開発過程で初期の部分は比較的簡単で計画通りに進むが、最後の10%になると想定外の複雑さや問題が浮かび上がり、予定よりもはるかに時間がかかるという経験則を表しています。

この法則は、ユーモアを交えているものの、ソフトウェア開発プロジェクトの進捗管理や時間の見積もりにおいて現れる一般的な課題を指摘しています。ソフトウェアの複雑さや変更の影響を適切に予測し、リアルな見積もりを行うことが、プロジェクトの成功に重要であるとされています。

この法則は、ベル研究所のトム・カーギル(Tom Cargill)が提唱し、ジョン・ベントレー(John Bentley)が1985年にACMの学会誌"Communications of the ACM"のコラム"Programming Pearls"で"Rule of Credibility"として紹介したことで知られるようになりました。

The 90-90 rule, also known as the ninety-ninety rule, is a humorous statement in the field of computer programming and software engineering. It humorously expresses the common challenges in software development projects, emphasizing the tendency for projects to significantly overrun their schedules. This rule is often attributed to Tom Cargill of Bell Labs and was popularized by John Bentley in his column "Programming Pearls" in the September 1985 issue of the ACM's "Communications of the ACM."

The rule is phrased as follows:

"The first 90 percent of the code accounts for the first 90 percent of the development time. The remaining 10 percent of the code accounts for the other 90 percent of the development time."

In other words, it highlights the observation that the initial phases of coding may seem to progress smoothly, taking up 90% of the development time, but the final 10% of the code can unexpectedly consume the remaining 90% of the time. The rule serves as a satirical comment on the challenges of software development, pointing out the tendency to underestimate the complexity and unpredictability of the later stages of a project.

Several variations and adaptations of the rule have been proposed, sometimes with intentional exaggeration for comedic effect. Despite its humorous tone, the 90-90 rule underscores the importance of careful project management, realistic time estimation, and anticipating unforeseen challenges in software development.