(57)【要約】 【課題】  ソフトウェア見積支援システム及び見積支援方法の提供。【解決手段】  複数の画面及び書類である作業成果物の作成及び複数の工程を実行するソフトウェアの作成に対する見積を支援するソフトウェア見積支援システムであって、予め処理の複雑さと想定規模との対応から想定されるステップ数を格納したステップ換算データベース１４と、複数の作業成果物対応の想定枚数及びステップ数を格納した作業成果物換算データベース１５と、作業工程毎の生産性を格納した工数換算データベース１６と、これらを制御するサーバ１１とを用意し、該サーバ１１が、処理の複雑さ／想定規模／作業成果物の種類を条件とし、前記データベース１４〜１６を参照することにより、画面数や書類数を考慮した見積を支援するもの。【選択図】  図１
2005032054.tif 000002
【特許請求の範囲】
【請求項１】
複数の画面及び作業成果物の作成及び複数の工程を実行するソフトウェアの作成に対する見積を支援するソフトウェア見積支援システムであって、処理の複雑さと想定規模との対応から想定される複数のステップ数を格納するステップ換算データベースと、複数の作業成果物対応の想定枚数及びステップ数を格納する作業成果物換算データベースと、作業工程毎の生産性を格納した工数換算データベースと、前記各データベースを制御するサーバとを備え、該サーバが、見積対象ソフトウェアの複雑さと想定規模をキーとしてステップ換算データベースを参照して開発対象ステップ数を算出し、該開発対象ステップ数をキーとして作業成果物換算データベースを参照して複数の作業成果物に対応した作業成果物の量を算出し、該作業成果物の量をキーとして工数換算データベースを参照して工数を含む見積を計算することを特徴とするソフトウェア見積支援システム。
【請求項２】
前記作業成果物換算データベースが、管理作業に対する作業成果物及び又は工数とを含み、前記サーバが、管理作業の工数を含む見積を計算することを特徴とする請求項１記載のソフトウェア見積支援システム。
【請求項３】
複数の画面及び作業成果物の作成及び複数の工程を実行するソフトウェアの作成に対する見積を支援するソフトウェア見積支援方法であって、処理の複雑さと想定規模との対応から想定される複数のステップ数を格納するステップ換算データベースと、複数の作業成果物対応の想定枚数及びステップ数を格納する作業成果物換算データベースと、作業工程毎の生産性を格納した工数換算データベースとを用意し、見積対象ソフトウェアの複雑さと想定規模をキーとしてステップ換算データベースを参照して開発対象ステップ数を算出する第１ステップと、該第１ステップにより算出した開発対象ステップ数をキーとして作業成果物換算データベースを参照して見積対象ソフトウェアの複数の作業成果物に対応した作業成果物の量を算出する第２ステップと、該第２ステップにより算出した作業成果物の量をキーとして工数換算データベースを参照して工数を含む見積を計算する第３ステップを含むことを特徴とするソフトウェア見積支援方法。
【請求項４】
前記作業成果物換算データベースが、管理作業に対する作業成果物及び又は工数とを含み、前記第３ステップが管理作業の工数を含む計算を実行することを特徴とする請求項３記載のソフトウェア見積支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェア開発における工数の見積を支援するソフトウェア見積支援システム及び見積支援方法に係り、特に画面や書類等の作業成果量を考慮してソフトウェアの工数の見積を作成するソフトウェア見積支援システム及び見積支援方法に関する。
【背景技術】
【０００２】
一般にソフトウェア開発における工数の見積は、システムエンジニア等が顧客から必要とする業務内容を聞き取り、その業務を遂行する上で必要な作業項目やデータ量等を考慮し、ＬＯＣ（line of code）による物理量又は論理行数又はファンクションポイント法によるポイント数等を基に全体の工数を算出して行われていた。即ち、従来技術によるソフトウェア開発における工数の見積は、結果物であるソフトウェアの総ステップ数を想定し、このステップ数を基に工数の見積を行うものであった。
【特許文献１】特開２００２−１５０３３号公報
【特許文献２】特開２００２−１５７２８２号公報
【特許文献３】特開２００２−２１５３９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来技術によるソフトウェアにおける工数の見積技術は、結果物であるソフトウェアの総ステップ数を想定して行うものであったが、実際のソフトウェアにおける工数は、顧客作業の要求に応じて作成する複数の画面や書類（例えば設計書／マニュアル／指示書／印刷帳票、以下、作業成果物と呼ぶ）や会議等の他の業務工程を考慮しておらず、実際の工数見積作業は前記画面や作業成果物の作成に要する工数が占める割合が大きいため、見積の工数と実際に要した工数との差が大きく、正確な見積を行うことが困難であると言う不具合があった。
【０００４】
本発明の目的は、前述の従来技術による不具合を除去することであり、実際の工数見積に必要な作業成果物他を考慮して見積を行うことができるソフトウェア見積支援システム及び見積支援方法を提供することである。
【課題を解決するための手段】
【０００５】
前記目的を達成するために本発明は、複数の画面及び作業成果物の作成及び複数の工程を実行するソフトウェアの作成に対する見積を支援するソフトウェア見積支援システムにおいて、処理の複雑さと想定規模との対応から想定される複数のステップ数を格納するステップ換算データベースと、複数の作業成果物対応の想定枚数及びステップ数を格納する作業成果物換算データベースと、作業工程毎の生産性を格納した工数換算データベースと、前記各データベースを制御するサーバとを備え、該サーバが、見積対象ソフトウェアの複雑さと想定規模をキーとしてステップ換算データベースを参照して開発対象ステップ数を算出し、該開発対象ステップ数をキーとして作業成果物換算データベースを参照して複数の作業成果物に対応した作業成果物の量を算出し、該作業成果物の量をキーとして工数換算データベースを参照して工数を含む見積を計算することを第１の特徴とし、このソフトウェア見積支援システムにおいて、前記作業成果物換算データベースが、管理作業に対する作業成果物及び又は工数とを含み、前記サーバが、管理作業の工数を含む見積を計算することを第２の特徴とする。
【０００６】
更に本発明は、複数の画面及び作業成果物の作成及び複数の工程を実行するソフトウェアの作成に対する見積を支援するソフトウェア見積支援方法において、処理の複雑さと想定規模との対応から想定される複数のステップ数を格納するステップ換算データベースと、複数の作業成果物対応の想定枚数及びステップ数を格納する作業成果物換算データベースと、作業工程毎の生産性を格納した工数換算データベースとを用意し、見積対象ソフトウェアの複雑さと想定規模をキーとしてステップ換算データベースを参照して開発対象ステップ数を算出する第１ステップと、該第１ステップにより算出した開発対象ステップ数をキーとして作業成果物換算データベースを参照して見積対象ソフトウェアの複数の作業成果物に対応した作業成果物の量を算出する第２ステップと、該第２ステップにより算出した作業成果物の量をキーとして工数換算データベースを参照して工数を含む見積を計算する第３ステップを含むことを第３の特徴とし、このソフトウェア見積支援方法において、前記作業成果物換算データベースが、管理作業に対する作業成果物及び又は工数とを含み、前記第３ステップが管理作業の工数を含む計算を実行することを第４の特徴とする。
【発明の効果】
【０００７】
本発明によるソフトウェア見積支援システム及び見積支援方法は、予め処理の複雑さと想定規模との対応から想定されるステップ数を格納したステップ換算データベースと、複数の作業成果物対応のステップ数及び工数とを格納した作業成果物換算データベースとを用意し、処理の複雑さ／想定規模／作業成果物の種類その他工程の有無を条件とし、前記各データベースを参照することによって、作業成果物他を考慮したソフトウェアの見積を行うことができる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の一実施形態によるソフトウェア見積支援システムを図面を参照して詳細に説明する。図１は本発明の一実施形態によるソフトウェア見積支援システムの全体構成を示す図、図２は本実施形態による見積条件から開発対象規模（ステップ数）を得る工程を説明するための図、図３は前記開発対象規模及び作業成果物を考慮した作業成果物量の算出工程を説明するための図、図４は前記成果物量を考慮した開発工数を得る算出工程を説明するための図、図５は本実施形態によるステップ換算データベース構造を説明するための図、図６は本実施形態による作業成果物量換算データベース構造を説明するための図、図７は本実施形態による工数換算データベース構造を説明するための図、図８は本実施形態による画面枚数等の第１条件の入力画面例を示す図、図９は本実施形態による工数／タスク／作業成果物の選択画面例を示す図である。
【０００９】
<システム構成の説明>
【００１０】
本実施形態によるソフトウェア見積支援システムは、図１に示す如く、見積者が見積の条件等を入力するための見積端末１０と、該見積端末１から入力された見積条件他に応じてソフトウェアの工数見積処理を実行するサーバ１１と、該サーバ１１に接続された見積条件を登録するための見積条件登録テーブル１３と、入力された処理の複雑さ等の条件に応じたステップ数を格納するステップ換算データベース１４と、該ステップ数に応じて作業成果物量（例えば該当書類の枚数やステップ数）を格納する作業成果物換算データベース１５と、前記作業成果物量を開発工数に変換する工数換算データベース１６と、該工数換算データベース１６により換算した開発工数を格納するための見積結果データベース１７と、前記見積結果や各種帳票等を印刷するためのプリンタ１２とを備える
【００１１】
前記ステップ換算データベース１４は、見積端末１０から入力された「処理の複雑さ」レベルと「想定規模」を基に、１画面毎のステップ数（Ｋｓ：キロ単位のステップ数）を格納するものであって、図５に示す如く、例えば複雑さレベルが「メニュー系」且つ想定規模が「小規模」の場合の画面単位の開発対象ステップ数が０．２Ｋｓ、複雑さレベルが「参照系」且つ想定規模が「中規模」の場合の画面単位の開発対象ステップ数が０．７Ｋｓ、複雑さレベルが「更新系」且つ想定規模が「大規模」の場合の画面単位の開発対象ステップ数が２．０Ｋｓ等の情報を格納するものである。
【００１２】
前記複雑さレベルが「メニュー系」とは、単純なメニュー表示で指定されたメニューへ処理を移行するレベルの処理を意味し、「参照系」とは、指定された処理に応じて各種データベースを参照して所定条件のデータを読み出すレベルの処理を意味し、「更新系」とは指定された処理に応じてデータベースを参照し、何等かの処理を実行し、この実行結果を指定されたデータベースに対してデータ更新を行うレベルの処理を意味している。また「想定規模」とは、処理対象とするデータ数／データベース数／処理数に応じた想定されるソフトウエアのステップ数に換算した場合の規模である。即ち、このステップ換算データベース１４は、処理の複雑さレベルと想定規模に応じた１画面当たりに予想されるプログラムの開発対象ステップ数を格納しているものである。
【００１３】
前記作業成果換算データベース１５は、前記ステップ換算データベース１４を用いて算出した開発対象ステップ数に加え、開発期間／開発人員／画面の種類／帳票の種類／テーブル数／バッチ本数とを基に、これら条件に応じた作業成果結果物の量（書類や画面の枚数）に換算するため、作業成果物対応の枚数やステップ数を格納するものであって、例えば図６に示す如く、例えばプログラム処理概要図等の小工程毎の作業成果物と該作業成果物の枚数等（ステップ数のときもある）とを格納するものである。尚、図中のシステム計画等の大工程やプログラム設計書等の中工程は前記小工程の集計であるため本データベース自体には登録されておらず、このため図中に「−−−−」と表記している。
【００１４】
作業成果換算データベース１５に入力される画面の種類／帳票の種類等の情報は、図９に示した選択画面、具体的には、システム設計９ａ／要求定義９ｂ／基本設計９ｃ／詳細設計９ｄ／マニュアル作成９ｅ／プログラム設計９ｆ／コーディング９ｇ／単体テスト９ｈ／組合せテスト９ｉ等の大工程と、該大工程より一段下層な工程、例えばプログラム設計９ｆの下層においては稼働環境の構築９ｆ１／プログラム設計書の作成９ｆ２／プログラム機能階層図の作成９ｆ３等の中工程と、該中工程より一段下層の工程、例えばプログラム処理概要図９ｆ２ａ／プログラム昨日説明図９ｆ２ｂ等の小工程の中から、見積者が必要と思われる書類にチェックマークを付することにより選択的に指定するものである。
【００１５】
前記工数換算データベース１６は、前記作業工程毎の生産性（書類を何枚作成するのに何日を要する／１Ｋｓのプログラムを作成するのに何日を要する等）と対象となる作業成果物との関係を格納するものであって、例えば図７に示す如く、システム計画書の作成には１００枚作成に要する日数が１００日で成果物が設計書であること、コーディングには１Ｋｓ当たり５日を要すること、管理としてプロジェクト管理には開発工数の２％の工数を要する事等の情報が格納されている。特に本実施形態においては、従来技術においては算入し得なかった管理に関する費用も算入している、
【００１６】
<動作説明>
【００１７】
前述の様に構成されたソフトウェア見積支援システムの動作を次に説明する。
【００１８】
本実施形態によるソフトウェア見積支援システムは、まず、図１に示す見積端末１０を用いて見積者が見積の条件を入力し、見積条件登録テーブル１３に当該見積条件を登録する。この見積条件は、前述した「処理の複雑さ」／「画面枚数」／「想定規模」／「開発期間」／「開発人員」／図９において説明した見積を行うソフトウェアに必要な「画面の種類」／「作業成果物（設計書／マニュアルその他）の種類」／例えば開発期間中にプログラマー間の仕様確認等を行うために定期的に開催する「会議の回数（人数含む）」等である。前記「処理の複雑さ」／「画面枚数」／「想定規模」の入力は、例えば図８に示す如く、３種の規模から任意の規模を選択する想定規模８１の欄や、「メニュー系」／「参照系」／「更新系」の各画面の枚数８２の欄を持つ入力画面を用いて入力される。尚、見積条件の入力は、前記見積条件テーブル１３を用いずに見積端末１０又はサーバ１１から順次入力しても良い。
【００１９】
この状態においてサーバ１１は、図２に示す如く、前記見積条件登録テーブル１３から「処理の複雑さ」／「画面枚数」の各条件を読み出し、これら入力条件に従ってステップ換算データベース１４を参照して、入力条件に対する総ステップ数である開発対象ステップ数２１を算出する。この開発対象ステップ数２１は、図８に示す如く、例えば、規模が「中規模」において、「メニュー系」の画面枚数が３枚の場合、０．９Ｋｓ、「参照系」の画面枚数が１０枚の場合、７．０Ｋｓ、「更新系」の数面枚数が２０枚の場合、３２．０Ｋｓ、総計３９．９Ｋｓの如く算出される。
【００２０】
次にサーバ１１は、図３に示す如く、前記算出した開発対象ステップ数２１／開発期間／開発人員／図９の画面を用いて指定された成果物（設計書等）である画面や帳票の種類その他の条件を入力し、作業成果物換算データベース１５を参照し、前記入力条件とデータベース１５を基に、小工程の作業工数に対応した作業成果物と該作業成果物の枚数やステップ数を検索し、これら小工程毎の作業成果物に対応した枚数等を集計して中工程及び大工程の作業成果物量２３を算出する。
【００２１】
次いでサーバ１１は、図４に示す如く、前記算出した作業成果物量２３と工数換算データベース１６に格納された作業工程毎の生産性（単位枚数又はステップ数当たりに要する日数）とを入力し、複数の作業成果物対応の所要日数を含む開発工数２５を算出し、前記入力及び算出した情報を基に見積結果を算出し、見積結果データベース１７に格納する。
【００２２】
この見積結果は、複数の作業成果物に対応した枚数（又はステップ数）や人月（又は人日）のリスト及び集計値であり、例えばシステム計画書は８０枚／１．３人月、基本設計書は２５０枚／４．２人月、コーディングの対象は５７Ｋｓ／１０人日等のリストが含まれる。
【００２３】
この様に本実施形態によるソフトウェア見積支援システム及び支援方法は、予め処理の複雑さと想定規模との対応から想定されるステップ数を格納したステップ換算データベース１４と、複数の作業成果物対応の想定枚数（及びステップ数）を格納した作業成果物換算データベース１５と、作業工程毎の生産性を格納した工数換算データベース１６とを用意し、サーバ１１が、処理の複雑さ／想定規模／作業成果物の種類を条件とし、前記データベース１４〜１６を参照することによって、作業成果物その他条件を考慮した実際の工数見積に必要な見積を行うことができる。
【００２４】
更に本実施形態においては、作業成果物換算データベース１５に工数（人日／枚）を登録しておくことによって、必要とする作業者の人数等の見積を行うことができ、更に作業成果物換算データベースに会議回数も含む管理作業に関する工数や作業成果物（議事録）を含ませることによって、管理作業工数を含む見積を計算することができる。
【産業上の利用可能性】
【００２５】
本発明によるソフトウェア見積支援システム及び見積支援方法は、ソフトウェア開発における工数の見積を作業成果物である画面数や書類数を考慮して支援することができる。
【図面の簡単な説明】
【００２６】
【図１】本発明の一実施形態によるソフトウェア見積支援システムの全体構成を示す図。
【図２】本実施形態による見積条件から開発対象規模（ステップ数）を得る工程を説明するための図。
【図３】前記開発対象規模及び作業成果物を考慮した作業成果物量の算出工程を説明するための図。
【図４】前記成果物量を考慮した開発工数の算出工程を説明するための図。
【図５】本実施形態によるステップ換算データベース構造を説明するための図。
【図６】本実施形態による作業成果物量換算データベース構造を説明するための図。
【図７】本実施形態による工数換算データベース構造を説明するための図。
【図８】本実施形態による画面枚数等の第１条件の入力画面例を示す図。
【図９】本実施形態による工数／タスク／作業成果物の選択画面例を示す図。
【符号の説明】
【００２７】
１０：見積端末、１１：サーバ、１２：プリンタ、１３：見積条件登録テーブル、１４：ステップ換算データベース、１５：作業成果物換算データベース、１６：工数換算データベース、１７：見積結果データベース、２１：開発対象規模、２３：作業成果物量、２５：開発工数、８１：想定規模、８２：枚数。
【図１】
2005032054.tif 000003
【図２】
2005032054.tif 000004
【図３】
2005032054.tif 000005
【図４】
2005032054.tif 000006
【図５】
2005032054.tif 000007
【図６】
2005032054.tif 000008
【図７】
2005032054.tif 000009
【図８】
2005032054.tif 000010
【図９】
2005032054.tif 000011