ソフトウェア開発プロセスを文書化しています。技術者にとって、これは非常に簡単です。内部のマイルストーンは 4 週間ごと、外部のマイルストーンは 3 か月ごとの反復開発です。
ただし、この演習の目的は、プロジェクト管理者が理解できる用語で物事を明らかにすることです。具体的には、これらの非技術系マネージャーは、理解できる指標を必要としています。
私はメトリクスのオプションをよく理解しており、一連のセット全体を提案しています (要件が満たされ、実際のコストと予算コストが私のお気に入りの 2 つです)。ただし、私たちには何人かのベテランが関与しており、彼らは SLOC のようなメトリックに固執する傾向があります。
SLOC の魅力は理解できます。ソフトウェアに詳しくない人でも簡単に理解でき、物理的なものに最も近いアナログのように思えます (昔のパンチ カードを数えるようなものです!)。
ここで質問があります。SLOC の危険性を技術者ではない人にどのように説明すればよいでしょうか?
具体的な動機は次のとおりです。私たちは、何年にもわたる歴史を持つ、かなり成熟したデプロイ済みシステムに取り組んでいます。機能を追加すると、SLOC はほぼ横ばいになるか、減少する傾向があります (リファクタリングにより古いコードやデッド コードが削除され、新しい機能は実際には既存の機能の調整にすぎません)。プログラマー以外のマネージャーにとって、開発プロジェクトで増加しない SLOC は、せいぜい当惑するだけです....
以下の最近の回答に応じて明確にします: プロジェクトの進捗状況を測定する目的では、SLOC は不適切な指標であると主張していることを思い出してください。収集する価値のない数字だと主張しているわけではありません。有用なことを行うには広範なコンテキストが必要ですが、ほとんどのプログラム マネージャーはそのコンテキストを持っていません。