【先着1,000名様!】1,000円分をプレゼント!

ソフトウエアの開発業務に携わっている人なら、常識なのかもしれませんが、「開発ステップ数」の意味するところが分かりません。

おそらく、このステップ数に比例して、開発する労力がかかり、開発費も高くなるのだと想像しますが。

だれか教えていただけないでしょうか?

このQ&Aに関連する最新のQ&A

A 回答 (7件)

大昔、コンピュータのプログラムをパンチカードに打っていた時代がありました。



パンチカードは、電車のキップ(自動改札のほうね)と同じくらいの厚さで、サイズはハガキよりちょっと小さ目、1行分を1枚にカードパンチャでコード化された穴をあけるのです。
1000行のプログラムなら1000枚、1万行なら1万枚を、コンピュータ様がおられる空調の効いたお部屋の前に持って行き、お供えするのです。しばらくすると、コンピュータ様のお告げ(答えの計算結果)が、横のラインプリンタから、うちだされてきたものです。

カード1枚を1ステップと数えていました。
1ステップということは、カード購入費、カードパンチャや、読み取り機の設備減価償却・リース費、コンピュータCPUの使用料金など、お金に密接に関係していました。
そのように、1枚1枚が貴重なので、きれいな飾りのコメントを入れたり、レイアウトを良くするために空行をいれるような贅沢者には、バチが当たったものです。

これが、「ステップ数とプログラム規模が比例する」ということの起こりだと思います。

ご明察どおり、
>このステップ数に比例して、開発する労力がかかり、開発費も高くなる
わけですが、
それもつい20年くらい前までで、最近では、ハードウェアの低価格化、高速化、大容量化により
高級な命令を持つ言語(すごい計算を1行でやってくれるような言語:C++など)が、流通していますので、
ステップ数と仕事の規模は、なんともいえない関係になっています。
ステップ数は、私のようなロートルオヤジの昔の自慢話にもならないくらい意味を無くしてきました。

ただし、「10万ステップのプログラムと、1000ステップのプログラムでは、多いほうが規模が大きく開発費も高い」ですが、
「2万と3万では、なんとも言えない」、てな感じです。

また、企業の紹介などで、過去のプロジェクトを紹介するときなどには、やむなく使われている場合があります。
なぜなら、開発プログラムの規模をうまくあらわす表現方法が、他にないからです。
「とっても大きなプログラム」とか「ちょっとしたプログラム」っていっても、わかりませんから・・・・
    • good
    • 1
この回答へのお礼

長い回答ありがとうございました。歴史を知れて、参考になりました。
昔のパンチカード時代には、ちゃんとステップ数にも厳密な意味があったようですね。

お礼日時:2002/03/05 14:37

既に多数の方が言われている通り、ステップ数で開発規模を表します。

完全では有りませんが、ある条件下では開発規模比較の目安になります。

> ステップ数に比例して、開発する労力がかかり、開発費も高くなるのだと想像しますが。
巨大なシステムでは比例しないと言われています。開発規模が大きくなると従事する人数が増え、コミュニケーションを取るために多大の労力がかかるからです。

ステップ数を使わないで、開発労力を見積もる方法として、ファンクション・ポイント法、cocomo法などもあります。
    • good
    • 0
この回答へのお礼

回答、ありがとうございます。
ステップ数以外でもいくつか開発労力を見積もる方法は、あるのですね。

でも、どの方法も、結局、「目安」以上にはならないような気がする。
感覚的な意見ですが。

お礼日時:2002/03/05 14:39

基本的にはソースコードの行数になると思います。


数え方はケースバイケースですね。

