機能を測定してソフトウェアのサイズを見積もる: その方法
この記事では、ソフトウェア プロジェクトの機能を測定することで、ソフトウェア プロジェクトのサイズを見積もる方法について説明します。
ソフトウェアのサイズの見積もりは、ソフトウェア開発において必要かつ重要なタスクです。製品の開発に必要なリソースを決定し、最終コストを予測するために使用できます。
コーディング前にソフトウェアのサイズを見積もることはできますか?
はい、ただし、ソフトウェアのサイズはいくつかの要因によって左右されることに注意することが重要です。ソフトウェアのコード行数 (LOC) から始めるとよいでしょう。推定に役立つその他の要素には、機能、バグ、さらにはユーザーの数などがあります。
LOC は一般的に使用されますが、非機能要素、重複行、および一部の未使用関数は考慮されていません。さらに、プログラミング言語が異なれば、コード単位あたりの行数も異なります。したがって、これは不正確な推定手法になります。
ソフトウェアのサイズを機能ごとに測定するにはどうすればよいですか?
概要
これは、ソフトウェアのサイズを測定する最も一般的な方法です。この手法を使用して、ユーザーに提供する必要がある機能を測定します。言い換えれば、実装された機能の数を数えることになります。
機能はソフトウェアの複雑さを測るため、サイズを測るのに適した指標となります。
1. すべての機能と特徴を確認する
- ソフトウェアのすべての機能のリストを作成します。 Microsoft Excel などのツールを使用できます。
- 次に、その機能の説明と、重要だと思われるその他の属性を含めます。この情報は、論理コンポーネントにグループ化するときに役立ちます。
- どの機能/機能が他に依存しているかを判断します。依存関係のないコンポーネントはスタンドアロンとみなされ、そのサイズは LOC 数と等しくなります。 LOC は手動でカウントすることも、LOC カウンター ツールを使用することもできます。
- 関数/機能に依存関係がある場合は、それに依存するすべての LOC を合計してサイズを増やします。
2. 各機能をグループに割り当てる
- 同様の関数をグループ化し、1 つ以上のカテゴリに割り当てます。
- 複雑さと難易度に基づいて、これらのグループ内の機能ごとにポイントを割り当てます。
コンポーネントのサイズは、その複雑さに比例する必要があります。より複雑なロジックを備えたコンポーネントには、単純なロジックを備えたコンポーネントよりも多くの機能があります。たとえば、関数をグループ化する場合、基本関数とコア関数を区別できます。
各ソフトウェアには、基本的かつ中核的な機能と特徴があります。これらは製品を適切に機能させるための重要な成分であり、必需品です。これは、アプリケーションのサイズを経時的に比較する際に、より意味のある指標を作成するのに役立ちます。
3. 各コンポーネントのサイズを計算します。
コンポーネントをグループ化し、どれを計算に含める必要があるかを決定したら、各コンポーネントのコード行数 (LOC) を決定する必要があります。
あるいは、各コンポーネントの LOC を自動的にカウントできるツールを使用してこれを行うこともできます。
ソフトウェアのサイズ見積もりで機能メトリックを使用することの長所と短所は何ですか?
従来のソフトウェア サイズ測定方法では、コードの行数のみがカウントされており、ソフトウェアに実際に機能がいくつあるかはわかりません。ソフトウェアのサイズを機能別に測定することは、特に大規模なエンタープライズ レベルのソフトウェアについて話す場合には、より合理的です。
これにより、ユーザーが利用できるものをより正確に把握できるようになり、製品所有者が競争環境を簡単に評価できるようになります。
この方法には欠点もありますが、他のサイズ測定手法と比較するとはるかに優れています。結局のところ、エンド ユーザーは、適切と判断し、コードで許可されていれば、いつでもソフトウェア サイズを削減できます。
おわかりかと思いますが、私たちの考えは関数型の手法を支持しています。ただし、すべての人に適しているわけではないことを認めなければなりません。そのため、皆様のご意見をお待ちしております。もっと良い結果をもたらすと思われるソフトウェア指標の推定はありますか?以下にお知らせください。
コメントを残す