社内でシステムを開発することになり、開発費用を見積もらないといけないのですが、見積の方法がわかりません。
開発言語は画面はJAVAで、バッチと帳票はCOBOL
です。
画面、帳票、機能数は出したのですが、そこではた、と停まってしまいました・・・
どなたか、システムの開発はこんなふうにして見積もっているよ、と教えていただけませんか?
JAVA,COBOLに限らずどんな言語でも結構です。よろしくお願いいたします。

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

A 回答 (1件)

 私は、JAVAのシステムの見積もりは、JAVAの使いみちで考えています。


 アプレットで使用する場合には、画面枚数とコントロール数を数えて(大体っでOK)コントロールで、標準の物を使用できる物は『0.1』。標準から外れる物でも、別途コンポーネントがある場合は『0.5』。完全に新規に作る必要がある物は『1』で計算して....合計を出します。合計に、今までの付き合いや、先方の担当者の技量で指数を決めて、かける事で、人日として算出します。
 後は、担当者の技量やその他を振り分けて、見積もりとします。
 ちなみに一日は5時間程度だと考えています。

 画面のある開発には上記の方法で見積もりますが、画面がない開発には、使用する技術に指数を割り振って、後は処理数を数えて...コンポーネントが使えるか? 等々で、開発費を見積もります。
    • good
    • 1
この回答へのお礼

午後にアドバイスに従って、見積作業をしてみました。
見積の概念みたいなものがわかったような気がしました。
指数はよくわからないので、経験値(だいたいですが)に
してみました。
これで一発上司に提出してみます。
ありがとうございました。

お礼日時:-0001/11/30 00:00

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

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

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

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

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

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

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

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

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

Aベストアンサー

No.2のymmasayanです。

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

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

Qcgiやphpやjavaなどのお見積もりフォーム

こんにちは、初めて質問いたします。
現在会社の車屋ホームページを制作しておりますが、何分htmlとcss程の知識しかなく、cgiやjavascriptもフリーのものを少し変更して組み込むくらいしかできません。

作りたいシステムとしては料金の簡易見積もりです。
動きとしては下記URLのような感じです。
http://www.jah.ne.jp/~moro/javascript/form_price.html
しかしこれは一つ一つの値に料金が決まっているため計算式に当てはめる事が
できるのですが、私のしたい事は下記URLのような事です。少し文章だけでは
説明が難しいので図にしました、ご了承ください。
http://esprit-kobe.com/img/garallies/sample.jpg

■一つ一つの値段は決まっていないが、条件がそろうと値段が出力されるには
やはりphpなどのデータベースから読み込ます等としなくてはならないのでしょうか?
■出力箇所を数点出す事は可能なのでしょうか?
■図の「できればしたい事」の様に、1箇所選択する事により、
他の箇所の選択が絞られる事は可能なのでしょうか?
できればcgi、php、javascript、ajaxなどのフリーで提供して頂いているものを使って制作したいのですが。(似たようなものでも、フリーでなくても結構です)
もしくはそれがなければphpのデータベース等を利用する方法が考えられますので、参考になるURLがあればお教え頂くと助かります。

知識が乏しく申し訳ないのですが、どうぞよろしくお願いいたします。

こんにちは、初めて質問いたします。
現在会社の車屋ホームページを制作しておりますが、何分htmlとcss程の知識しかなく、cgiやjavascriptもフリーのものを少し変更して組み込むくらいしかできません。

作りたいシステムとしては料金の簡易見積もりです。
動きとしては下記URLのような感じです。
http://www.jah.ne.jp/~moro/javascript/form_price.html
しかしこれは一つ一つの値に料金が決まっているため計算式に当てはめる事が
できるのですが、私のしたい事は下記URLのような事です。少し文章だけでは...続きを読む

Aベストアンサー

ANo.1 ulmoです。

>> 「(3)の1箇所選択する事により、他の箇所の選択が絞られ、
>> (1)(2)のデータベースより出力箇所を数点出す。」
>> といった具合です。

無論可能です。問題ありません。

ただこのシステムを開発する場合、一般に公開しない、
そちらだけが触れるいわゆる「管理画面」を作らないと
不便だと思います。車種や色、その組み合わせによる金額を
入力する画面です。それに基づいて、表の見積画面が
表示されるという仕組みになります。
そうなると、普通のシステム開発会社に依頼すると、
軽く100万超えるんじゃないかと思います。

