(57)【要約】【課題】  ソフトウェア開発管理に必要な作業実績データ及び成果物規模データを、自動生成ツールによって自動的に収集及び保管することを可能とする等。【解決手段】  自動生成装置１０は、入力データ１３に基づきソフトウェアの成果物３０を自動生成する。このとき、作業実績収集手段２１は入力データ１３に基づき作業実績データ２１を収集し、成果物規模収集手段１５は成果物３０に基づき成果物規模データ２２を収集する。したがって、ソフトウェア開発管理に必要な作業実績データ２１及び成果物規模データ２２が、自動的に収集及び保管される。また、入力データ１３によって作業内容も決まるので、作業内容に対応付けて成果物規模データ２２を収集することにより、どのような種類の作業をどのくらいの時間をかけて行っているのかを収集することも可能である。【選択図】  図１
2005309855.tif 000002
【特許請求の範囲】
【請求項１】
仕様データからソフトウェアの成果物を自動生成するソフトウェア自動生成ツールに用いられ、
入力された前記仕様データに基づき作業実績データを収集する作業実績収集手段と、
生成された前記成果物に基づき成果物規模データを収集する成果物規模収集手段と、
を備えた作業実績及び成果物規模管理装置。
【請求項２】
前記作業実績収集手段によって収集された作業実績データと前記成果物規模収集手段によって収集された成果物規模データとからなる管理データに基づき、所定の管理ルールに従って各種管理分析情報を生成する分析情報生成手段を、
更に備えた請求項１記載の作業実績及び成果物規模管理装置。
【請求項３】
前記ソフトウェア自動生成ツールが実装非依存仕様のソフトウェアから実装依存仕様のソフトウェアを自動生成するものである、
請求項１又は２記載の作業実績及び成果物規模管理装置。
【請求項４】
仕様データからソフトウェアの成果物を自動生成するソフトウェア自動生成ツールに用いられるプログラムであって、
入力された前記仕様データに基づき作業実績データを収集する作業実績収集手段、及び生成された前記成果物に基づき成果物規模データを収集する成果物規模収集手段、
としてコンピュータを機能させるためのプログラム。
【請求項５】
前記作業実績収集手段によって収集された作業実績データと前記成果物規模収集手段によって収集された成果物規模データとからなる管理データに基づき、所定の管理ルールに従って各種管理分析情報を生成する分析情報生成手段、
として前記コンピュータを更に機能させるための請求項４記載のプログラム。
【請求項６】
前記ソフトウェア自動生成ツールが実装非依存仕様のソフトウェアから実装依存仕様のソフトウェアを自動生成するものである、
請求項４又は５記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仕様データからソフトウェアの成果物を自動生成するソフトウェア自動生成ツールに用いられる、作業実績及び成果物規模管理装置等に関する。
【背景技術】
【０００２】
ソフトウェア開発プロジェクトにおいては、開発作業工程への入力である開発担当者の作業の作業実績と、出力である成果物の規模とに関する定量的な情報を収集することにより、プロジェクトの進捗状況の管理を行うことが重要である。従来は、作業者が各自の担当作業の作業実績及び成果物を開発作業とは別の手段で入力し、その報告結果を集計する進捗管理方式が一般的であった。しかし、ソフトウェア開発における作業と作成される成果物とは多岐にわたることから、データの入力及び集計に時間がかかりすぎたり、全ての作業を収集しきれなかったりするという問題があった。
【０００３】
一方、特許文献１には、プログラムの設計、製造及び試験の各工程で、プログラム作成ツールが起動されている稼動時間を稼動実績として収集する技術が開示されている。
【０００４】
【特許文献１】特開平７−２３０５０１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１の技術は、開発ツールが作業実績を収集する仕組みであっても、開発ツール上で行った作業内容に関するデータを収集する手段がない。そのため、開発ツールを起動して実際に作業をしているのか否かを検出することができない。また、開発ツール上において、どのような種類の作業をどのくらいの時間をかけて行っているのか、を収集することができない。
【０００６】
そこで、本発明の目的は、ソフトウェア開発管理に必要な作業実績データ及び成果物規模データを、自動生成ツールによって自動的に収集及び保管することを可能とし、しかも自動生成ツール上においてどのような種類の作業をどのくらいの時間をかけて行っているのかを収集することも可能とする、作業実績及び成果物規模管理装置等を提供することにある。
【課題を解決するための手段】
【０００７】
本発明に係る作業実績及び成果物規模管理装置は、仕様データからソフトウェアの成果物を自動生成するソフトウェア自動生成ツールに用いられるものである。そして、本発明に係る作業実績及び成果物規模管理装置は、入力された前記仕様データに基づき作業実績データを収集する作業実績収集手段と、生成された前記成果物に基づき成果物規模データを収集する成果物規模収集手段と、を備えている。「仕様データ」によって、その仕様を実現するための作業内容も決まる。ここで「成果物」とは、プロジェクト計画策定時に作成、開発及び製造が計画された上で作られる物をいう。「成果物規模データ」とは、例えばステップ数などである。
【０００８】
ソフトウェア自動生成ツールは、入力された仕様データに基づき、ソフトウェアの成果物を自動生成する。このとき、作業実績収集手段は入力された仕様データに基づき作業実績データを収集し、成果物規模収集手段は生成された成果物に基づき成果物規模データを収集する。したがって、ソフトウェア開発管理に必要な作業実績データ及び成果物規模データが、自動的に収集及び保管される。また、入力された仕様データによって作業内容も決まるので、作業内容に対応付けて成果物規模データを収集することにより、どのような種類の作業をどのくらいの時間をかけて行っているのかを収集することも可能である。
【０００９】
また、前記作業実績収集手段によって収集された作業実績データと前記成果物規模収集手段によって収集された成果物規模データとからなる管理データに基づき、所定の管理ルールに従って各種管理分析情報を生成する分析情報生成手段を、更に備えた構成としてもよい。この各種管理分析情報は、例えば、作業進捗状況、平均作業時間、個人別の作業時間合計、作業時間に対する成果物規模（生産性）などである。
【００１０】
更に、前記ソフトウェア自動生成ツールは、実装非依存仕様のソフトウェアから実装依存仕様のソフトウェアを自動生成するものとしてもよい。実装とは、ソフトウェアに新しい機能や仕様を組み込むことをいう。例えば、ソフトウェア開発においてプログラム中に新しい関数を作成することを「新しい関数を実装する」と言う。実装はシステム構築を設計と開発の二つに分けた場合の後半の段階に相当し、基本的には設計段階で決定された仕様を元に機能を組み込んでいく作業となる。しかし、仕様書があいまいだったりする場合には現場の解釈で実際の動作が決められてしまう場合もあり、この結果、同じ仕様書から作成されたプログラム同士の間に相互運用性がない、といった事態が発生することがある。このように、同じ仕様に基づいていながら実際の動作がソフトウェアごとに微妙に異なっている状態が実装の違いであり、特定のソフトウェアが採用した独自の実装と組み合わせないと動作しないソフトウェアを「実装に依存したソフトウェア」などと呼ぶ。
【００１１】
本発明に係るプログラムは、本発明に係る作業実績及び成果物規模管理装置の各手段として、コンピュータを機能させるためのものである。
【発明の効果】
【００１２】
本発明によれば、入力された仕様データに基づきソフトウェアの成果物を自動生成するときに、入力された仕様データに基づき作業実績データを収集し、生成された成果物に基づき成果物規模データを収集することにより、ソフトウェア開発管理に必要な作業実績データ及び成果物規模データを自動的に収集及び保管できる。また、仕様データによって作業内容が決まるので、作業内容に対応付けて成果物規模データを収集することにより、どのような種類の作業をどのくらいの時間をかけて行っているのかを収集できる。つまり、特許文献１の技術では開発ツールの稼動実績と作業規模とを収集するにとどまっていたのに対して、本発明によれば、開発ツール上でどのような種類のどのような作業をどのくらいの時間をかけて行っているのかを収集することができ、より高精度のプロジェクト管理情報を収集することができる。
【００１３】
換言すると、本発明によれば、作業実績データ及び成果物規模データを自動収集することにより、作業者の作業負荷を軽減できる。また、ソフトウェア開発プロジェクトを管理するためのデータを、即時に高精度で収集できる。その理由は、従来手作業で行っていたソフトウェア開発プロジェクトを管理するための事実データの収集を自動化し、開発作業と同時に収集することができるためである。
【発明を実施するための最良の形態】
【００１４】
次に、本発明の実施形態について図面を参照して詳細に説明する。ただし、特許請求の範囲における「作業実績及び成果物規模管理装置」、「ソフトウェア自動生成ツール」、「作業実績収集手段」、「成果物規模収集手段」及び「分析情報生成手段」は、それぞれ「管理装置」、「自動生成装置」、「作業実績収集装置」、「成果物規模収集装置」及び「分析情報生成装置」と言い換えるものとする。
【００１５】
図１は、本発明に係る管理装置の第一実施形態を示す機能ブロック図である。以下、この図面に基づき説明する。
【００１６】
本実施形態の管理装置は、仕様データからソフトウェアの成果物を自動生成する自動生成装置１０に用いられる。そして、本実施形態の管理装置は、入力された仕様データ（入力データ１３）に基づき作業実績データ２１を収集する作業実績収集装置１２と、生成された成果物３０に基づき成果物規模データ２２を収集する成果物規模収集装置１５とを備えている。
【００１７】
図１には、ソフトウェア開発に携わる作業者Ｍと、自動生成装置１０と、管理データ保管装置２０と、開発の成果物３０とが示されている。自動生成装置１０は、ソフトウェアの仕様を入力する仕様入力装置１１と、作業実績を収集する作業実績収集装置１２と、入力データ１３から成果物３０を自動生成する生成装置１４と、成果物生成時に成果物の規模データを収集する成果物規模収集装置１５とから構成される。管理データ保管装置２０は、作業実績データ２１と成果物規模データ２２とを格納する。なお、自動生成装置１０の各ブロックの機能は、プログラムによってコンピュータ上に実現されている。
【００１８】
図２は、図１の管理装置の動作を示すシーケンスチャートである。以下、図１及び図２に基づき、本実施形態の動作を説明する。
【００１９】
まず、作業者Ｍは仕様入力装置１１にLoginを行う（ステップＳ１）。すると、仕様入力装置１１は、Loginされたことを作業実績収集装置１２へ通知する（ステップＳ２）。Login通知を受けた作業実績収集装置１２は、Loginをした作業者Ｍ及び作業開始日時のデータを管理データ保管装置２０へ送信する（ステップＳ３）。続いて、管理データ保管装置２０は、作業実績収集装置１２から受信したLoginデータを、作業実績データ２１に記録する（ステップＳ４）。一方、作業者Ｍが仕様入力装置１１で入力を開始すると、仕様入力装置１１が入力通知を作業実績収集装置１２へ通知する（ステップＳ５）。入力通知を受けた作業実績収集装置１２は、作業開始を記録する（ステップＳ６）。
【００２０】
続いて、作業者Ｍが仕様入力装置１１でデータを入力をすると、仕様入力装置１１はその入力データを作業実績収集装置１２へ通知する（ステップＳ７）。すると、作業実績収集装置１２は、通知された入力データと前回記録された作業開始の作業内容とを比較し、異なる作業内容か否かを判定する（ステップＳ８）。続いて、作業実績収集装置１２は、作業内容が異なる場合に、作業実績データを作成して管理データ保管装置２０へ送信する（ステップＳ９）。続いて、管理データ保管装置２０は、作業実績収集装置１２から受信した作業実績データを、作業実績データ２１に記録する（ステップＳ１０）。このように、仕様入力装置１１での作業者Ｍの入力データが逐次作業実績装置１２へ通知されることにより、管理データ保管装置２０に作業実績が記録される。
【００２１】
続いて、作業者Ｍは、仕様入力装置１１で入力した仕様データに基づき、成果物の生成を行う（ステップＳ１１）。成果物の生成指示を受けた生成装置１４は、成果物を生成し、成果物規模収集装置１５へ生成実施の通知をする（ステップＳ１２）。通知を受けた成果物規模収集装置１５は、生成された成果物の規模データを測定して管理データ保管装置２０へ送信する（ステップＳ１３）。管理データ保管装置２０は、成果物規模収集装置１５から受信した生成実績及び成果物規模データを、成果物規模データ２２に記録する（ステップＳ１４）。
【００２２】
最後に、作業者Ｍが仕様入力装置１１でLogoutを行うと（ステップＳ１５）、仕様入力装置１１はLogoutを作業実績収集装置１２へ通知する（ステップＳ１６）。Logout通知を受けた作業実績収集装置１２は、作業者Ｍ、作業終了日時等のLogoutデータを管理データ保管装置２０へ送信する（ステップＳ１７）。管理データ保管装置２０は、作業実績収集装置１２から受信したLogoutデータを、作業実績データ２１に記録する（ステップＳ１８）。
【００２３】
次に、本実施形態の効果について説明する。
【００２４】
自動生成装置１０は、入力データ１３に基づきソフトウェアの成果物３０を自動生成する。このとき、作業実績収集手段２１は入力データ１３に基づき作業実績データ２１を収集し、成果物規模収集手段１５は成果物３０に基づき成果物規模データ２２を収集する。したがって、ソフトウェア開発管理に必要な作業実績データ２１及び成果物規模データ２２が、自動的に収集及び保管される。また、入力データ１３によって作業内容が決まるので、作業内容に対応付けて成果物規模データ２２を収集することにより、どのような種類の作業をどのくらいの時間をかけて行っているのかを収集することも可能である。
【００２５】
換言すると、本実施形態では、作業者Ｍが仕様入力装置１１にLoginを行い、仕様入力装置１１で仕様データを入力する時に作業実績収集装置１２で作業実績を収集し、管理データ保存装置２０で作業実績データを作業者情報とともに、作業実績データ２１に保管するように構成されている。そのため、作業実績の収集を作業者Ｍの作業実施と同時に自動的に実施することができ、作業実績データ入力の人手作業による誤りを防ぐことができ、管理データの精度の向上及び人件費の効率化も実現できる。また、生成装置１４で、成果物の生成を行うときに、成果物の規模の情報を、成果物規模収集装置１５で収集し、管理データ保管装置２０で、成果物規模データ２２に保管するように構成されているため、成果物規模の収集を成果物が作成された時点で自動的に実施することができ、管理データ収集の人手作業による誤りを防ぐことができ、管理データの精度の向上及び人力作業の効率化も実現できる。
【００２６】
図３は、本発明に係る管理装置の第二実施形態を示す機能ブロック図である。以下、この図面に基づき説明する。ただし、図１と同じ部分は同じ符号を付すことにより説明を省略する。
【００２７】
本実施形態の管理装置は、分析情報生成装置４１を有する管理分析情報生成装置４０が具備されている。分析情報生成装置４１は、作業実績収集装置１２によって収集された作業実績データ２１と成果物規模収集装置１５によって収集された成果物規模データ２２とからなる管理データに基づき、所定の管理ルール４２に従って各種管理分析情報５０を生成する。
【００２８】
換言すると、管理ルール４２は、管理データを加工及び編集するルールが記述されたものである。分析情報生成装置４１は、管理ルール４２を元に、各種管理分析情報５０を生成する。これらは、管理データ保管装置２０に格納された管理データ（作業実績データ２１及び成果物規模データ２２）を、一定の管理ルール４２に基づいて変換し、ソフトウェア開発プロジェクト管理に必要な各種管理分析情報５０の作成を自動化する手段を提供する。各種管理分析情報５０は、例えば、作業進捗状況、平均作業時間、個人別の作業時間合計、作業時間に対する成果物規模（生産性）などが挙げられる。
【００２９】
図４は、本発明に係る管理装置の第三実施形態を示す機能ブロック図である。以下、この図面に基づき説明する。ただし、図１と同じ部分は同じ符号を付すことにより、図１に準ずる部分は上二桁に同じ符号を付すことにより、それぞれ説明を省略する。
【００３０】
本実施形態では、実装非依存仕様（ＰＩＭ：Platform Independent Model）から実装依存仕様（ＰＳＭ：Platform Specific Model）を生成する自動生成装置１０１と、実装依存仕様から実行可能なソースコードを生成するＰＳＭ自動生成装置１０２とを組み合わせた例である。
【００３１】
図４には、ソフトウェア開発に携わる作業者Ｍ１，Ｍ２と、ＰＩＭ自動生成装置１０１と、ＰＳＭ自動生成装置１０２と、管理データ保管装置２０と、開発の成果物であるＰＳＭデータ３０１及びソースコード３０２とが示されている。ＰＩＭ自動生成装置１０１は、ソフトウェアの仕様を入力するＰＳＭ入力装置１１１と、作業実績を収集する作業実績収集装置１２１と、入力データ１３１からＰＳＭデータ３０１を自動生成するＰＳＭデータ生成装置１４１と、成果物生成時に成果物の規模データを収集する成果物規模収集装置１５１とから構成される。ＰＳＭ自動生成装置１０２は、ソフトウェアの仕様を入力するＰＳＭ入力装置１１２と、作業実績を収集する作業実績収集装置１２２と、入力データ１３２からソースコード３０２を自動生成するソースコード生成装置１４２と、成果物生成時に成果物の規模データを収集する成果物規模収集装置１５２とから構成される。
【００３２】
このように、多段階の自動生成装置を用いた開発方式に本発明を適用することにより、ソフトウェア開発プロセスのより広範囲の管理データを自動的に収集することができる。
【産業上の利用可能性】
【００３３】
本発明によれば、ソフトウェア自動生成ツールを用いたソフトウェア開発プロジェクトにおいて、作業実績及び開発規模といったプロジェクト管理用データを、特に大規模プロジェクトにおいて、迅速かつ正確にしかも安価に収集する用途に適用できる。
【図面の簡単な説明】
【００３４】
【図１】本発明に係る管理装置の第一実施形態を示す機能ブロック図である。
【図２】図１の管理装置の動作を示すシーケンスチャートである。
【図３】本発明に係る管理装置の第二実施形態を示す機能ブロック図である。
【図４】本発明に係る管理装置の第三実施形態を示す機能ブロック図である。
【符号の説明】
【００３５】
Ｍ  作業者
１０  自動生成装置
１１  仕様入力装置
１２  作業実績収集装置
１３  入力データ
１４  生成装置
１５  成果物規模収集装置
２０  管理データ保管装置
２１  作業実績データ
２２  成果物規模データ
３０  成果物
【図１】
2005309855.tif 000003
【図２】
2005309855.tif 000004
【図３】
2005309855.tif 000005
【図４】
2005309855.tif 000006