- ベストアンサー
「開発ステップ数」とは?
ソフトウエアの開発業務に携わっている人なら、常識なのかもしれませんが、「開発ステップ数」の意味するところが分かりません。 おそらく、このステップ数に比例して、開発する労力がかかり、開発費も高くなるのだと想像しますが。 だれか教えていただけないでしょうか?
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
大昔、コンピュータのプログラムをパンチカードに打っていた時代がありました。 パンチカードは、電車のキップ(自動改札のほうね)と同じくらいの厚さで、サイズはハガキよりちょっと小さ目、1行分を1枚にカードパンチャでコード化された穴をあけるのです。 1000行のプログラムなら1000枚、1万行なら1万枚を、コンピュータ様がおられる空調の効いたお部屋の前に持って行き、お供えするのです。しばらくすると、コンピュータ様のお告げ(答えの計算結果)が、横のラインプリンタから、うちだされてきたものです。 カード1枚を1ステップと数えていました。 1ステップということは、カード購入費、カードパンチャや、読み取り機の設備減価償却・リース費、コンピュータCPUの使用料金など、お金に密接に関係していました。 そのように、1枚1枚が貴重なので、きれいな飾りのコメントを入れたり、レイアウトを良くするために空行をいれるような贅沢者には、バチが当たったものです。 これが、「ステップ数とプログラム規模が比例する」ということの起こりだと思います。 ご明察どおり、 >このステップ数に比例して、開発する労力がかかり、開発費も高くなる わけですが、 それもつい20年くらい前までで、最近では、ハードウェアの低価格化、高速化、大容量化により 高級な命令を持つ言語(すごい計算を1行でやってくれるような言語:C++など)が、流通していますので、 ステップ数と仕事の規模は、なんともいえない関係になっています。 ステップ数は、私のようなロートルオヤジの昔の自慢話にもならないくらい意味を無くしてきました。 ただし、「10万ステップのプログラムと、1000ステップのプログラムでは、多いほうが規模が大きく開発費も高い」ですが、 「2万と3万では、なんとも言えない」、てな感じです。 また、企業の紹介などで、過去のプロジェクトを紹介するときなどには、やむなく使われている場合があります。 なぜなら、開発プログラムの規模をうまくあらわす表現方法が、他にないからです。 「とっても大きなプログラム」とか「ちょっとしたプログラム」っていっても、わかりませんから・・・・
その他の回答 (6)
- ymmasayan
- ベストアンサー率30% (2593/8599)
既に多数の方が言われている通り、ステップ数で開発規模を表します。完全では有りませんが、ある条件下では開発規模比較の目安になります。 > ステップ数に比例して、開発する労力がかかり、開発費も高くなるのだと想像しますが。 巨大なシステムでは比例しないと言われています。開発規模が大きくなると従事する人数が増え、コミュニケーションを取るために多大の労力がかかるからです。 ステップ数を使わないで、開発労力を見積もる方法として、ファンクション・ポイント法、cocomo法などもあります。
お礼
回答、ありがとうございます。 ステップ数以外でもいくつか開発労力を見積もる方法は、あるのですね。 でも、どの方法も、結局、「目安」以上にはならないような気がする。 感覚的な意見ですが。
- terra5
- ベストアンサー率34% (574/1662)
基本的にはソースコードの行数になると思います。 数え方はケースバイケースですね。 ただ、プログラムの労力は行数のみでは測れません。 わかっていない人も多いですが(^^;; 行数を増やすのは簡単です(笑) まあ無闇に行数増やすとデバッグもメンテナンスも大変になるのと、質が悪いととられるのが嫌でやりませんが、 行数で料金への影響が大きいと増やしたくなります(笑) うちではドキュメント等は別にカウントするので、 開発ステップ数という意味では0ですね。
お礼
回答、ありがとうございました。 たしかに、行数が同じでも、C言語のように、行の意味が あまりない言語だと、いかようにでも行数は変えられますよね。 開発ステップ数というのは、単なる目安なんですね。ソフトウエアの規模を示すための。 あんまり、厳密な数字を考えても意味がなさそうですね。
やっぱりソースコードの行数が基本です。 が、 納入するものにマニュアル・設計書が必要な場合は その納入物のページ数を追加する場合があります。 (これはうちの会社特有なのかな?) マニュアル作成のみの仕事が発生した場合に 開発ステップ数 0件 では可哀相(?)というところから来ているのかもしれません。
お礼
回答、ありがとうございました。 さらに、マニュアル・設計書を考慮しないといけないときもあるのですね。 開発ステップ数って、適当なものに思えてきました。
- masaoz_2000
- ベストアンサー率36% (12/33)
プログラムの行数だったと思います。といっても現実にはプログラム上ではコメント等も入ってますよね。100行のプログラム中50行がコメントだったら実行ステップは50行というようなことです。また実行ステップのカウントはコメント以外にも例えば if *** then *** と if *** then *** は同じ1行としてカウントされます。
お礼
回答、ありがとうございます。 行数にコメントはいれないのですか。 数えるのが大変そうですね。
- ysk6406
- ベストアンサー率40% (237/589)
> 「開発ステップ数」の意味するところ 私のところでは、単に、そのプロジェクトで作成したプログラムのソースコードの行数を意味しています。 行数をカウントする際に、コメントや空行を含んだものと、それらを含まないものを両方算出して、注釈含有率のような指標も出しています。 開発コストや生産性を考える時には、後者(コメントや空行を含まない行数)を使っています。
お礼
ご回答、ありがとうございます。 なるほど、単に行数を意味するのですね。 勉強になりました。
- gould09
- ベストアンサー率33% (196/589)
atarimeさんが、どういう立場にいて「開発ステップ数」が知りたいかで説明が変わってきます。 「開発ステップ数」は、言葉の通りプログラムを開発するステップ数です。 作成したプログラムの行数と言った方がわかりやすいでしょうか。 この数によって、開発の規模がわかってきます。 ただ、同じステップ数だとしても、開発に使う言語や仕事の内容により基準として使う目安は大きく変わってきます。 例えば、今までないシステムを一から作る場合と開発方法が確立している物では同じステップ数でも必要な期間や作業量は大きく変わってきます。 もう少し、どうゆう事がわからなくて何が知りたいか明確にしていただければ回答する方も回答しやすいと思います。
お礼
回答、ありがとうございました。 就職活動していまして、「あなたが開発したソフトウエアのステップ数」を聞かれたのですが、私は学生で「ステップ数」なるものの意味が分からなかったので、質問させていただきました。(学生時に研究でソフトウエアを開発した。) とりあえず、「不明」と答えておきました。
お礼
長い回答ありがとうございました。歴史を知れて、参考になりました。 昔のパンチカード時代には、ちゃんとステップ数にも厳密な意味があったようですね。