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

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

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

この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金融関係のソフトウエア開発

最近、就職活動のことを考えています。現在大学2年生なので実際に活動を始めるのは、まだ、少し先だとは思っています。

それで、金融関係に興味を持っていて、少しプログラミングもできるので、金融関係のソフトウエア開発がいいんじゃないかと思っています。 しかし、興味をもっているだけで、実際にどういうソフトウエアが必要なのかよく分かりません。

お金を扱うものなので、かなり頑丈(精密)に作ってあるイメージがありますが、どんな感じなのでしょうか? 昔は、言語はコボルを使っていたといいますが、今もそうなのでしょうか?

勘定系システムとかがあるんですよね。そういうのを勉強できる本とかはあるのでしょうか? やっぱり、あるんでしょうね。 そういう勉強は、ソフトウエア会社に入社してからで、間に合うのでしょうか?

Aベストアンサー

遅くなりましたが、ご質問にお答えします。

> こういう仕事って、金融機関の職員がするのでしょうか? それとも、ソフトウエア会社の人なのでしょうか?

基本的な仕様書は金融機関が作りますが、コンピュータ知識を伴いますので、双方が協力して行います。

> 最近は、アウトソーシングがはやっているみたいなので、ソフトウエア会社だとばかり思っていたのですが。 重要な仕様書の部分だけ金融機関で、難しくないコーディングはソフトウエア会社なのでしょうか?

難しくないコーディングというとちょっと語弊がありますが、コーディングは、仕様書に基づき行われます。
仕様書が難しければ、高度なコーディング知識が必要です。
仕様書を作る側も、SEやプログラマーがわかりやすい仕様書を作るには、コンピュータの知識がないと作れません。
いずれにしろ、プログラム作りは金融機関側、ソフト会社側双方にとって、大変な作業には変わりありません。

> 「ホスト技術と端末技術」というのは、どういうものなのでしょうか?

私の言うホスト技術とは、大型コンピュータに巨大なデータベースを構築し、運用する技術、端末技術とは、巨大なデータベースから、クライアントが必要としているデータを素早く提供できる技術と必要な項目を見やすく端末に表示する技術です。

> サーバー・クライアントモデルなどの仕組みの勉強なのでしょうか?
それとも、ある特定のOSや言語の勉強なのでしょうか?

サーバー・クライアントモデルというものがどういうものか、ちょっとわかりませんが、ネットワーク技術とでも言いますか、yohsshiさんの仰るように、ホストだけ、端末だけ、金融知識だけは良く知っているが、相互に結びつける知識の不足している人は大勢います。
これからは、ホストにも、端末にも、知識も豊富な人を必要としているのです。

遅くなりましたが、ご質問にお答えします。

> こういう仕事って、金融機関の職員がするのでしょうか? それとも、ソフトウエア会社の人なのでしょうか?

基本的な仕様書は金融機関が作りますが、コンピュータ知識を伴いますので、双方が協力して行います。

> 最近は、アウトソーシングがはやっているみたいなので、ソフトウエア会社だとばかり思っていたのですが。 重要な仕様書の部分だけ金融機関で、難しくないコーディングはソフトウエア会社なのでしょうか?

難しくないコーディングというとちょ...続きを読む

Qシステム開発を一次開発と二次開発に分割する際の注意

システム開発を一次開発と二次開発に分割して行う際に生じうる問題や注意点を教えて下さい。
また、この問題について記載した文献等ありましたら紹介してください。書籍でもインターネット上の記事でもかまいません。

Aベストアンサー

なかなか回答がつかないようですので、なぶり書きですが思いつくまま。
1)コスト
  一般的には一括開発よりも分割開発の方が開発コストは割高になります。
2)開発環境(資源)
  一次開発を終えて運用に入ると、二次開発の時に必要なハード等の資源を新たに手当が必要とされることがあります。これもコストの一端ですが。
3)システム移行
  二次開発が完了し稼働に入る時のシステム移行が、一括開発システム移行より煩雑になります。十分なシステム移行テストが必要です。

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

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

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

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

Aベストアンサー

No.2のymmasayanです。

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

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

QWebアプリケーション開発とWebシステム開発の違い

工業大学の学生です.
卒論でWebシステムについて調べています.

質問は
Webアプリケーション開発とWebシステム開発の違いについてです.
自分で調べたところ,Webアプリケーション開発とWebシステム開発の説明は同じような事がかいてあります.
Webアプリケーション開発とWebシステム開発は違うものなのか,同じものなのかわかりません.
教えていただきたいです.
よろしくお願いします.

Aベストアンサー

文脈によって同じ意味と場合と違う場合とあると思われます。

Webアプリは、ブラウザからの要求内容に応じ、Webサーバー上のアプリケーションが処理を実行し、その結果をブラウザに返すというもの(Webサーバー上に実装するアプリケーション実行環境はCGIやServletなどが使用される)。あとシステム間連携の方法としてWebサービスやSOAといったものをWebアプリと言う場合もあります。

Webシステムといった場合は、4つくらいの使い方をするのかと思います。1つはWebアプリと同じ意味。2つ目は単なるHTMLのやり取り(アプリ不在の静的コンテンツをブラウザに返す)。3つめは既存システム(ホストシステムなど)をWeb化するといった使い方。これはWebアプリと同じような方法で実装するのですけど。4つめはWebサービス、SOAといったシステム間連携の技法のことをいう場合。

QWebアプリ開発、システム開発のビジネスをしています。見積もり方法や相場を教えてください。

アメリカのニューヨークでWebアプリ開発、社内IT化のシステム開発などを行っております。
まだはじめたところなのですが、このような商品の値段はどうやって決めているのしょうか?
また、なかなか他社が見積もるといくらかなどわからないのですが、相場などはどこで調べればわかるのでしょうか?

Aベストアンサー

>人それぞれ能力がありますので、できる人とそうでない人では
>同じことをやっても全然スピードが違います。
見積りの際には、「できる人がやったら」「そうでない人がやったら」
といった事は考慮していません。
「平均的な人がやったら」で判断します。
#見積り時点では誰が作業を担当するか判らない場合もあるので
でないと、同じ様なレベルの仕事であっても見積り価格が異なる事に
なり、「できる人」が短時間で安くしたのと同じ仕事を「そうでない」
人が高額で時間をかけたうえ、品質は前者の方が上という事になります。

>いろんな会社に見積もりを頼むと会社ごとに大きな見積もり差が
>出てくるのでしょうか?
同様な仕事を一度もやったことが無い、もしくは経験が少ない会社と
多くをこなしている会社とでは異なってくる事はあります。
また、エラー対策をどこまでするかによっても変わってくるので単に
価格のみで選んでいるとゴミ同然のプログラムを掴まされる事になり
かねません。

>4000円/時間の根拠
↑このぐらいの時間単価で働かないと給料+社会保証費等の会社負担
分及び会社経費がまかなえないといったところ。
会社経費の分は会社毎にテナント料その他の事情が異なるのでその分
変わります。

>人それぞれ能力がありますので、できる人とそうでない人では
>同じことをやっても全然スピードが違います。
見積りの際には、「できる人がやったら」「そうでない人がやったら」
といった事は考慮していません。
「平均的な人がやったら」で判断します。
#見積り時点では誰が作業を担当するか判らない場合もあるので
でないと、同じ様なレベルの仕事であっても見積り価格が異なる事に
なり、「できる人」が短時間で安くしたのと同じ仕事を「そうでない」
人が高額で時間をかけたうえ、品質は前者の方...続きを読む


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報