また金額入力も一苦労です。車種・色ともに5種だとしても、
単純計算で5×5=25種の金額を入力しなくてはなりません。
片方の数字が増えるだけで、入力するデータはどかんと増えます。
車種が現行車のみならいいですが、年式もフォローするとなると
なかなか大変だと思います。通常は依頼主自身で入力してもらいますが、
それも代行させるならさらに費用はかかります。

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データを削除しても表領域の使用率が減りません

いつもお世話になっております。

今使用している表領域の使用率が高くなってきたため、
不要なテーブルやデータを削除しました。

ですが、少ししか使用率が減らず困っています。

テーブルを削除した際にはPURGE RECYCLEBINで、BIN~のテーブルも
消しています。

何か他に原因があるのでしょうか?

Aベストアンサー

前の方のおっしゃるとおり、DELETEしただけでは領域は開放されません(ハイウォーターマークが下がらない)ので、以下を試してみてください。

1.該当テーブルの全件削除で良い場合
truncate テーブル名 drop storage;
を実行する。
これで領域も開放されます。(最後のところをreuse storageとすると領域保持する意味となる)

2.部分的にdeleteして、領域を開放したい場合
alter table テーブル名 enable row movement;
alter table テーブル名 shrink space cascade;
alter table テーブル名 disable row movement;
を実行する。
1行目は領域開放の前準備、3行目は1行目の変更を元に戻す意味。
2行目でcascadeしておくと、関連インデックスの領域も一緒に縮小してくれます。

Qオープン系、汎用系とは?

職を探すときに、オープン系システム開発とか汎用系システム開発という言葉が使われますが、オープン系・汎用系とはそもそもどーいう意味なんでしょうか?

どなたか、よろしくお願いします!

Aベストアンサー

オープン系とは、Unix,WS(+PC)をベースにした所謂「クライアント・サーバーシステム」を前提にしているようです。各WSやPCは、「通信」で結ばれます。文字どおり、個々の機種への依存性を極力排し、自由に結合できるのが特徴です。

汎用系とは、汎用大型機を前提としており、今でも金融系や移動通信の制御などに用いられています。(E)WS+Unixが出てくるまでは事実上これしかありませんでした。(他にもスパコンとかミニコンはあったが、基本は同じ)

これ以上詳しく言うとボロがでるので、あとは、専門家の方に任せます。

QCSVファイルの中で、「 , 」カンマを使いたい

「 , 」で区切られたCSVファイルの中で、「 , 」カンマを使いたいのですが、可能でしょうか?

具体的には「これは1,500円でした。」というように、CSVファイルに収められた文章内で出てくる半角の数字(お金)の区切りに使いたいのです。
全角では代用したくないのですが、CSVファイルでデータを受け渡しする際に、困っています。

例えば、特殊文字などで対応可能でしょうか?

Aベストアンサー

受け渡しに使うと言うことは相手方のアプリケーションのことも考えなければいけないのですが・・・とりあえず対応が簡単そうな方法を。

