ステップ数
ステップ数(LOC)とは|プログラム規模を測るIT用語
ステップ数とは、プログラムの規模をあらわす数値のことを指します。システム開発プロジェクトの進捗管理・品質管理・工数見積もりにおける重要な指標です。
LOCとELOCの違い
ステップ数の数え方にはいくつか種類があります。最も一般的なのは、ソースコードの行数(LOC: Line Of Code)をそのままステップ数とみなす方法です。
ただし、LOCをそのまま使うと、コメント行や空行まで数に含まれてしまいます。そのため、意味のないコメント行・空行を除いて集計した有効行数(ELOC: Effective Line Of Code)を使う場合もあります。
| 種類 | 内容 | 特徴 |
|---|---|---|
| LOC | コード全行数(コメント・空行含む) | 計測が簡単。コメントが多いと水増しされる |
| ELOC | コメント・空行を除いた実効行数 | より正確な規模感。ツールで自動計測が一般的 |
ステップ数は工数見積もりの「ものさし」になる
システム開発の現場では、ステップ数を工数見積もりの根拠として使うことがあります。
たとえば、過去のプロジェクトで「Javaで1,000行書くのに1人で1日かかった」という実績があったとします。この場合、同様の条件で10万行のシステムを開発するなら:
100,000行 ÷ 1,000行(1人日あたりの生産性) = 100人日
このように、ステップ数は開発の「ものさし」として機能します。ただし、言語・フレームワーク・開発者のスキルによって生産性は大きく異なるため、あくまで過去の実績を基に柔軟に使うことが重要です。
ステップ数の限界と代替指標
ステップ数(LOC)には以下のような限界があります。
- プログラミング言語によって生産性が大きく異なる(Pythonの1行はCの10行に相当することもある)
- コードの複雑さ・品質が反映されない(短くても難しいロジックはある)
- 設計書作成・テスト・レビュー工数は測定できない
- コピー&ペーストで行数を水増しできてしまう
こうした限界から、現代のソフトウェア開発では以下の代替指標も併用されています。
| 指標 | 概要 |
|---|---|
| ファンクションポイント法(FP法) | 機能の数・複雑さに基づいて規模を測る。言語に依存しない |
| ストーリーポイント | アジャイル開発で使う相対見積もり。チームの速度(ベロシティ)と組み合わせて使う |
| サイクロマティック複雑度 | コードの分岐数からロジックの複雑さを数値化する。品質管理に有効 |
ステップ数を自動計測するツール
2026年現在、ステップ数の計測はツールで自動化されています。CI/CDパイプライン(GitHub ActionsやGitLab CI/CD)に組み込んで継続的に監視するのが一般的です。
- cloc(Count Lines of Code): 無料のCLIツール。多言語対応
- SonarQube: コード品質の総合ダッシュボード。ステップ数・複雑度・技術負債を一括管理
- Code Climate: GitHub連携でPRごとにコード品質を自動レポート
- Coverity: 大規模プロジェクト向けの静的解析ツール
ステップ数とSEの単価・評価の関係
かつて「1日あたりのステップ数が多いSEほど優秀」と評価される時代がありました。しかし現代では、コードの量よりも品質・保守性・テストカバレッジが重視されます。
筆者のSE歴19年の経験から言うと、ステップ数が少なくても読みやすく保守しやすいコードを書けるSEの方が、プロジェクト全体への貢献度は高いことが多いです。
また、SE単価の高いシニアエンジニアほど、ステップ数よりもアーキテクチャ設計・レビュー・コードの削減(不要なコードを減らすリファクタリング)に時間を使う傾向があります。
■関連記事
工数とは 〜 システムの規模を見積もる単位のお話
FP法(ファンクションポイント法)
システムエンジニアの単価相場
ITエンジニアのキャリアアップを検討しているなら
ステップ数 関連ページ
- ER図
- DFD
- EVM
- FP法
- JUnit
- NAS
- PERT図
- PMBOK
- RFP
- SEO
- SIer
- SOW
- WBS
- 委任契約
- インスペクション
- ウォークスルー
- ウォーターフォールモデル
- 受け入れテスト
- 請負契約
- 運用テスト
- エビデンス
- オフショア開発
- 開発環境
- 外部設計
- カットオーバー
- 下流工程
- 結合テスト
- 検収
- システムインテグレータ
- システムテスト
- 上流工程
- ステアリングコミッティ
- ストレステスト
- スパゲッティコード
- 単体テスト
- チューニング
- デグレード
- デスマーチ
- デプロイ
- 内部設計
- 人日
- バッチ
- ブラックボックステスト
- プロトタイプ
- ホスト
- ホワイトボックステスト
- マイルストーン
- ミドルウェア
- メンテナンス
- 要件定義
- リグレッションテスト
- レビュー
PR



