JP2004199119A - ソフトウェアの開発・運用・保守コスト予測方法及びシステム - Google Patents
ソフトウェアの開発・運用・保守コスト予測方法及びシステム Download PDFInfo
- Publication number
- JP2004199119A JP2004199119A JP2002363321A JP2002363321A JP2004199119A JP 2004199119 A JP2004199119 A JP 2004199119A JP 2002363321 A JP2002363321 A JP 2002363321A JP 2002363321 A JP2002363321 A JP 2002363321A JP 2004199119 A JP2004199119 A JP 2004199119A
- Authority
- JP
- Japan
- Prior art keywords
- software
- client computer
- maintenance
- probability distribution
- development
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】ソフトウェアの開発・運用・保守コストの予測誤差を定量的に評価でき、コスト予測をサービスできるソフトウェアの開発・運用・保守コスト予測方法を提供することである。
【解決手段】ソフトウェアの規模を予測するための入力パラメータ値及びその確率分布を入力し、入力した入力パラメータ値及びその確率分布に従いファンクションポイント法に基づいてソフトウェア規模の予測値の確率分布を算出し、算出されたソフトウェア規模から開発と運用と保守に要する工数及びステップ数をばらつきを持った数値の集合で予測し、予測された工数及びステップ数の値が予算の許容範囲を逸脱する確率をリスクとして評価する。
【選択図】 図1
【解決手段】ソフトウェアの規模を予測するための入力パラメータ値及びその確率分布を入力し、入力した入力パラメータ値及びその確率分布に従いファンクションポイント法に基づいてソフトウェア規模の予測値の確率分布を算出し、算出されたソフトウェア規模から開発と運用と保守に要する工数及びステップ数をばらつきを持った数値の集合で予測し、予測された工数及びステップ数の値が予算の許容範囲を逸脱する確率をリスクとして評価する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、設計情報に基づいてソフトウェアの規模を推定し、ソフトウェアの開発・運用・保守に必要となる作業項目とそれぞれの作業に要するコストを予測するソフトウェアの開発・運用・保守コスト予測方法及びシステムに関する。
【0002】
【従来の技術】
ソフトウェアの規模を推定するものとしてファンクションポイント(FP)法があり、入力パラメータを入力して複雑度による補正を行って調整前FP値を求め、さらにシステム特性要因による重み付けを行って調整後FP値を算出する。最後に調整後FP値をベースとして、生産係数から作業項目別の工数、言語別換算係数から選定したプログラミング言語で開発した場合のステップ数を推定する。ここで、ファンクションポイントの算出式、生産係数、言語別換算係数などは、米国における過去のソフト開発プロジェクトの評価結果に基づいて決定されている。また、上記のようなファンクションポイント法(例えば、非特許文献1参照)や過去の事例に基づくソフトウェアの規模予測は市販ツールとして提供されている。
【0003】
【非特許文献1】
鶴保征城、富野壽監訳「ソフトウェア開発の定量化手法、発行者:(株)構造計画研究所、発売元:共立出版株式会社、2000年10月5日発行、P441〜P444」
【0004】
【発明が解決しようとする課題】
ところが、ソフトウェアの規模を推定する従来のファンクションポイント法では、入力パラメータとなる設計情報の測定が困難であること、入力パラメータから規模やコストを予測する関係式が一意的に決まっていないこと、開発するソフトウェアの分野や運用環境に応じて種々の補正が必要であることなどから、予測誤差を精度良く評価することが困難である。
【0005】
さらに、関係式や補正係数の決定根拠は、過去のソフト開発プロジェクトの評価結果に基づいているが、これらは米国におけるデータであり、日本の実情に合っているとは限らない。このため、予測された値がどの程度の確からしさを持ち、予算を超過する危険がどの程度あるかを見込むことが困難であった。
【0006】
また、ファンクションポイント法や過去の事例に基づいてソフトウェアの規模を予測するツールは市販されているものの、開発、運用、保守のさまざまな局面に応じて発生するコストの見積もり提示し、ソフトウェアの利用者に対してインタラクティヴにコンサルテーションサービスを提供することはなかった。
【0007】
そこで、本発明は、ソフトウェアの開発・運用・保守コストの予測誤差を定量的に評価でき、コスト予測をサービスできるソフトウェアの開発・運用・保守コスト予測方法及びシステムを提供することを目的とする。
【0008】
【課題を解決するための手段】
本発明のソフトウェアの開発・運用・保守コスト予測方法は、ソフトウェアの規模を予測するための入力パラメータ値及びその確率分布を入力し、入力した入力パラメータ値及びその確率分布に従いファンクションポイント法に基づいてソフトウェア規模の予測値の確率分布を算出し、算出されたソフトウェア規模から開発と運用と保守に要する工数及びステップ数をばらつきを持った数値の集合で予測し、予測された工数及びステップ数の値が予算の許容範囲を逸脱する確率をリスクとして評価する。
【0009】
本発明のソフトウェアの開発・運用・保守コスト予測システムは、ユーザのクライアント計算機11とファンクションポイントの計算プログラムがインストールされたサーバ計算機12とは通信手段にて接続され、ソフトウェアの規模を予測するための入力パラメータ値及びその確率分布をクライアント計算機から入力する。サーバ計算機は、クライアント計算機から入力された入力パラメータ値及びその確率分布に従いファンクションポイント法に基づいてソフトウェア規模の予測値の確率分布を算出し、開発と運用と保守に要する工数及びステップ数の値をクライアント計算機に提示する。
【0010】
【発明の実施の形態】
以下、本発明の実施の形態を説明する。図1は本発明の第1の実施の形態に係るソフトウェアの開発・運用・保守コスト予測方法の工程の説明図である。ソフトウェアの規模を予測するための入力パラメータ値及びその確率分布を入力するにあたり、ファンクションポイント法の入力パラメータとしての外部入力数EI、外部出力数EO、外部照会数EQ、内部論理ファイル数ILF、外部インターフェイス数EIFの値を測定し、その確率分布を定める。
【0011】
すなわち、図2に示す実体関連図(ERD : Entity Relation Diagram)や図3に示すデータフローダイアグラム(DFD : Data Flow Diagram)などの設計情報から計測される入力パラメータ値を最確値(M)として定める。図2及び図3では、プラントの運転データをデータベースに登録するためのソフトウェアの場合を示している。図2において、エンティティの種類と計測方法は以下のとおりである。
【0012】
(1)基本エンティティ
独立した実態概念
データファンクション(ILF:内部論理ファイル、EIF:外部インターフェースファイル)として計測
(2)関連エンティティ
基本エンティティの関係性を示す概念
関連が{複数:複数}のものをデータファンクションとして計測
(3)属性エンティティ
基本エンティティの属性、集約関係で表される概念
基本エンティティと一体のデータ要素型(DET)として計測
(4)副エンティティ
汎化関係で表される部分集合の概念
<完全>(部分集合に抜けがない)の場合は、部分集合をレコード要素型(RET)として計測
<不完全>の場合は、全体と部分の共通部、及び、部分集合部の和をレコード要素として計測
次に、個々の入力パラメータについて、経験的に妥当と思われる誤差の確率分布を仮定する。例えば、確率分布として正規分布を考える場合には、経験的に妥当と思われる平均的な誤差幅S1、または、現実的に考えられる最大の誤差幅S2を仮定する。図4は正規分布による確率分布のランダム変数の説明図であり、図4(a)は平均値と標準偏差がそれぞれ最確値Mと誤差幅S1で定まる正規分布をもつ確率変数の特性図、図4(b)は平均値と標準偏差の3倍がそれぞれ最確値Mと最大の誤差幅S2で定まる正規分布をもつランダムな確率変数の特性図である。そして、図4(a)または図4(b)の確率分布を各々の入力パラメータ(外部入力数EI、外部出力数EO、外部照会数EQ、内部論理ファイル数ILF、外部インターフェイス数EIF)に対して入力する。
【0013】
すなわち、外部入力数EI、外部出力数EO、外部照会数EQ、内部論理ファイル数ILF、外部インターフェイス数EIFの5つの入力パラメータに対して、それぞれの計測値と平均的な誤差(または誤差の最大幅)を入力し、入力された上記2つの値を平均値と標準偏差またはその倍数とする正規分布を与え、決定された正規分布に従う確率変数を発生させる。
【0014】
次に、各々の入力パラメータ(外部入力数EI、外部出力数EO、外部照会数EQ、内部論理ファイル数ILF、外部インターフェイス数EIF)に対して、複雑度による補正を行って調整前FP値を求める。複雑度は「低、中、高」の3段階である。
【0015】
さらに、システム特性要因について評価により重み付けを行って調整後FP値を算出する。システム特性要因は、データ通信C1、機能の分散度C2、性能目標C3、利用制約C4、トランザクション量C5、オンラインデータエントリC6、エンドユーザ効率C7、オンライン更新C8、複雑な処理C9、再利用可能性C10、インストールの容易性C11、操作の容易性C12、複数サイトC13、更新の用意性C14の14項目からなり、それぞれ6段階の難易度評価(影響がない、とるに足らない影響、軽い影響、平均的な影響、かなりの影響、強い影響)により±0.35の重み付けを行って調整済FP値を算出する。
【0016】
この調整済FP値に指定したプログラミング言語の換算係数を掛けることによって論理ステップ数を算出し、生産係数を掛けることによって開発・運用・保守に係わる作業項目とそれぞれの工数を得る。入力パラメータとしてランダム変数を与えているため、ステップ数と工数もばらつきを持った数値の集合で表され、誤差の分布を定量的に把握することができる。これにより、予測された工数及びステップ数の値が予算の許容範囲を逸脱する確率をリスクとして評価できる。
【0017】
以上の説明では、確率分布として正規分布の場合について説明したが、図5に示すように、正規分布以外の入力パラメータの分布を定義することも可能である。すなわち、確率分布として、三角分布、対数正規分布、一様分布、指数分布、ワイブル分布、ベータ分布を扱えるようにしても良い。
【0018】
次に、本発明の第2の実施の形態について説明する。図6は本発明の第2の実施の形態に係るソフトウェアの開発・運用・保守コスト予測システムのブロック構成図である。この第2の実施の形態に係るソフトウェアの開発・運用・保守コスト予測システムは、ファンクションポイントの計算プログラムがインストールされたコンピュータだけでなく、ネットワークにつながった多数のコンピュータからファンクションポイントの計算プログラムを利用できるようにしたものである。
【0019】
ユーザのクライアント計算機11とファンクションポイントの計算プログラムがインストールされたサーバ計算機12とは通信手段にて接続されている。クライアント計算機11には、ソフトウェアの規模を予測するための入力パラメータ値及びその確率分布が入力される。すなわち、ソフトウェアの設計情報の入力パラメータが入力され(S1)、複雑度が入力され(S2)、さらにシステム特性要因が入力される(S3)。
【0020】
サーバ計算機12はクライアント計算機11から入力された確率分布の入力パラメータ値及び複雑度に基づいて、調整前FP値を計算し(S4)、さらに調整前FP値に対しシステム特性要因及び評価に基づいて調整済FP値を計算する(S5)。そして、生産性計数を用いて開発と運用と保守に要する工数を算出しさらに作業項目別コストを予測計算すると共に(S6)、言語別換算計数を用いてステップ数の値を予測計算し(S7)、クライアント計算機11に予測計算結果を提示する(S8)。
【0021】
このように、ソフトウェアの開発・運用・保守を担当するユーザは、規模を予測するための入力パラメータ値とその確率分布をクライアント計算機11からインプットし、ネットワークを介して見積もり作業を管理するサーバ計算機12に送信する。サーバ計算機12は当該ソフトウェアの調整前FP値を算出し、この値を基に、生産性係数から作業項目別の工数、言語別換算係数から選定したプログラミング言語で開発した場合のステップ数が算出され、ネットワークを介してクライアント計算機11に送られてユーザに提示される。
【0022】
第2の実施の形態によれば、サーバ計算機12を通信手段(ネットワーク)に接続しクライアント計算機11からのアクセスを可能としたので、ファンクションポイントの計算プログラムがインストールされたサーバ計算機12だけでなく、ネットワークにつながった多数のクライアント計算機11からファンクションポイントの計算プログラムを利用できる。さらに、多数の見積もりJOBのデータベースに共有することで、種種の補正係数や換算係数を分野や用途に応じてカスタマイズが容易になる。
【0023】
次に、本発明の第3の実施の形態について説明する。図7は本発明の第3の実施の形態に係るソフトウェアの開発・運用・保守コスト予測システムのブロック構成図である。この第3の実施の形態は、図6に示した第2の実施の形態の通信手段を企業内のイントラネットとし、企業内のソフトウェア開発に関わる部門の担当者が外注作業の見積もり額を得られるようにし、同企業内で外注業者に発注業務に関わる担当者が適切な価格でプログラミング作業の委託作業を外注業者に発注できるようにしたものである。
【0024】
クライアント計算機11はソフトウェアを利用する部署に設置され、サーバ計算機12は外注業者への発注業務を担当する部署に設置され、企業内のイントラネット13に接続されている。企業のソフトウェアを利用する部署で利用するプログラムを外注作業で作成する場合に、担当者は要求仕様に従って入力パラメータ値とその確率分布をクライアント計算機11からインプットする。このデータはイントラネット13を介してサーバ計算機12に送られる。サーバ計算機12は、ファンクションポイント計算プログラムで計算されたFP値に基づいて、外注作業の見積もり額を算出し、依頼元の部署に見積もり額を提示する。この見積もり額が依頼元である部署の予算と合わない場合には、仕様を変更して予算に合った開発内容になるように調整することになる。
【0025】
次に、この見積もり内容は資材調達などの発注作業を管理する部署に伝達され、発注担当者は依頼元の部署から提示された仕様に基づいて外注業者14に見積もり依頼を提出する。発注業務に関わる部署の担当者は外注業者から回答された見積もり額とサーバ計算機12による見積もり額とを比較し、予算を下回る中で最も近い見積もり額を提示した業者に発注することになる。
【0026】
第3の実施の形態によれば、企業内で予めソフトウェアの作成作業の見積もり額を算出できるので、適切な価格でプログラミング作業の委託作業をソフトウェアの開発を請け負う外注業者に発注することができる。
【0027】
次に、本発明の第4の実施の形態について説明する。図8は本発明の第4の実施の形態に係るソフトウェアの開発・運用・保守コスト予測システムのブロック構成図である。この第4の実施の形態は、図6に示した第2の実施の形態の通信手段をインターネットとし、ソフトウェアの開発・運用・保守に関わる個人ユーザまたは企業ユーザがソフトウェア開発に関わる作業のコストを得られるようにしたものである。
【0028】
クライアント計算機11はソフトウェアを利用する個人ユーザ15や企業ユーザ16に設置され、サーバ計算機12はソフトウェアの見積もりのサービスを提供するコンサルテーション会社17に設置され、インターネット18を介して接続されている。
【0029】
個人ユーザ15または企業ユーザ16はインターネット18を介してコンサルテーション会社17のホームページにアクセスする。この場合、初めての利用であればユーザ登録をし、2回目以降の利用であればユーザ認証を経て、ソフトウェアの開発・運用・保守に関わるコンサルテーションサービスを選択し、提示されたサービス内容とその費用を確認した上でコンサルテーション会社17と契約を結ぶ。
【0030】
次に、個人ユーザ15または企業ユーザ16が要求された入力パラメータとその確率分布を入力すると、ソフトウェアの開発・運用・保守に関わる作業項目とそれぞれのコストが提示される。個人ユーザ15または企業ユーザ16の予算が不足している場合には、コンサルテーション会社17は、優先度の低い機能を削ったり、バグ検出率の低いモジュールの試験を簡略化したりするなどしてコストダウンの方法を提示し、機能上の要求仕様とコスト上の制約の中で最適なソリューションを提供する。
【0031】
第4の実施の形態によれば、個人ユーザ15または企業ユーザ16はこのようなサービスを受けることにより、自分が担当するソフトウェアの開発・運用・保守に関わるコストの適正額を知ることができ、これに基づいた予算計画を立てることができる。また、コンサルテーション会社17は個人ユーザ15または企業ユーザ16にこのようなサービスを提供することによって、その内容に見合った対価を得ることができる。
【0032】
【発明の効果】
以上述べたように、本発明によれば、ファンクションポイント法の入力パラメータについて、設計情報から計測される1個の値だけでなく、ソフト開発者の経験から予想される誤差のバラツキを統計的に表現して確率変数として扱うので、ソフトウェアの規模をバラツキまで含めて予測することができる。これにより、ソフトウェアの開発・運用・保守コストを、経験的に考えられる誤差分布と共に推定することができ、予算の許容範囲を逸脱する確率をリスクとして評価することができる。また、このコスト予測機能をイントラネットやインターネット上にクライアント/サーバ型のシステムとして構築することで、企業におけるソフト外注作業の見積もりの自動化やWeb上のソフト見積もりコンサルテーションサービスが可能となる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係るソフトウェアの開発・運用・保守コスト予測方法の工程の説明図。
【図2】本発明の第1の実施の形態における入力パラメータを求めるための実体関連図の一例の説明図。
【図3】本発明の第1の実施の形態における入力パラメータを求めるためのデータフローダイアグラムの一例の説明図。
【図4】本発明の第1の実施の形態における正規分布による確率分布のランダム変数の説明図。
【図5】本発明の第1の実施の形態で使用可能な入力パラメータの確率分布の説明図。
【図6】本発明の第2の実施の形態に係るソフトウェアの開発・運用・保守コスト予測システムのブロック構成図。
【図7】本発明の第3の実施の形態に係るソフトウェアの開発・運用・保守コスト予測システムのブロック構成図。
【図8】本発明の第4の実施の形態に係るソフトウェアの開発・運用・保守コスト予測システムのブロック構成図。
【符号の説明】
11…クライアント計算機、12…サーバ計算機、13…イントラネット、14…外注業者、15…個人ユーザ、16…企業ユーザ、17…コンサルテーション会社、18…インターネット
【発明の属する技術分野】
本発明は、設計情報に基づいてソフトウェアの規模を推定し、ソフトウェアの開発・運用・保守に必要となる作業項目とそれぞれの作業に要するコストを予測するソフトウェアの開発・運用・保守コスト予測方法及びシステムに関する。
【0002】
【従来の技術】
ソフトウェアの規模を推定するものとしてファンクションポイント(FP)法があり、入力パラメータを入力して複雑度による補正を行って調整前FP値を求め、さらにシステム特性要因による重み付けを行って調整後FP値を算出する。最後に調整後FP値をベースとして、生産係数から作業項目別の工数、言語別換算係数から選定したプログラミング言語で開発した場合のステップ数を推定する。ここで、ファンクションポイントの算出式、生産係数、言語別換算係数などは、米国における過去のソフト開発プロジェクトの評価結果に基づいて決定されている。また、上記のようなファンクションポイント法(例えば、非特許文献1参照)や過去の事例に基づくソフトウェアの規模予測は市販ツールとして提供されている。
【0003】
【非特許文献1】
鶴保征城、富野壽監訳「ソフトウェア開発の定量化手法、発行者:(株)構造計画研究所、発売元:共立出版株式会社、2000年10月5日発行、P441〜P444」
【0004】
【発明が解決しようとする課題】
ところが、ソフトウェアの規模を推定する従来のファンクションポイント法では、入力パラメータとなる設計情報の測定が困難であること、入力パラメータから規模やコストを予測する関係式が一意的に決まっていないこと、開発するソフトウェアの分野や運用環境に応じて種々の補正が必要であることなどから、予測誤差を精度良く評価することが困難である。
【0005】
さらに、関係式や補正係数の決定根拠は、過去のソフト開発プロジェクトの評価結果に基づいているが、これらは米国におけるデータであり、日本の実情に合っているとは限らない。このため、予測された値がどの程度の確からしさを持ち、予算を超過する危険がどの程度あるかを見込むことが困難であった。
【0006】
また、ファンクションポイント法や過去の事例に基づいてソフトウェアの規模を予測するツールは市販されているものの、開発、運用、保守のさまざまな局面に応じて発生するコストの見積もり提示し、ソフトウェアの利用者に対してインタラクティヴにコンサルテーションサービスを提供することはなかった。
【0007】
そこで、本発明は、ソフトウェアの開発・運用・保守コストの予測誤差を定量的に評価でき、コスト予測をサービスできるソフトウェアの開発・運用・保守コスト予測方法及びシステムを提供することを目的とする。
【0008】
【課題を解決するための手段】
本発明のソフトウェアの開発・運用・保守コスト予測方法は、ソフトウェアの規模を予測するための入力パラメータ値及びその確率分布を入力し、入力した入力パラメータ値及びその確率分布に従いファンクションポイント法に基づいてソフトウェア規模の予測値の確率分布を算出し、算出されたソフトウェア規模から開発と運用と保守に要する工数及びステップ数をばらつきを持った数値の集合で予測し、予測された工数及びステップ数の値が予算の許容範囲を逸脱する確率をリスクとして評価する。
【0009】
本発明のソフトウェアの開発・運用・保守コスト予測システムは、ユーザのクライアント計算機11とファンクションポイントの計算プログラムがインストールされたサーバ計算機12とは通信手段にて接続され、ソフトウェアの規模を予測するための入力パラメータ値及びその確率分布をクライアント計算機から入力する。サーバ計算機は、クライアント計算機から入力された入力パラメータ値及びその確率分布に従いファンクションポイント法に基づいてソフトウェア規模の予測値の確率分布を算出し、開発と運用と保守に要する工数及びステップ数の値をクライアント計算機に提示する。
【0010】
【発明の実施の形態】
以下、本発明の実施の形態を説明する。図1は本発明の第1の実施の形態に係るソフトウェアの開発・運用・保守コスト予測方法の工程の説明図である。ソフトウェアの規模を予測するための入力パラメータ値及びその確率分布を入力するにあたり、ファンクションポイント法の入力パラメータとしての外部入力数EI、外部出力数EO、外部照会数EQ、内部論理ファイル数ILF、外部インターフェイス数EIFの値を測定し、その確率分布を定める。
【0011】
すなわち、図2に示す実体関連図(ERD : Entity Relation Diagram)や図3に示すデータフローダイアグラム(DFD : Data Flow Diagram)などの設計情報から計測される入力パラメータ値を最確値(M)として定める。図2及び図3では、プラントの運転データをデータベースに登録するためのソフトウェアの場合を示している。図2において、エンティティの種類と計測方法は以下のとおりである。
【0012】
(1)基本エンティティ
独立した実態概念
データファンクション(ILF:内部論理ファイル、EIF:外部インターフェースファイル)として計測
(2)関連エンティティ
基本エンティティの関係性を示す概念
関連が{複数:複数}のものをデータファンクションとして計測
(3)属性エンティティ
基本エンティティの属性、集約関係で表される概念
基本エンティティと一体のデータ要素型(DET)として計測
(4)副エンティティ
汎化関係で表される部分集合の概念
<完全>(部分集合に抜けがない)の場合は、部分集合をレコード要素型(RET)として計測
<不完全>の場合は、全体と部分の共通部、及び、部分集合部の和をレコード要素として計測
次に、個々の入力パラメータについて、経験的に妥当と思われる誤差の確率分布を仮定する。例えば、確率分布として正規分布を考える場合には、経験的に妥当と思われる平均的な誤差幅S1、または、現実的に考えられる最大の誤差幅S2を仮定する。図4は正規分布による確率分布のランダム変数の説明図であり、図4(a)は平均値と標準偏差がそれぞれ最確値Mと誤差幅S1で定まる正規分布をもつ確率変数の特性図、図4(b)は平均値と標準偏差の3倍がそれぞれ最確値Mと最大の誤差幅S2で定まる正規分布をもつランダムな確率変数の特性図である。そして、図4(a)または図4(b)の確率分布を各々の入力パラメータ(外部入力数EI、外部出力数EO、外部照会数EQ、内部論理ファイル数ILF、外部インターフェイス数EIF)に対して入力する。
【0013】
すなわち、外部入力数EI、外部出力数EO、外部照会数EQ、内部論理ファイル数ILF、外部インターフェイス数EIFの5つの入力パラメータに対して、それぞれの計測値と平均的な誤差(または誤差の最大幅)を入力し、入力された上記2つの値を平均値と標準偏差またはその倍数とする正規分布を与え、決定された正規分布に従う確率変数を発生させる。
【0014】
次に、各々の入力パラメータ(外部入力数EI、外部出力数EO、外部照会数EQ、内部論理ファイル数ILF、外部インターフェイス数EIF)に対して、複雑度による補正を行って調整前FP値を求める。複雑度は「低、中、高」の3段階である。
【0015】
さらに、システム特性要因について評価により重み付けを行って調整後FP値を算出する。システム特性要因は、データ通信C1、機能の分散度C2、性能目標C3、利用制約C4、トランザクション量C5、オンラインデータエントリC6、エンドユーザ効率C7、オンライン更新C8、複雑な処理C9、再利用可能性C10、インストールの容易性C11、操作の容易性C12、複数サイトC13、更新の用意性C14の14項目からなり、それぞれ6段階の難易度評価(影響がない、とるに足らない影響、軽い影響、平均的な影響、かなりの影響、強い影響)により±0.35の重み付けを行って調整済FP値を算出する。
【0016】
この調整済FP値に指定したプログラミング言語の換算係数を掛けることによって論理ステップ数を算出し、生産係数を掛けることによって開発・運用・保守に係わる作業項目とそれぞれの工数を得る。入力パラメータとしてランダム変数を与えているため、ステップ数と工数もばらつきを持った数値の集合で表され、誤差の分布を定量的に把握することができる。これにより、予測された工数及びステップ数の値が予算の許容範囲を逸脱する確率をリスクとして評価できる。
【0017】
以上の説明では、確率分布として正規分布の場合について説明したが、図5に示すように、正規分布以外の入力パラメータの分布を定義することも可能である。すなわち、確率分布として、三角分布、対数正規分布、一様分布、指数分布、ワイブル分布、ベータ分布を扱えるようにしても良い。
【0018】
次に、本発明の第2の実施の形態について説明する。図6は本発明の第2の実施の形態に係るソフトウェアの開発・運用・保守コスト予測システムのブロック構成図である。この第2の実施の形態に係るソフトウェアの開発・運用・保守コスト予測システムは、ファンクションポイントの計算プログラムがインストールされたコンピュータだけでなく、ネットワークにつながった多数のコンピュータからファンクションポイントの計算プログラムを利用できるようにしたものである。
【0019】
ユーザのクライアント計算機11とファンクションポイントの計算プログラムがインストールされたサーバ計算機12とは通信手段にて接続されている。クライアント計算機11には、ソフトウェアの規模を予測するための入力パラメータ値及びその確率分布が入力される。すなわち、ソフトウェアの設計情報の入力パラメータが入力され(S1)、複雑度が入力され(S2)、さらにシステム特性要因が入力される(S3)。
【0020】
サーバ計算機12はクライアント計算機11から入力された確率分布の入力パラメータ値及び複雑度に基づいて、調整前FP値を計算し(S4)、さらに調整前FP値に対しシステム特性要因及び評価に基づいて調整済FP値を計算する(S5)。そして、生産性計数を用いて開発と運用と保守に要する工数を算出しさらに作業項目別コストを予測計算すると共に(S6)、言語別換算計数を用いてステップ数の値を予測計算し(S7)、クライアント計算機11に予測計算結果を提示する(S8)。
【0021】
このように、ソフトウェアの開発・運用・保守を担当するユーザは、規模を予測するための入力パラメータ値とその確率分布をクライアント計算機11からインプットし、ネットワークを介して見積もり作業を管理するサーバ計算機12に送信する。サーバ計算機12は当該ソフトウェアの調整前FP値を算出し、この値を基に、生産性係数から作業項目別の工数、言語別換算係数から選定したプログラミング言語で開発した場合のステップ数が算出され、ネットワークを介してクライアント計算機11に送られてユーザに提示される。
【0022】
第2の実施の形態によれば、サーバ計算機12を通信手段(ネットワーク)に接続しクライアント計算機11からのアクセスを可能としたので、ファンクションポイントの計算プログラムがインストールされたサーバ計算機12だけでなく、ネットワークにつながった多数のクライアント計算機11からファンクションポイントの計算プログラムを利用できる。さらに、多数の見積もりJOBのデータベースに共有することで、種種の補正係数や換算係数を分野や用途に応じてカスタマイズが容易になる。
【0023】
次に、本発明の第3の実施の形態について説明する。図7は本発明の第3の実施の形態に係るソフトウェアの開発・運用・保守コスト予測システムのブロック構成図である。この第3の実施の形態は、図6に示した第2の実施の形態の通信手段を企業内のイントラネットとし、企業内のソフトウェア開発に関わる部門の担当者が外注作業の見積もり額を得られるようにし、同企業内で外注業者に発注業務に関わる担当者が適切な価格でプログラミング作業の委託作業を外注業者に発注できるようにしたものである。
【0024】
クライアント計算機11はソフトウェアを利用する部署に設置され、サーバ計算機12は外注業者への発注業務を担当する部署に設置され、企業内のイントラネット13に接続されている。企業のソフトウェアを利用する部署で利用するプログラムを外注作業で作成する場合に、担当者は要求仕様に従って入力パラメータ値とその確率分布をクライアント計算機11からインプットする。このデータはイントラネット13を介してサーバ計算機12に送られる。サーバ計算機12は、ファンクションポイント計算プログラムで計算されたFP値に基づいて、外注作業の見積もり額を算出し、依頼元の部署に見積もり額を提示する。この見積もり額が依頼元である部署の予算と合わない場合には、仕様を変更して予算に合った開発内容になるように調整することになる。
【0025】
次に、この見積もり内容は資材調達などの発注作業を管理する部署に伝達され、発注担当者は依頼元の部署から提示された仕様に基づいて外注業者14に見積もり依頼を提出する。発注業務に関わる部署の担当者は外注業者から回答された見積もり額とサーバ計算機12による見積もり額とを比較し、予算を下回る中で最も近い見積もり額を提示した業者に発注することになる。
【0026】
第3の実施の形態によれば、企業内で予めソフトウェアの作成作業の見積もり額を算出できるので、適切な価格でプログラミング作業の委託作業をソフトウェアの開発を請け負う外注業者に発注することができる。
【0027】
次に、本発明の第4の実施の形態について説明する。図8は本発明の第4の実施の形態に係るソフトウェアの開発・運用・保守コスト予測システムのブロック構成図である。この第4の実施の形態は、図6に示した第2の実施の形態の通信手段をインターネットとし、ソフトウェアの開発・運用・保守に関わる個人ユーザまたは企業ユーザがソフトウェア開発に関わる作業のコストを得られるようにしたものである。
【0028】
クライアント計算機11はソフトウェアを利用する個人ユーザ15や企業ユーザ16に設置され、サーバ計算機12はソフトウェアの見積もりのサービスを提供するコンサルテーション会社17に設置され、インターネット18を介して接続されている。
【0029】
個人ユーザ15または企業ユーザ16はインターネット18を介してコンサルテーション会社17のホームページにアクセスする。この場合、初めての利用であればユーザ登録をし、2回目以降の利用であればユーザ認証を経て、ソフトウェアの開発・運用・保守に関わるコンサルテーションサービスを選択し、提示されたサービス内容とその費用を確認した上でコンサルテーション会社17と契約を結ぶ。
【0030】
次に、個人ユーザ15または企業ユーザ16が要求された入力パラメータとその確率分布を入力すると、ソフトウェアの開発・運用・保守に関わる作業項目とそれぞれのコストが提示される。個人ユーザ15または企業ユーザ16の予算が不足している場合には、コンサルテーション会社17は、優先度の低い機能を削ったり、バグ検出率の低いモジュールの試験を簡略化したりするなどしてコストダウンの方法を提示し、機能上の要求仕様とコスト上の制約の中で最適なソリューションを提供する。
【0031】
第4の実施の形態によれば、個人ユーザ15または企業ユーザ16はこのようなサービスを受けることにより、自分が担当するソフトウェアの開発・運用・保守に関わるコストの適正額を知ることができ、これに基づいた予算計画を立てることができる。また、コンサルテーション会社17は個人ユーザ15または企業ユーザ16にこのようなサービスを提供することによって、その内容に見合った対価を得ることができる。
【0032】
【発明の効果】
以上述べたように、本発明によれば、ファンクションポイント法の入力パラメータについて、設計情報から計測される1個の値だけでなく、ソフト開発者の経験から予想される誤差のバラツキを統計的に表現して確率変数として扱うので、ソフトウェアの規模をバラツキまで含めて予測することができる。これにより、ソフトウェアの開発・運用・保守コストを、経験的に考えられる誤差分布と共に推定することができ、予算の許容範囲を逸脱する確率をリスクとして評価することができる。また、このコスト予測機能をイントラネットやインターネット上にクライアント/サーバ型のシステムとして構築することで、企業におけるソフト外注作業の見積もりの自動化やWeb上のソフト見積もりコンサルテーションサービスが可能となる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係るソフトウェアの開発・運用・保守コスト予測方法の工程の説明図。
【図2】本発明の第1の実施の形態における入力パラメータを求めるための実体関連図の一例の説明図。
【図3】本発明の第1の実施の形態における入力パラメータを求めるためのデータフローダイアグラムの一例の説明図。
【図4】本発明の第1の実施の形態における正規分布による確率分布のランダム変数の説明図。
【図5】本発明の第1の実施の形態で使用可能な入力パラメータの確率分布の説明図。
【図6】本発明の第2の実施の形態に係るソフトウェアの開発・運用・保守コスト予測システムのブロック構成図。
【図7】本発明の第3の実施の形態に係るソフトウェアの開発・運用・保守コスト予測システムのブロック構成図。
【図8】本発明の第4の実施の形態に係るソフトウェアの開発・運用・保守コスト予測システムのブロック構成図。
【符号の説明】
11…クライアント計算機、12…サーバ計算機、13…イントラネット、14…外注業者、15…個人ユーザ、16…企業ユーザ、17…コンサルテーション会社、18…インターネット
Claims (5)
- ソフトウェアの規模を予測するための入力パラメータ値及びその確率分布を入力し、入力した入力パラメータ値及びその確率分布に従いファンクションポイント法に基づいてソフトウェア規模の予測値の確率分布を算出し、算出されたソフトウェア規模から開発と運用と保守に要する工数及びステップ数をばらつきを持った数値の集合で予測し、予測された工数及びステップ数の値が予算の許容範囲を逸脱する確率をリスクとして評価することを特徴とするソフトウェアの開発・運用・保守コスト予測方法。
- 前記入力パラメータは、少なくとも外部入力数、外部出力数、外部照会数、内部論理ファイル数、外部インターフェイス数の5つの入力パラメータを含むことを特徴とする請求項1記載のソフトウェアの開発・運用・保守コスト予測方法。
- ソフトウェアの規模を予測するための入力パラメータ値及びその確率分布を入力するためのクライアント計算機と、前記クライアント計算機から入力された入力パラメータ値及びその確率分布に従いファンクションポイント法に基づいてソフトウェア規模の予測値の確率分布を算出し、開発と運用と保守に要する工数及びステップ数の値を前記クライアント計算機に提示するサーバ計算機と、前記クライアント計算機と前記サーバ計算機とを接続する通信手段とを備えたことを特徴とするソフトウェアの開発・運用・保守コスト予測システム。
- 前記通信手段は企業内のイントラネットであり、前記クライアント計算機はソフトウェアを利用する部署に設置され、前記サーバ計算機は外注業者への発注業務を担当する部署に設置され、前記クライアント計算機はソフトウェアを利用する部署がソフトウェアの設計情報に関わる外注費の見積もり条件を入力してソフトウェアの外注費の見積もり依頼をし、前記サーバ計算機は前記クライアント計算機から入力された条件に従って外注費の見積もりを行うことを特徴とする請求項3記載のソフトウェアの開発・運用・保守コスト予測システム。
- 前記通信手段はインターネットであり、前記クライアント計算機はソフトウェアを利用するユーザに設置され、前記サーバ計算機はソフトウェアの見積もりのサービスを提供するコンサルテーション会社に設置され、前記クライアント計算機は個人または企業がソフトウェアの設計情報に関わる外注費の見積もり条件を入力してソフトウェアの開発・運用・保守コストの見積もりを依頼し、前記サーバ計算機は前記クライアント計算機から入力された条件に従ってコストの見積もりを行い、見積もり結果を提示することを特徴とする請求項3記載のソフトウェアの開発・運用・保守コスト予測システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002363321A JP2004199119A (ja) | 2002-12-16 | 2002-12-16 | ソフトウェアの開発・運用・保守コスト予測方法及びシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002363321A JP2004199119A (ja) | 2002-12-16 | 2002-12-16 | ソフトウェアの開発・運用・保守コスト予測方法及びシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004199119A true JP2004199119A (ja) | 2004-07-15 |
Family
ID=32761497
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002363321A Pending JP2004199119A (ja) | 2002-12-16 | 2002-12-16 | ソフトウェアの開発・運用・保守コスト予測方法及びシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004199119A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009048287A (ja) * | 2007-08-15 | 2009-03-05 | Fujitsu Ltd | 工数見積プログラム、該プログラムを記録した記録媒体、工数見積装置、および工数見積方法 |
KR100901357B1 (ko) * | 2007-04-05 | 2009-06-05 | 주식회사 케이티프리텔 | 소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템 |
JP2012181739A (ja) * | 2011-03-02 | 2012-09-20 | Ntt Data Corp | 工数見積装置、工数見積方法、工数見積プログラム |
JP2013041386A (ja) * | 2011-08-15 | 2013-02-28 | Hitachi Ltd | コンポーネント設計支援方法およびシステム |
JP2014174728A (ja) * | 2013-03-08 | 2014-09-22 | Nec Solution Innovators Ltd | コスト算出装置、コスト算出方法、及びプログラム |
-
2002
- 2002-12-16 JP JP2002363321A patent/JP2004199119A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100901357B1 (ko) * | 2007-04-05 | 2009-06-05 | 주식회사 케이티프리텔 | 소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템 |
JP2009048287A (ja) * | 2007-08-15 | 2009-03-05 | Fujitsu Ltd | 工数見積プログラム、該プログラムを記録した記録媒体、工数見積装置、および工数見積方法 |
JP2012181739A (ja) * | 2011-03-02 | 2012-09-20 | Ntt Data Corp | 工数見積装置、工数見積方法、工数見積プログラム |
JP2013041386A (ja) * | 2011-08-15 | 2013-02-28 | Hitachi Ltd | コンポーネント設計支援方法およびシステム |
JP2014174728A (ja) * | 2013-03-08 | 2014-09-22 | Nec Solution Innovators Ltd | コスト算出装置、コスト算出方法、及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Leung et al. | Software cost estimation | |
US6920474B2 (en) | Method and system for enterprise business process management | |
Kok et al. | The MERMAID approach to software cost estimation | |
WO2018109752A1 (en) | A method and system for generating a decision-making algorithm for an entity to achieve an objective | |
JP2005515522A (ja) | データウェアハウスのデータの保全性を検証し、ウェハハウジングされたデータを複数の事前定義の分析モデルに適用する方法およびシステム。 | |
CN101311898B (zh) | 软件构件可信度评价方法和系统 | |
EP1484684B1 (en) | Method and computer system for providing a cost estimate for sizing a computer system | |
US20150120370A1 (en) | Advanced planning in a rapidly changing high technology electronics and computer industry through massively parallel processing of data using a distributed computing environment | |
WO2024001045A1 (zh) | 碳配额盈缺预测方法、装置电子设备及存储介质 | |
CN111160658A (zh) | 一种协同制造资源优配方法、系统和平台 | |
US20050049883A1 (en) | Facilitating the design specification and ordering from a manufacturer of a particular display product | |
US20040210485A1 (en) | Quoting strategy analysis system and method | |
JPWO2021260678A5 (ja) | ||
US20210383263A1 (en) | Systems and methods for estimating validation time for fraud detection rules | |
US7340315B2 (en) | Design supporting system for supporting component design | |
JP2004199119A (ja) | ソフトウェアの開発・運用・保守コスト予測方法及びシステム | |
US7987209B2 (en) | Enhanced trade compliance system: mass amendment | |
CN107491454A (zh) | 数据查询方法及装置 | |
van den Berg et al. | Quality assessment for LCA | |
US20070118487A1 (en) | Product cost modeling method and system | |
Tyrychtr et al. | EM-OLAP framework: econometric model transformation method for OLAP design in intelligence systems | |
XueNing et al. | Partners selection for virtual enterprises | |
CN118134540B (zh) | 基于能源电力供需预测模型的多维数据交互方法及系统 | |
Cappiello et al. | A self-monitoring system to satisfy data quality requirements | |
Sadiq et al. | Estimation of the size of the software projects with high Complexity using Function point |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050418 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071003 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071023 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080304 |