1.各セルを""で囲む。(もちろんデータにダブルクォートがある場合はカンマと同様に困ります。
2.カンマで区切らずにタブで区切る。(比較的使われない文字ですが、やはりデータ中にタブがあるとカンマと同様です)

難しいけれど完璧に対応するためには、データ中の区切り文字は特殊な文字列に変更し、受け取り側のアプリケーションではその特殊な文字列をデータ中の区切り文字として扱うという方法が使われます。
例えば、データ中のカンマは\,にするとか。

データ作成側、受け取り側でそれぞれどこまで対応できるのか分かるともっと簡単かつ具体的な方法を回答できるかも知れません。

QITa、ITbという言葉の意味を教えてください

おそらくシステム関連の言葉だと思うのですが、ITa、ITbとは何のことでしょうか。
会議中に「アイティーエーは○月まで、アイティービーは○月から」という発言があったのですが、意味がわからないまま流れてしまい、こまっております。
よろしくお願いします。

Aベストアンサー

ITA、ITBとは共にソフト開発を行っている時の開発状況の事をいいます。
ITAとは結合テスト(内部結合テスト)
  自社で開発したシステムを自社内で確認する方法です。

ITAとは結合テスト(外部結合テスト)
  自社で開発したシステムを自社外(主にお客さん)が確認する方法です。

とあるパソコンメーカーが言い始めたと聞いていますが・・・


ちなみに、TIBの後にくるのがSTと呼ばれるシステムテストです。

当然ながら、開発を行っている会社によって呼び方が違うので、必ずしも規則等で決まっている
訳ではありませんが(笑)

新システムが正しく動作する事を祈っています。

Q索引の再構築をすべき?

とあるプロジェクトに放り込まれた新人SEです。
当該PJでは、客先にDBを構築して納入しているのですが、最近動作が遅くなってきたというクレームを耳にしました。調べてみると、特定のテーブルのSelect処理に時間がかかっているようです。問題のテーブルは、毎日数十万件のデータがInsertされ、一定の保持期限より古いデータは毎日削除されます。
問題はここからで、索引は設定されていますが、それをメンテしているという話を聞かないのです。
ちなみに、日付に対応するパーティションがあり、表・索引ともにパーティションで管理されています。毎日深夜に一番古いパーティションを削除し、翌日分のパーティションを新規作成するデーモンが動きます。
OracleSilver挑戦中の頭で一生懸命考えたのですが、納入から時間が経っているので索引が凄いことになっているのでは・・・という考えと、毎日新しいパーティションが生成されてるから大丈夫なのでは・・・という根拠の無い考えが渦巻いています。
アドバイス、お願いできますでしょうか。

Aベストアンサー

>CBOでは実行計画の最適化には統計情報が使われるのですか・・・!
>ということは、定期的にANALYZEしないとボケた実行計画を選択してしまう、ということですか。
>(ちなみにCBO or RBOは少し調べて理解したのですが、どこかで明示されているんでしょうか?)

CBOは、原則として、統計情報が必要です。
統計情報にあるテーブル/インデックスの特性と実態が異なるようなケースでは、
統計情報が悪さをして、まともな実行計画が立案できません。
なので、テーブルの登録内容が大きく変わる場合は、統計情報の更新を行う必要が
あります。
ただし、統計情報が一度も採取されていないテーブルやインデックスについては、
CBOは、類推して、実行計画を算定します。
これが偶々良い方向で実行計画に作用する場合も無いとは限りません。
少なくとも、大嘘付きの統計情報を使うくらいなら、ない方がましかもしれません。


現在どのオプティマイザを使っているかは、初期化パラメータに
指定があるはずです。(デフォルトはCHOOSE)
特定のSQLのみルールベースにしたり、コストベースオプティマイザの種類を変更したり
というのは、オプティマイザヒントで行えるので、統計情報が信頼できず、
統計情報の更新タイミングが持てないような運用の場合、ヒントで切り抜けるのが
ラクな解決法だと思います。
少なくとも、他への影響がないので。

>CBOでは実行計画の最適化には統計情報が使われるのですか・・・!
>ということは、定期的にANALYZEしないとボケた実行計画を選択してしまう、ということですか。
>(ちなみにCBO or RBOは少し調べて理解したのですが、どこかで明示されているんでしょうか?)

CBOは、原則として、統計情報が必要です。
統計情報にあるテーブル/インデックスの特性と実態が異なるようなケースでは、
統計情報が悪さをして、まともな実行計画が立案できません。
なので、テーブルの登録内容が大きく変わる場合は、統計情...続きを読む

Qコマンドプロンプトを使ってipアドレスからコンピュータ名を知る方法

ipアドレスは分かっていますがコンピュータ名が分かりません。リモート接続ソフトなどは使えないので、それでコンピュータ名を調べることはできません。
コマンドプロンプトを使ってipアドレスからコンピュータ名を知る方法を教えてください!

Aベストアンサー

なんか回答がバラバラなので整理しましょう。
調査している自分自身が使用している端末は、Windows XPのPCであると仮定します。
また、調べるのは基本的に外部から名前解決可能な名前(No.2さんの言う"2"に相当する名前)とします。

パターン1:
対象のIPアドレスがWindows端末機で、自分が使用している端末と同じネットワークに属しているか同一のWINSサーバを参照しているとき……No.4さんの答えで検索できます。

nbtstat -A <IP Address>

パターン2:
ネットワーク管理者がDNSをきちんと管理しており、対象IPについても管理者の管理下にある場合……以下2つのいずれかの方法で検索できます。

  nslookup <IP address>

または

  nslookup -q=ptr <reverse ip>.in-addr.arpa.
  ex) 192.168.12.1 のIPを調べたい場合、以下のように入力する
  nslookup -q=ptr 1.12.168.192.in-addr.arpa.

  (DNSサーバで逆引きが設定されていないと、正しく検索できない場合があります)

パターン3:
上記以外の場合

外部から名前解決できないので、調べようがありません。または、調べてもそれが正しいホスト名である保証がありません。
そのIPの端末自体に設定されているホスト名を直接調べるしかありませんが、それには実際にそのIPの端末を操作して調べるしかありません。
つまり、No.2さんの回答となるのですが、
IPを使用しているのがWindows PCやUnixサーバなどである保証はないので、確認するコマンドはその端末の種類(OS)によって異なります。

なお、tracert (traceroute)を使用する、という回答がありますが、これはパターン1またはパターン2のいずれかまたは両方を満たしていないと表示されませんので、厳密には正しい答えとはいえません。
(たいていの場合、"tracert <IP address>" や "ping <IP address>"で用が足りてしまうことも多いので、必ずしも間違いではないのですが)

なんか回答がバラバラなので整理しましょう。
調査している自分自身が使用している端末は、Windows XPのPCであると仮定します。
また、調べるのは基本的に外部から名前解決可能な名前(No.2さんの言う"2"に相当する名前)とします。

パターン1:
対象のIPアドレスがWindows端末機で、自分が使用している端末と同じネットワークに属しているか同一のWINSサーバを参照しているとき……No.4さんの答えで検索できます。

nbtstat -A <IP Address>

パターン2:
ネットワーク管理者がDNSをきちんと管理して...続きを読む

QExcel内での検索結果をシートに出力したい

こんばんは。いつも大変お世話になっています。

Excel2003にて、あるシートの中から
対象の文字列があるかどうか検索をしました。
検索時に「すべて検索」にすると、
全結果が表示されますよね。
その内容をExcelのシートに出力することは
できないでしょうか・・・。

どのセルの位置にその対象文字列がいてということを
報告書として作成したいのです。

イメージがうまくかけませんが、どなたかよい方法を
ご存知でしたら教えてください。
何か記述で足りないものがあれば、すぐに記述いたします。

Aベストアンサー

丸投げですか(^^;
以下のマクロをALT+F11でVBE画面を開き、左上のVBA Projectでシート名を右クリックし「挿入」→「標準モジュール」で表示される画面に貼り付けて下さい。マクロの実行はワークシート画面に戻ってALT+F8でマクロ一覧を開き、マクロ名を選択して「実行」ボタンです。

勉強になりませんので解説や再修正はしません。もし修正が必要ならご自身でお願いします。

Sub Macro1()
Dim ret
Dim r As Range
Dim adr As String
Dim cnt As Long
Dim psw As Boolean
Dim mySht, adSht, ws As Worksheet
  Set mySht = ActiveSheet
  ret = Application.InputBox("検索文字列を入力してください")
  If TypeName(ret) <> "Boolean" Then
    With mySht.Cells
      Set r = .Find(ret, LookIn:=xlValues, lookat:=xlPart)
      If Not r Is Nothing Then
        adr = r.Address
        cnt = 1
        For Each ws In Worksheets
          If ws.Name = "検索結果" & ret Then
            psw = True
            Exit For
          End If
        Next ws
        If psw Then
          Set adSht = ws
          adSht.Cells.ClearContents
        Else
          Set adSht = Worksheets.Add
          adSht.Name = "検索結果" & ret
        End If
        adSht.Cells(cnt, 1).Value = r.Value
        adSht.Cells(cnt, 2).Value = adr
        Do
          Set r = .FindNext(r)
          If r.Address = adr Then
            Exit Do
          Else
            cnt = cnt + 1
            adSht.Cells(cnt, 1).Value = r.Value
            adSht.Cells(cnt, 2).Value = r.Address
          End If
        Loop
      End If
    End With
  End If
  mySht.Activate
End Sub

丸投げですか(^^;
以下のマクロをALT+F11でVBE画面を開き、左上のVBA Projectでシート名を右クリックし「挿入」→「標準モジュール」で表示される画面に貼り付けて下さい。マクロの実行はワークシート画面に戻ってALT+F8でマクロ一覧を開き、マクロ名を選択して「実行」ボタンです。

勉強になりませんので解説や再修正はしません。もし修正が必要ならご自身でお願いします。

Sub Macro1()
Dim ret
Dim r As Range
Dim adr As String
Dim cnt As Long
Dim psw As Boolean
Dim mySht, adSht, ws As Wo...続きを読む


人気Q&Aランキング

おすすめ情報