ただ、プログラムの労力は行数のみでは測れません。
わかっていない人も多いですが(^^;;
行数を増やすのは簡単です(笑)
まあ無闇に行数増やすとデバッグもメンテナンスも大変になるのと、質が悪いととられるのが嫌でやりませんが、
行数で料金への影響が大きいと増やしたくなります(笑)


うちではドキュメント等は別にカウントするので、
開発ステップ数という意味では0ですね。
    • good
    • 0
この回答へのお礼

回答、ありがとうございました。
たしかに、行数が同じでも、C言語のように、行の意味が
あまりない言語だと、いかようにでも行数は変えられますよね。
開発ステップ数というのは、単なる目安なんですね。ソフトウエアの規模を示すための。
あんまり、厳密な数字を考えても意味がなさそうですね。

お礼日時:2002/03/05 14:35

やっぱりソースコードの行数が基本です。


が、
納入するものにマニュアル・設計書が必要な場合は
その納入物のページ数を追加する場合があります。
(これはうちの会社特有なのかな?)

マニュアル作成のみの仕事が発生した場合に
開発ステップ数 0件
では可哀相(?)というところから来ているのかもしれません。
    • good
    • 0
この回答へのお礼

回答、ありがとうございました。
さらに、マニュアル・設計書を考慮しないといけないときもあるのですね。
開発ステップ数って、適当なものに思えてきました。

お礼日時:2002/03/05 14:33

プログラムの行数だったと思います。

といっても現実にはプログラム上ではコメント等も入ってますよね。100行のプログラム中50行がコメントだったら実行ステップは50行というようなことです。また実行ステップのカウントはコメント以外にも例えば
 if *** then ***

 if *** then
 ***
は同じ1行としてカウントされます。
    • good
    • 0
この回答へのお礼

回答、ありがとうございます。
行数にコメントはいれないのですか。
数えるのが大変そうですね。

お礼日時:2002/03/05 14:31

> 「開発ステップ数」の意味するところ



私のところでは、単に、そのプロジェクトで作成したプログラムのソースコードの行数を意味しています。

行数をカウントする際に、コメントや空行を含んだものと、それらを含まないものを両方算出して、注釈含有率のような指標も出しています。
開発コストや生産性を考える時には、後者(コメントや空行を含まない行数)を使っています。
    • good
    • 1
この回答へのお礼

ご回答、ありがとうございます。
なるほど、単に行数を意味するのですね。
勉強になりました。

お礼日時:2002/03/05 14:28

atarimeさんが、どういう立場にいて「開発ステップ数」が知りたいかで説明が変わってきます。



「開発ステップ数」は、言葉の通りプログラムを開発するステップ数です。
作成したプログラムの行数と言った方がわかりやすいでしょうか。

この数によって、開発の規模がわかってきます。
ただ、同じステップ数だとしても、開発に使う言語や仕事の内容により基準として使う目安は大きく変わってきます。

例えば、今までないシステムを一から作る場合と開発方法が確立している物では同じステップ数でも必要な期間や作業量は大きく変わってきます。

もう少し、どうゆう事がわからなくて何が知りたいか明確にしていただければ回答する方も回答しやすいと思います。
    • good
    • 0
この回答へのお礼

回答、ありがとうございました。
就職活動していまして、「あなたが開発したソフトウエアのステップ数」を聞かれたのですが、私は学生で「ステップ数」なるものの意味が分からなかったので、質問させていただきました。(学生時に研究でソフトウエアを開発した。)

とりあえず、「不明」と答えておきました。

お礼日時:2002/03/05 14:27

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qステップ数について

私の知人が会社面接にて「ソフトウェア関係の仕事がしたいです」と
言ったところ,会社側の人に「ステップ数はどれぐらいのプログラムを
書いたことがあるのか」とたずねられ,回答に困ってしまったそうです.
彼はC言語しかやったことがないそうで,ステップ数と聞けば繰り返し
何回ループさせたか,ということがステップ数だと思っていたそうなん
ですが(っというか私もそうなんですが...),会社の人の言ってる
ステップ数とはどうやら違う感じがしたらしく,「ステップ数とはなん
ですか」と聞いたところ,それで話しは終わってしまったそうです.
後から調べてみたところ,fortran ではステップ数という言葉が出て来る
ようなのですが,C言語ではあまりステップ数ということばを使わない
ので,会社の人の発言の意味が良く分かりません.
誰かご存知の方がいましたら,教えて頂けないでしょうか.

Aベストアンサー

こんちゃっsohですっ。

ソフトウェア関係の会社面接で「ステップ数」を聞かれた場合
「ソースコードの行数」
の意味になるんですが、これ、コメントは含まないんですよね。
実コード部のみのステップを測るソフトとかどっかにあるんですけどいまどきこんなん計測するやついねーよって
わしもい~っつも思いますわ。

C言語だから使わないとじゃなく、いまどき使わないが一番正確ですかね(失笑
でもちょっと古めの会社とか営業の人はステップで計るくらいしか思いつかないみたいなんですよねぇ
むかぁしは1000ステップでいくらって歩合制も敷いてた事もあったんですよ
だから
while() {
}
ってかかずに
while()
{
}
ってかいてみたりとか。
関数も
int hoe(int a,int b,int c)
じゃなくて

int hoe(
int a,
int b,
int c)

とか
ばっかばかしいよね。

Qプログラムの規模を表す単位「k」とはどういう意味ですか?

よくプログラムの規模をあらわす数値の単位として「k(ケイ)」が使われるみたいですが、どういう意味なのでしょうか。

k=1000なので、例えば100kだとするとソースが10万行あるシステムということでしょうか??

よろしくお願いいたします。

Aベストアンサー

KSならば、キロステップ
KLならば、キロライン
KBならば、キロバイト
Kだけでは判断が付かないですね。

キロステップとキロラインは、1行1命令であれば同じになります。
a=b;c=d;e=f;
などと書かれているソースがあれば、1ラインですが3ステップになるので、差が生まれます。

Qステップ数の見積もり方法を教えて下さい。

受注生産のソフトウェア開発の仕事をしています。
だいたいが基本設計を受け取って、それ以降(詳細設計、製造、試験、納入)
をするのが業務です。

そろそろ見積もりの勉強をする必要がでてきたので
とりあえずは基本設計からステップ数を見積もる良い方法が知りたいです。

どなたかよい方法あったら紹介してくれませんか?

Aベストアンサー

No.2のymmasayanです。

>ただ、会社内も旧来の見積もり手法を取っているので上司に
>「ステップ数見積もって教えて」と言われる状況なんです。
>ここで不用意に言ってしまったステップ数に全ての責任をかけられることになっ>てしまうので何か良い算出方法ないかな~っと思っていたワケなんです。

それがないんですね。ただ、FP法はステップと言う言葉は使いませんが、ステップと言うものを基本にしています。(と考えてもいいです)
一度勉強して見て、自分達流にモディファイして使えばいいでしょう。

Qライン数とステップ数の違いについて

よく”このソフトウェアは○○ラインだ”とか”○○ステップだ”とかいいますが両者に違いはあるのでしょうか?あるとすればどういった違いがあるのでしょうか?よろしくお願いします。

Aベストアンサー

プログラムの規模(大きさ)の事でしょうか?
だとするとラインは単純にソースコードの行数、
ステップはコメントや空行を除き、改行の数ではなく実行命令の数を数えたものになると思います。

プログラムの例
/* てきとうプログラム(言語不詳) */
a = b + c ;print a;

exit 0;
↑ラインで数えれば4ライン、ステップ数でいえば3ステップのプログラムとなります。

Qステップ数??

ステップ数って何ですか?就職活動の面接の時にプログラミング能力をステップ数で聞かれることがよくありますが、そんな言葉知りません。誰かC言語でのステップ数について教えてください。

Aベストアンサー

ソースコードの行数のことですが、ANo.2の方のおっしゃるとおり、会社によって数え方が変わります。(コメント文を数えるか、宣言文を数えるかなど)
コメント文を含まない場合は、論理コード行数と言ったりします。

ソフトウェア工学の本では LOC (Line Of Code)と表記しているものもあります。一般的には千行単位で KLOC がよく使われているものと思います。

ちなみに、私が以前一人で30KLOC程度のプログラムを書いて(一応それなりには動いたのですが)保守し切れなくなり、一人では10KLOCが管理限界かなと感じました。

QMAX値を条件にデータを取得するには?

SQL文で困っています。
ご教授下さい。


下記のようなデータがあった場合、それぞれの区分毎に
年月が最大(最新)のデータを取得したいです。
(実際には1レコードにその他項目があり、それらも取得します。)
<検索対象データ>
区分 年月   金額
-----------------------------
A   200412  600
A   200503  560
B   200311  600
B   200508  1000
B   200504  560
C   200508  400
C   200301  1100


<取得したいデータ>

区分 年月   金額
-----------------------------
A   200503  560
B   200508  1000
C   200508  400

よろしくお願いします。

Aベストアンサー

テーブル名をXXXとすると次のようなSQLでよいと思います。(最善の方法かどうかは自信がないですが)

select B.* from (select 区分, max(年月) as 年月 from XXX group by 区分) As A
inner join XXX as B on A.区分 = B.区分 and A.年月 = B.年月
order by B.区分

Q目処(めど)と目途(もくと)

目処と目途の使い分けについて教えてください。
送り仮名に違いがありますか。
PC辞書で「めど」の変換を探すと目途が入っているのもありますね。
これは明らかに誤用ですよね。

Aベストアンサー

めどはやまと言葉ではないでしょうか。もしそうなら漢字は当て字であり、どちらが正しいというものでもなく、世間で一般的にどう使い分けされているかということに過ぎないと思います。

広辞苑ではめど(目処)もくと(目途)と分けて記載されているだけで説明がなく
不親切です。朝日新聞社の漢字用語辞典では、めど(目処、目途)とあり、私のPCでも、めどで両方が転換できます。

解決のめどがつくとか、目標達成のめどが立ったなどと使われるので、
ものごとがその完成、実現にちかずいたということを意味し、目標とは若干ニュアンスが異なると思います。目標は高くとは言いますが、目途(目処)は高くとはいいませんね(この部分は蛇足です)

Q「いずれか」と「いづれか」どっちが正しい!?

教えて下さいっ!
”どちらか”と言う意味の「いずれか」のかな表記として
「いずれか」と「いづれか」のどちらが正しいのでしょう???

私は「いずれか」だと思うんですが、辞書に「いずれか・いづ--。」と書いてあり、???になってしまいました。
どちらでもいいってことでしょうか?

Aベストアンサー

「いずれか」が正しいです.
「いづれ」は「いずれ」の歴史的かな遣いですので,昔は「いづれ」が使われていましたが,現代では「いずれ」で統一することになっていますので,「いずれ」が正しいです.

QEXCELファイルのカレントフォルダを取得するには?

EXCELファイルのカレントフォルダを取得するには?

C:\経理\予算.xls

D:\2005年度\予算.xls

EXCEL97ファイルがあります。

VBAで
  カレントフォルダ名
(C:\経理\,D:\2005年度\)
を取得する事は可能でしょうか?

CURDIRでは上手い方法が見つかりませんでした。

Aベストアンサー

こんばんは。
Excel97 でも、同じですね。以下で試してみてください。

Sub test()
'このブックのパス
a = ThisWorkbook.Path
'アクティブブックのパス
b = ActiveWorkbook.Path
'Excelで設定されたデフォルトパス
c = Application.DefaultFilePath
'カレントディレクトリ
d = CurDir
MsgBox "このブックのパス   : " & a & Chr(13) & _
   "アクティブブックのパス: " & b & Chr(13) & _
   "デフォルトパス    : " & c & Chr(13) & _
   "カレントディレクトリ : " & d & Chr(13)
End Sub

Q3つの表の外部結合

表A、B、Cの3つがあり、Aのすべての行を出力したいと考えています。
外部結合を用いるのだとは思うのですが、3つの表に対して行う場合の
書き方がわからず困っています。
ご教授いただけないでしょうか?
select * from a,b,c
where a.商品ID =b.商品ID (+) and b.商品ID (+) =c.商品ID (+)
としてみましたが、うまくいきませんでした。

Aベストアンサー

ansi構文の趣旨からいえば、結合条件と絞り込み条件は分けて書くので・・

select *
from a
left join b on (a.商品ID =b.商品ID)
left join c on (b.商品ID =c.商品ID)
where a.年月 = 任意の値

と書くのが一般的でしょうね。


人気Q&Aランキング