SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

パーソナルソフトウェアプロセス(PSP)入門

パーソナルソフトウェアプロセス(PSP)実践講座
~第2日 プログラムの規模を正確に測る

パーソナルソフトウェアプロセス(PSP)入門 (2)


規模を「正確に」測るには ― LOC

 さて、測るべき3つめの指標「規模」。これは目に見える、ように思えます。どのように測れば「正確に」測ることになるのでしょう。

 規模の測り方には諸説ありますが、規模の尺度(単位)を決めるうえで大切なのは、それが開発労力(例えば時間)と強い相関関係にあるかどうか、です。この点において、数多くの開発者の実例を分析した上で、PSPでは、LOC(Lines Of Code)を規模の尺度として用いることにしています。機械で自動計測できること、同じ定義を用いれば、誰が測っても同じ結果になること、が理由です(詳細は参考文献47-54ページ)。

 同じ定義を用いれば? ……ピンと来ないという方もご安心ください。今回はこの「定義」、あるいは基準、標準と言われるものについて、演習を交えて分かりやすく説明していきます。

 この演習を難なくクリアした暁には、各自で規模を計測する基準を決めていただき、それを守って計測することで、「正確に規模を計測しています」と言えるようにします(第3日)。それをもって、次のプログラミング課題に進みましょう(第4日)。

演習: 「LOCをどう測ったらいいでしょう」について考えます

 LOC、日本語で一番近い言葉は「行」ですね。さて、それでは突然ですが下の例題を解いてみましょう。

例題1: 何行ですか?
私は今朝焼肉を食べました。朝から焼肉を食べることは体に悪いかもしれません。

 1行のように見えますね。さて、次はどうでしょうか?

例題2: 何行ですか?
私は今朝焼肉を食べました。
朝から焼肉を食べることは体に悪いかもしれません。

 あら、2行に増えましたね。さらに続けます。次の例ではどうでしょうか?

例題3: 何行ですか?
私は

今朝

焼肉を食べました。

朝から焼肉を食べることは

体に悪い

かもしれません。

 6行……? いや…11行?

 何かおかしいと思いませんか? 中身が全く同じなのに行数でカウントすると、こういうことがおきますね。しかも今回の例題の答えは、1行でも、3行でも、6行でも、11行でも、間違いではないのです。なぜなら、何をもって1行とするのか、という「定義」がないからです。しかし同じ文章の計測結果がこうも変動されると、見積もり規模が怪しくなってしまいます。これでは困りますね。ですから、これを解消すべく、各自に計測の定義が必要なのです。

次のページ
物理行と論理行

この記事は参考になりましたか?

パーソナルソフトウェアプロセス(PSP)入門連載記事一覧
この記事の著者

南川 しのぶ(ミナミカワ シノブ)

IT技術、IT経営のコンサルタント。主にシステム開発コンサルティング活動の他、外部セミナー、顧客先企業の内部セミナーの講師も務める。カーネギーメロン大学のソフトウェア工学研究所(Software Engineering Institute)認定PSPソフトウェア開発者(SEI-Certified P...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/4163 2009/11/26 10:22

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー