JP2005078119A - ソフトウェア開発支援装置およびソフトウェア開発支援方法およびプログラムおよび記録媒体 - Google Patents

ソフトウェア開発支援装置およびソフトウェア開発支援方法およびプログラムおよび記録媒体 Download PDF

Info

Publication number
JP2005078119A
JP2005078119A JP2003209760A JP2003209760A JP2005078119A JP 2005078119 A JP2005078119 A JP 2005078119A JP 2003209760 A JP2003209760 A JP 2003209760A JP 2003209760 A JP2003209760 A JP 2003209760A JP 2005078119 A JP2005078119 A JP 2005078119A
Authority
JP
Japan
Prior art keywords
input
information
specification information
item
software 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
Application number
JP2003209760A
Other languages
English (en)
Inventor
Hiroyuki Nakagawa
裕之 中川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon IT Solutions Inc
Original Assignee
Canon Software Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Software Inc filed Critical Canon Software Inc
Priority to JP2003209760A priority Critical patent/JP2005078119A/ja
Publication of JP2005078119A publication Critical patent/JP2005078119A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】ソフトウェアを生成するための仕様情報のうち、いずれかの仕様情報に仕様変更が発生した場合でも、波及関係のある他の仕様情報を容易に編集し、仕様変更に対する対応漏れを確実に防止し、開発保守作業の効率を大幅に向上させること。
【解決手段】関連情報生成部106が、予め作成されるソフトウェアを生成するための複数の仕様情報に基づいて、前記各仕様情報間の参照関係を示す参照関係情報(波及関係情報110)を生成し、変更波及解析表示部117が、前記生成された参照関係情報に基づく逆参照入出力一覧表示を行い、該逆参照入出力一覧表示から特定の仕様情報を指定して業務仕様記述部116により編集する構成を特徴とする。
【選択図】 図1

Description

【0001】
【発明の属する技術分野】
本発明は、ソフトウェア開発における仕様書間の関連付けを行うソフトウェア開発支援装置およびソフトウェア開発支援方法およびプログラムおよび記録媒体に関するものである。
【0002】
【従来の技術】
ソフトウェア開発において、仕様の一部に変更が発生した場合、その構成要素に関連した仕様を特定するため、仕様書間の関連情報が必要である。
【0003】
従来の仕様書間の関連付けの方法として、各工程で作成する仕様書の各々の細粒度項目に対して識別子を与え、それら項目間の関連性の有無を示すクロスリファレンス表を作成して、関連情報を管理する方法がある。
【0004】
しかし、この方法は、クロスリファレンスを人手で作成し、項目間の関連が変更されたとき、クロスリファレンス表を再度人手で作成する必要があった。
【0005】
これに対し、特開2003−140894公報(特許文献1)では、プログラム機能関連図から、各種仕様書と仕様書間の関連情報、波及関係情報を自動生成する方法が記載されている。
【0006】
このプログラム機能関連図とは、開発対象の業務システムを構成するプログラム、データ、表示画面を構成要素とし、これら構成要素間のデータの入出力関係を記述した図を示すものである。
【0007】
【特許文献1】
特開2003−140894公報
【0008】
【発明が解決しようとする課題】
しかしながら、上記特許文献1における仕様書間の関連情報の管理方法では、各種仕様書と波及関係情報は、上述したプログラム機能関連図から自動生成される構成となっているが、上述プログラム機能関連図自体については、仕様変更の度に、人手により変更しなければならず、煩雑で非効率的であった。
【0009】
また、上述したように、プログラム機能関連図は、プログラム、データ、表示画面を構成要素とするため、プログラム機能関連図の作成・変更は、システム全体を把握しているものでなければ困難であった。
【0010】
さらに、プログラム機能関連図から自動生成される波及関係情報については、その結果情報が表示出力されるのみで、仕様変更作業,プログラムコード生成といった開発保守作業支援との連携についてはなんら考慮なされていない。
【0011】
そのため、波及関係情報を表示出力した後、波及関係情報の表示とは異なるシステムを利用して、仕様変更作業、プログラムコード生成等の保守作業を独立に行う必要があり、非効率的であるとともに、仕様変更に対する対応漏れを起こしやすいという問題点があった。
【0012】
本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、予め作成されるソフトウェアを生成するための複数の仕様情報に基づいて、前記各仕様情報間の関連情報(例えば、参照関係を示す参照関係情報)を生成し、該生成された関連情報に基づく表示を行い、該表示から特定の仕様情報を指定して編集することにより、ソフトウェアを生成するための複数の仕様情報のうち、いずれかの仕様情報に仕様変更が発生した場合でも、容易に波及関係のある他の仕様情報を指定して編集することができ、業務仕様の枠組みの中で、仕様書間の関連を自動検索でき、仕様変更に対する対応漏れを確実に防止することができ、開発保守作業の効率を大幅に向上させることができるソフトウェア開発支援装置およびソフトウェア開発支援方法およびプログラムおよび記録媒体を提供することである。
【0013】
【課題を解決するための手段】
本発明の第1の発明は、ソフトウェアを生成するための複数の仕様情報を記憶可能な記憶手段(図1に示す外部記憶装置104内の入出力テーブルに格納される業務処理情報(図10))と、前記記憶手段に記憶される各仕様情報に基づいて、前記各仕様情報間の参照関係を示す参照関係情報を生成する第1の生成手段(図1に示す関連情報生成部106,図12)と、前記第1の生成手段により生成される参照関係情報(図13,図14)に基づいて特定の仕様情報を指定して編集可能な編集手段(図1に示す業務使用記述部116,図15に示す項目逆参照入出力一覧1500内の編集ボタン1501の押下により表示される図5,図16に示すファイル逆参照入出力一覧1600内の編集ボタン1601の押下により表示される図6)とを有することを特徴とする。
【0014】
本発明の第2の発明は、前記第1の生成手段により生成される参照関係情報に基づく表示を行う表示手段(図15に示す項目逆参照入出力一覧,図16に示すファイル逆参照入出力一覧1600)を設けたことを特徴とする。
【0015】
本発明の第3の発明は、前記編集手段は、前記表示手段による表示から特定の仕様情報を指定して編集可能(図15に示す項目逆参照入出力一覧1500内の編集ボタン1501の押下により表示される図5,図16に示すファイル逆参照入出力一覧1600内の編集ボタン1601の押下により表示される図6)なことを特徴とする。
【0016】
本発明の第4の発明は、前記表示手段は、前記第1の生成手段により生成された参照関係情報に基づいて、特定の仕様情報に対して参照関係にある仕様情報の一覧を表示する(図16に示すファイル逆参照入出力一覧1600)ことを特徴とする。
【0017】
本発明の第5の発明は、前記仕様情報は、複数の項目により定義されるものであり、前記表示手段は、前記第1の生成手段により生成された参照関係情報に基づいて、特定の項目に対して参照関係にある項目の一覧を表示する(図15に示す項目逆参照入出力一覧1500)ことを特徴とする。
【0018】
本発明の第6の発明は、前記記憶手段に記憶される各仕様情報に基づいてアプリケーションプログラムを生成する第2の生成手段(図1に示すコード生成部107,図23〜図27)を設けたことを特徴とする。
【0019】
本発明の第7の発明は、前記第2の生成手段は、前記編集手段により編集された仕様情報に基づいてアプリケーションプログラムを生成可能(図5に示す生成ボタン511,図6に示す生成ボタン708によりコード生成指示可能)なことを特徴とする。
【0020】
本発明の第8の発明は、前記仕様情報は、複数のデータ項目のデータベースへの配置を示す情報により定義される第1の仕様情報(ファイル項目(IO区分=「F」)から構成されるデータファイル),前記第1の仕様情報内のデータ項目に紐付けられた項目を含む複数の項目により定義される第2の仕様情報(入出力項目(IO区分=「D」)から構成されるデータファイル)を含むものであり、前記第1の生成手段は、前記第1の仕様情報と前記第2の仕様情報間の参照関係を示す参照関係情報を生成することを特徴とする。
【0021】
本発明の第9の発明は、前記第2の生成手段は、前記仕様情報に基づいて、前記第1の仕様情報で定義された各データ項目に対応したデータベースの作成(図23のステップS403,図24)、並びに前記データベースへのアクセスを行うための第1のプログラムの生成(図23のステップS404,図25),前記第2の仕様情報で定義された各項目の入出力画面を表示するための第2のプログラムの生成(図23のステップS406,図26)、及び前記入出力画面からの入力情報を取得して該入力情報に基づいて前記第1のプログラム及び第2のプログラムの実行を制御するための第3のプログラムの生成(図23のステップS405,図25)をそれぞれ行うことを特徴とする。
【0022】
本発明の第10の発明は、ソフトウェアを生成するための複数の仕様情報に基づいて、前記各仕様情報間の参照関係を示す参照関係情報を生成する生成工程(図12)と、該生成された参照関係情報に基づく表示を行う表示工程(図11のステップS207,S208)と、該表示から特定の仕様情報を指定して編集する編集工程(図11のステップS208からステップS201へ移行する行程)とを有することを特徴とする。
【0023】
本発明の第11の発明は、第10の発明に記載されたソフトウェア開発支援方法を実行するためのプログラムであることを特徴とするプログラム。
【0024】
本発明の第12の発明は、第10の発明に記載されたソフトウェア開発支援方法を実行するためのプログラムを記録媒体にコンピュータが読み取り可能に記憶させたことを特徴とする。
【0025】
【発明の実施の形態】
以下、図を参照して本発明のアプリケーション開発システムについて説明する。
【0026】
図1は、本発明の一実施形態を示すソフトウェア開発支援装置の構成を示すブロック図である。
【0027】
図において、101は入力装置で、キーボードやマウス等のポインティングデバイス等に相当し、業務仕様情報(データ項目のデータベースへの配置とデータ項目間の関係を示すファイル定義,画面に対して入出力するデータ項目を示す入出力定義)や、業務パターン(画面表示パターンと該画面表示パターンに付随したロジックの組み合わせを規定したもの)の選択等を行うことが可能である。
【0028】
102は表示装置で、CRT,LCD等で構成され、業務仕様情報,業務パターンの選択情報の入力画面や、該入力画面から入力された業務仕様情報や業務パターン選択情報、生成されたプログラムコード等を表示可能である。104はハードディスク等の外部記憶装置で、入力された業務仕様を記憶するための入出力テーブル109(後述する図10)、波及関係情報110(後述する図13,図14)、業務パターン選択情報111、生成されたプログラムコード(JSPコード112,サーブレット(Servlet)コード113,Beanコード114)等を記憶するものである。
【0029】
103は処理装置で、CPU,ROM,RAM等から構成され、CPUがROM,外部記憶装置104又はその他の記録媒体に格納されるプログラムをRAM上にロードして実行することにより実現されるものであり、画面制御部105,コード生成部107を備える。
【0030】
画面制御部105は、入力装置101から業務仕様情報の入力を行うために表示装置102の画面(後述する図4〜図9)を制御する業務仕様記述部116と、波及関係情報110を解析し変更波及一覧画面の表示を行うために表示装置102の画面(後述する図15に示す項目逆参照入出力一覧1500,図16に示すファイル逆参照入出力一覧1600)を制御する変更波及解析表示部117とを有する。
【0031】
関連情報生成部106は、入力装置101から入力され外部記憶装置104内の入出力テーブル109に業務仕様情報が記憶されると、該記憶された業務仕様情報に基づいて波及関係情報110の生成及び格納を行う。コード生成部107は、外部記憶装置104内の入出力テーブル109に記憶された業務仕様情報,業務パターン選択情報111に基づいてプログラムコード(JSPコード112,サーブレット(Servlet)コード113,Beanコード114)を生成し、外部記憶装置104に記憶させる。また、コード生成部107は、外部記憶装置104内の入出力テーブル109から読み出された業務仕様情報に基づいて図示しないデータベースシステムに対してデータベース(DB)を作成する。
【0032】
108は全体制御部で、画面制御部105,コード生成部107等の各部の制御を行う。
【0033】
図2は、図1に示したコード生成部107によって生成したサーブレット、JSP、およびBeanを利用したウェブアプリケーションシステムの全体構成の一例を示す図である。
【0034】
コード生成部107によって生成されたサーブレット、JSP、およびBeanは、それぞれ実行可能な状態で、サーバ304側のアプリケーションサーバ306上に配置される。
【0035】
このWebアプリケーションシステムは、クライアント301からウェブブラウザ302によって利用される。ウェブブラウザ302からJSP309にアクセスすることにより、HTMLページを生成し、クライアント301側に返送する。そして、ウェブブラウザ302上には、JSP309から送信されるHTMLページ303が表示される。
【0036】
また、Webブラウザ302からのリクエストは、HTTP経由でサーバ304側に送信される。サーバ304にはHTTPサーバ305とアプリケーションサーバ306があり、アプリケーションサーバ306にはサーブレットやJSPの実行環境が含まれている。
【0037】
サーバ304側にリクエストが送信されると、リクエストに応じて該当するサーブレット307が起動される。サーブレット307は、対応するBean308に処理を要求する。さらに、Bean308はDBアクセスオブジェクト310を利用してデータベース311にアクセスし、業務に関する処理やデータ加工などを行い、その処理結果を保持する。DBアクセスオブジェクト310は、業務を分析、設計した結果、作成されるクラスや、再利用可能な既存のクラスである。
【0038】
次に、サーブレット307からJSP309にBean308を渡し、JSP309を呼び出す。JSP309は、Bean308で保持する処理結果を参照して、HTMLページを生成し、クライアント301側に返送する。クライアント301側に返送されたHTMLページは、Webブラウザ302上に表示される。
【0039】
サーブレット307は、Webブラウザ302からのリクエストの受け付け、Bean308への処理要求、およびJSP309の呼び出しという、それぞれの間をつなぎ、制御する役割を持つ。JSP309はHTMLページを出力するための表示に関することを受け持ち、Bean308はデータベース311へのアクセス等の業務に関する処理を受け持つ。Bean308やJSP309を利用せず、サーブレット307のみでWebブラウザ302からのリクエストを処理することは可能であるが、Bean308やJSP309を利用することでそれぞれの役割を明確に分離することで、機能分担を簡潔に把握することができる。
【0040】
図3は、本発明のソフトウェア開発支援装置における第1の制御処理手順の一例を示すフローチャートであり、図1に示した処理装置103の全体制御部108の動作に対応する。なお、S101〜S105は各ステップを示す。
【0041】
図1に示した処理装置103は、コード生成する業務仕様(入出力テーブル)の入力や業務パターンの選択を行う入力モードと、入力された業務仕様(入出力テーブル)や業務パターン選択情報からプログラムコードを生成する生成モードとを有する。
【0042】
まず、全体制御部108が起動されると、ステップS101において、入力装置101からオペレータの指示により選択されたモードが生成モードか入力モードかを判定し、入力モードが選択されたと判定した場合には、ステップS102に進み、全体制御部108は、画面制御部105を起動する。
【0043】
起動された画面制御部105は、ステップS103において、業務仕様記述部116を起動して業務仕様入力画面(不図示)を表示させ、生成するウェブアプリケーションのアプリケーション名,オペレータからの業務仕様の一形態である入出力テーブルへの項目入力を受け付け、該入出力テーブルを外部記憶装置104に格納する。また、フローチャートには図示しないが、入出力テーブルが更新されると、全体制御部108は、関連情報生成部106を起動し、該起動された関連情報生成部106は波及関係情報110を生成し外部記憶装置104に格納する。さらに、業務仕様記述部117は、ユーザからの指示に応じて、変更波及解析表示部117を起動させる。該起動された変更波及解析表示部117は逆参照入出力一覧(後述する図15に示す項目逆参照入出力一覧1500,図16に示すファイル逆参照入出力一覧1600)を表示させる。
【0044】
なお、業務仕様記述部116による業務仕様入力処理については、後述する図11,図12に示すフローチャートで詳細に説明する。
【0045】
一方、ステップS101において、入力装置101からオペレータの指示により選択されたモードが生成モードであると判定した場合には、ステップS104に進み、全体制御部108は、コード生成部107を起動させて、外部記憶装置104に記憶された入出力テーブル109と選択された業務パターン選択情報111に基づいてコード生成及びデータベースの作成を行う。
【0046】
そして、ステップS105において、全体制御部108は、生成されたコードを、オペレータの指示により表示装置102に表示したり、外部記憶装置104に書き込む出力処理を行う。
【0047】
以下、図4〜図10を参照して、本発明のソフトウェア開発支援装置における業務仕様(入出力データ)について説明する。
【0048】
図4〜図9は、本発明のソフトウェア開発支援装置における業務仕様入力画面の一例を示す模式図であり、業務仕様記述部116により起動される。
【0049】
また、図10は、本発明のソフトウェア開発支援装置における業務仕様情報を入出力テーブルの形式で示したテーブル構成の一例を示す模式図である。
【0050】
図4〜図9の業務仕様入力画面から入力される業務仕様は、内部的には図10の入出力テーブルの形式で保存される。
【0051】
まず、図4において、400はアプリケーション番号入力エリアで、生成するウェブアプリケーションのアプリケーション番号(この例では「ShohinMaster」)を入力する。
【0052】
401はデータファイル番号入力エリアで、データファイル番号(この例では「ShohinM」(アプリケーション名と同一でもよい))を入力するためのものであり、図10に示す入出力テーブルの列1に格納される。402はファイル名入力エリアで、データファイル番号入力エリア401で入力されたデータファイル番号に対応するデータファイル名(この例では「商品マスタ」)を入力するためのものであり、図10に示す入出力テーブルの列3に格納される。403は説明入力エリアである。
【0053】
また、404はIO区分選択エリアで、データファイル番号入力エリア401で入力されたデータファイル番号が「ファイル定義」又は「入出力定義」のいずれであるかを選択する(この例では「ファイル定義」が選択されている)。なお、ファイル定義とは、当該データファイルで定義される項目をデータベースへの配置の定義とするものであり、入出力定義とは、当該データファイルで定義される項目を画面表示項目群の定義とするものである。
【0054】
405は削除ボタンで、このボタンをマウス等で指示することにより、対応するデータファイルが削除される。406は詳細ボタンで、このボタンをマウス等で指示することにより、IO区分選択エリア404で「ファイル定義」が選択されていた場合、データファイルの各ファイル項目情報を入力するファイル項目一覧画面(図5)が表示され、また、IO区分選択エリア404で「入出力定義」が選択されていた場合、入出力項目情報を入力する入出力項目一覧画面(図6)が表示される。
【0055】
図5に示すファイル項目一覧において、501は並び順入力エリアで、対応するファイル項目の並び順(1,2,3,・・・)を入力するためのものであり、図10に示す入出力テーブルの列7に格納される。502はデータファイル項目枝番入力エリアで、対応するファイル項目の識別情報であるデータファイル項目枝番(この例では「Code」を含む4項目)を入力するためのものであり、図10に示す入出力テーブルの列4に格納される。503はデータファイル項目名入力エリアで、対応するデータファイル項目の名称(この例では「商品コード」を含む4項目)を入力するためのものであり、図10に示す入出力テーブルの列5に格納される。
【0056】
なお、図10には示していないが、キー機能指定エリアで、主キー,第2キーとなるデータファイル項目を指定したり、参照ファイル番号及び参照先データファイル項目枝番指定エリアで、参照関係にあるデータファイル番号及びデータファイル項目枝番を指定したり、桁数入力エリア,データタイプ入力エリア等により、データファイル項目の桁数,データタイプ(テキスト,数値,日付,通貨等)を入力可能に構成してもよい。
【0057】
504は削除ボタンで、このボタンをマウス等で指示することにより、対応するデータファイル項目が削除される。
【0058】
505は項目逆参照入出力一覧表示指示エリアで、このエリアをマウス等で指示することにより、後述する図15に示すように当該データファイル項目に対応する項目逆参照入出力一覧1500が表示される。
【0059】
506はファイル逆参照入出力一覧表示指示エリアで、このエリアをマウス等で指示することにより、後述する図16に示すように当該データファイルに対応するファイル逆参照入出力一覧1600が表示される。
【0060】
507は「別名で保管」ボタンで、このボタンをマウス等で指示することにより、業務仕様入力画面(図4)及びデータ項目入力画面(図5)で入力された業務仕様より入出力テーブルが生成され、外部記憶装置104に所望の名称で保存することができる。
【0061】
509は閉じるボタンで、このボタンをマウス等で指示することにより、ファイル項目一覧画面が終了される。510は適用ボタンで、このボタンをマウス等で指示することにより、業務仕様入力画面(図4)及びファイル項目一覧画面(図5)で入力された業務仕様より入出力テーブルが生成され、外部記憶装置104に新規保存又は更新保存される。なお、ここで保存されるデータは、全てファイル項目を示すデータとなり、図10に示す入出力テーブルの列6に示すIO区分に「F」が格納される。
【0062】
511は生成ボタンで、このボタンをマウス等で指示することにより、図1に示したコード生成部107を起動し、コード生成処理を行うことができる。
【0063】
次に、入出力定義の入力について説明する。
【0064】
図6に示す入出力定義入力画面で入力される入出力項目データは、図10に示す入出力テーブルの6列のIO区分が「D」として生成される(行5〜行7,行8〜行11)。
【0065】
図6において、701は並び順入力エリアで、対応する入出力項目の並び順(1,2,3,・・・)を入力するためのものであり、図10に示す入出力テーブルの列7に格納される。702は入出力項目名入力エリアで、画面表示する項目名称(例えば、「商品コード」)を入力するためのものであり、図10に示す入出力テーブルの列5に格納される。
【0066】
703はデータファイル番号入力エリアで、データファイル番号(例えば、「ShohinM」を入力するためのものであり、図10に示す入出力テーブルの列2に格納される。704はデータファイル項目枝番入力エリアで、対応する入出力項目の識別情報であるデータ項目番号(例えば「Code」)を入力するためのものであり、図10に示す入出力テーブルの列4に格納される。
【0067】
706は閉じるボタンで、このボタンをマウス等で指示することにより、データ項目入力画面が終了される。707は適用ボタンで、このボタンをマウス等で指示することにより、入出力項目一覧画面(図6)で入力された入出力項目が外部記憶装置104に記憶される入出力テーブル109に追加される。
【0068】
708は生成ボタンで、このボタンをマウス等で指示することにより、図1に示したコード生成部を起動し、コード生成処理を行うことができる。
【0069】
なお、図6中の各フィールド(並び順入力エリア701,入出力項目名入力エリア702,データファイル番号入力エリア703)へキーボード等から項目名称等を入力する場合について説明したが、「ファイル定義から」ボタン705をマウス等で指示することにより、図7に示すデータファイル選択画面が表示され、データファイルから選択入力することができる。
【0070】
そして図7のデータファイル選択画面において、詳細表示ボタン801をマウス等で指示して表示項目と関連づけたいデータファイル項目(データファイル番号表示欄802,データファイル名表示欄803で特定される)を選択することで、図8に示すように当該データファイル内の項目の一覧が表示され、これらから入出力項目とする項目については、表示選択チェックボックス906にチェックを行って、適用ボタン904をマウス等で指示すると、入出力項目一覧画面に戻り、その結果、図9に示すように選ばれた項目(並び順表示欄901,項目番号表示欄902,項目名表示欄903に表示される項目)が表示項目として入出力テーブルに格納されることになる。
【0071】
なお、この図9に示す入出力項目一覧画面中で項目名を変更して、データファイル項目名称と区別することも可能である。
【0072】
以上、図6〜図9に示した入出力項目入力機能により、業務仕様入力作業の負荷を相当、軽減することが可能となった。
【0073】
なお、図6(図9)〜図8に示した画面による入出力項目の入力を複数回繰り返すことにより、複数のデータファイルから入出力項目を選択して入出力項目を作成することも可能である。
【0074】
以上、図4〜図9に示す操作画面による入力操作を行った結果、入出力テーブルは以下に示す図10のようになる。
【0075】
以下、図10に示した業務仕様情報(入出力テーブル)について説明する。
【0076】
図10の入出力テーブルにおいて、列1は、画面単位に定義されるアプリケーション番号を示している。列2は、データファイル番号であり、DBテーブル名称を表している。列4は、データファイル項目枝番であり、データファイルを構成するデータ項目を表している。
【0077】
列3はデータファイル番号に対応するデータファイルの名称、列5はデータファイル項目枝番に対応する各データ項目の名称である。
【0078】
入出力テーブル109は、ファイル項目と入出力項目で構成されており、その識別は、列6のIO区分でなされる。IO区分の値が「F」のときは、当該データ項目はファイルであり、「D」のときは入出力項目群である。
【0079】
本発明における、業務仕様間の関連付けは、IO区分が「F」の項目が、他の業務仕様のどこで「D」項目,「S」項目として用いられているかを調べるものである。この関連情報をもとに、波及関係を明確にし、業務仕様の変更が発生した場合、どの仕様が影響を受けるかをデータ項目単位とテーブル単位とで提示しようというものである。
【0080】
列7は、並び順を表しており、アプリケーション毎で独立に付加される。この並び順は、後述する図13に示すデータ項目単位の波及関係情報において関係するデータ項目を示す項目番号として用いる。
【0081】
以下、図10〜図16を用いて、本実施形態の業務仕様間の関連付け方法について説明する。
【0082】
〔波及関連情報の出力〕
図11は、本発明のソフトウェア開発支援装置における第2の制御処理手順の一例を示すフローチャートであり、図1に示した業務仕様入力部116による業務仕様入力処理(図3のステップS103)に対応する。なお、S201〜S210は各ステップを示す。
【0083】
まず、ステップS201において、オペレータからの入力を検知するまで待機し、入力を検知したと判定した場合には、ステップS202において、入力が業務仕様保存指示であるか否かを判定し、入力が業務仕様保存指示であると判定した場合には、ステップS203において、業務仕様を入出力テーブル109に格納(保存)し、該業務仕様が格納された段階で自動に(オペレータの操作選択を必要とせず)ステップS204に進む。
【0084】
ステップS204において、関連情報生成部106が起動され、該関連情報生成部106が入出力テーブル109に格納された業務仕様(データファイル)に対する関連情報生成処理(詳細は図12)を行って波及関係情報を生成し、ステップS205において、生成された波及関係情報を外部記憶装置104に格納し、ステップS201に戻り、次の入力があるまで待機する。
【0085】
一方、ステップS202において、入力が業務仕様保存指示でないと判定した場合には、ステップS206において、入力が逆参照入出力一覧表示指示であるか否かを判定し、逆参照入出力一覧表示指示であると判定した場合には、ステップS207において、変更波及解析表示部117が起動され、該変更波及解析表示部117が外部記憶装置104に格納された波及関係情報110を読み出し、変更波及解析処理を行い、ステップS208において、該解析結果の一覧(後述する図15に示す項目逆参照入出力一覧1500,図16に示すファイル逆参照入出力一覧1600)を画面表示し(変更波及一覧画面表示を行い)、ステップS201に戻り、次の入力があるまで待機する。
【0086】
なお、図5に示した項目逆参照入出力一覧表示エリア505により逆参照入出力一覧表示指示が成された場合には、該変更波及解析表示部117は、項目の波及関係情報(後述する図13)を読み出し、変更波及解析処理を行い、項目逆参照入出力一覧1500(図15)を表示する。一方、図5に示したファイル逆参照入出力一覧表示エリア506により逆参照入出力一覧表示指示が成された場合には、該変更波及解析表示部117は、ファイルの波及関係情報(後述する図14)を読み出し、変更波及解析処理を行い、ファイル逆参照入出力一覧1600(図16)を表示する。
【0087】
ここで、変更によりその波及が予想される業務仕様を編集する場合は、逆参照入出力一覧画面(図15に示す項目逆参照入出力一覧1500,図16に示すファイル逆参照入出力一覧1600)より変更したい業務仕様の編集ボタン(1501,1601)を指示することにより、編集画面(図5,図6)を表示して、シームレスに変更を行うことができる(詳細には図示していないが、図11のステップS208→S201の工程に対応する)。なお、編集ボタン(1501,1601)の指示に応じて、対応する業務仕様の編集画面(図5,図6)を表示して手動で編集するように構成してもよいし、オペレータが図示しない画面より自動編集を指示した場合には、編集画面を表示することなく、変更された業務仕様に合わせて関連する業務仕様を自動編集するように構成してもよい。
【0088】
さらに、オペレータが、生成ボタン(511,708)を指示することにより、変更を行った業務仕様からプログラムコードをやはりシームレスに生成し、直接、その動作を確認することもできる。
【0089】
なお、オペレータの指示がなくても、ファイル項目が変更入力された際に(図5に示したデータファイル項目枝番入力エリア502,項目逆参照入出力一覧表示指示エリア505等に変更入力があった際に)、該変更されたファイル項目に対応する図15に示す項目逆参照入出力一覧1500を自動表示するように構成してもよい。
【0090】
また、オペレータの指示がなくても、データファイルが変更された際に(図4に示したデータファイル番号入力エリア401に変更入力があった際や、図5に示した適用ボタン510が押下された際に)、該変更されたデータファイルに対応する図16に示すファイル逆参照入出力一覧1600を自動表示するように構成してもよい。
【0091】
以下、図11のフローチャートの説明に戻る。
【0092】
一方、ステップS206において、入力が逆参照入出力一覧表示指示でないと判定した場合には、ステップS209において、入力が終了指示であるか否かを判定し、終了指示(「閉じる」ボタン509への指示)であると判定した場合には、そのまま処理を終了して図3のフローチャートに戻る。
【0093】
一方、ステップS209で、入力が終了指示でないと判定した場合には、ステップS210において、その他の入力に応じた処理を行い、ステップS201に戻り、次の入力があるまで待機する。
【0094】
図12は、本発明のソフトウェア開発支援装置における第3の制御処理手順の一例を示すフローチャートであり、図1に示した関連情報生成部106による関連情報生成処理(図3のステップS103)に対応する。なお、S301〜S309は各ステップを示す。
【0095】
まず、ステップS301において、入出力テーブル109よりIO区分が「F」のデータファイル項目を1つ取得する。
【0096】
次に、ステップS302において、入出力テーブル109より項目1つを読み込み、ステップS303において、該読み込んだ項目とステップ301で取得した項目のデータファイル番号が等しいか否かをチェックし、等しくないと判定した場合には、ステップ308へ遷移する。
【0097】
一方、ステップS303で、ステップS302で読み込んだ項目とステップ301で取得した項目のデータファイル番号と等しいと判定した場合には、ステップS304において、ステップS302で読み込んだ項目とステップ301で取得した項目のアプリケーション番号が等しいかどうかのチェックを行う。これは、テーブル(データファイル)単位での波及関係を得るためのものであり、等しくないと判定した場合には、新たなテーブルにおける波及関係が生起したものとみなし、ステップS305において、ステップ301で取得した項目のアプリケーション番号,ステップS302で読み込んだ項目のアプリケーション番号を図14に示すテーブルにおける波及関係情報の関連元番号1401,関連先番号1402にそれぞれ格納し(関係情報出力(テーブル))、ステップS306に進む。
【0098】
一方、ステップS304で、ステップS302で読み込んだ項目とステップ301で取得した項目のアプリケーション番号が等しいと判定した場合には、そのままステップS306に進む。
【0099】
次に、ステップS306において、ステップS302で読み込んだ項目とステップ301で取得した項目のデータファイル項目枝番が等しいかどうかのチェックを行う。これは、項目単位での波及関係を得るためのものであり、等しいと判定した場合には、項目における波及関係が成立っているものとみなし、ステップS307において、ステップ301で取得した項目のデータファイル項目枝番を特定する情報(アプリケーション番号と並び順),ステップS302で読み込んだ項目のデータファイル項目枝番を特定する情報(アプリケーション番号と並び順)を図13に示す項目における波及関係情報の関連元番号1301,関連先番号1302にそれぞれ格納し(関係情報出力(項目))、ステップS308に進む。
【0100】
次に、ステップS308において、入出力テーブル109内の全項目についてステップS302〜S307の処理を終了したか否かを判定し、まだ終了していないと判定した場合には、ステップS302の処理に戻り、一方、終了したと判定した場合には、ステップS309に進む。
【0101】
次に、ステップS309において、入出力テーブル109内の全データファイル項目(IO区分=「F」)についてステップS301〜S308の処理を終了したか否かを判定し、まだ終了していないと判定した場合には、ステップS301の処理に戻り、一方、終了したと判定した場合には、処理を終了して図11のフローチャートに戻る。
【0102】
以上の処理により、作成された波及関系情報を図13,図14に示す。
【0103】
図13は、図1に示した関連情報生成部106によって生成された項目における波及関系情報の一例を示す図である。
【0104】
図13において、1301は関係元番号、1302は関係先番号で、図10に示した入出力テーブルの列2のデータファイル番号と列7の並び順で表される。なお、関係元番号1301に現れる並び順は、図10における列6のIO区分が「F」、即ち、ファイル項目のみとなる。
【0105】
例えば、図13の2行目は、関係元番号が「ShohinMaster:1」で、関連先番号が「Sanmple2:1」である。
【0106】
これは、図10に示したアプリケーション「ShohinMaster(商品マスタ)」における並び順「1」のファイル項目「Code(商品コード)」が変更されれば、アプリケーション「Sampleサンプル2」における並び順「1」の入出力項目「Code(商品コード)」をも変更する必要があることを表している。
【0107】
以上示したような項目における波及関系情報は、図15に示す項目逆参照入出力一覧(項目波及変更一覧)のように表示される。
【0108】
図14は、図1に示した関連情報生成部106によって生成されたテーブルにおける波及関系情報の一例を示す図である。
【0109】
図14において、1401は関連元番号、1402は関連先番号で、図10に示した入出力テーブルの列1のアプリケーション番号で表される。
【0110】
例えば、図14の2行目は、関連元番号が「ShohinMaster」で、アプリケーション「ShohinMaster」で用いるテーブル「ShohinM」に変更が加えられた場合、アプリケーション「Sample2」で用いられているテーブル「ShohinM」への変更を考慮しなければならないことを意味している。
【0111】
以上示したようなテーブルにおける波及関連情報は、図16に示すテーブル逆参照入出力一覧(テーブル波及変更一覧)のように表示される。
【0112】
図15は、本発明のソフトウェア開発支援装置における項目逆参照入出力一覧(項目波及変更一覧)の一例を示す模式図である。
【0113】
図において、1501は編集ボタンで、このボタンをマウス等で指示することにより、対応する業務仕様の入力画面(図5又は図6)が表示され、さらに該当する項目にカーソルが移動し、当該項目に対応する仕様変更をシームレスに行うことができ、また、入力画面から生成ボタン(511又は708)をマウス等で指示することで、プログラムコードを生成することができる。
【0114】
図16は、本発明のソフトウェア開発支援装置におけるファイル(テーブル)逆参照入出力一覧(テーブル波及変更一覧)の一例を示す模式図である。
【0115】
図において、1601は編集ボタンで、このボタンをマウス等で指示することにより、対応する業務仕様の入力画面(図5又は図6)が表示され、当該業務仕様に対応する仕様変更をシームレスに行うことができ、また、入力画面から生成ボタン(511又は708)をマウス等で指示することで、プログラムコードを生成することができる。
【0116】
図17〜図21は、本発明のソフトウェア開発支援装置における業務パターンに対応する表示画面の一例を示す模式図である。
【0117】
図17に示す一覧表示パターンは、図10の行5〜行7に対応する項目データをデータベースから取得し、列4のデータファイル項目枝番に対応する項目データを一覧表示する業務処理に対応する。
【0118】
図18に示す登録パターンは、図10の行5〜行7に対応する項目データを入力画面から入力させ、データベースへ格納(新規登録)する業務処理に対応する。
【0119】
図19に示す更新パターンは、図10の行5〜行7に対応する項目データを入力画面から入力させ、データベースへ更新登録,新規登録させたり、入力画面から入力されたデータに対応するレコードをデータベースから削除させたり、入力画面から入力されたデータに対応するレコードをデータベースから取得して表示させる業務処理に対応する。
【0120】
図20に示す一覧更新パターンは、図10の行5〜行7対応する項目データをデータベースから取得し、一覧表示したり、表示されたデータに対して追加,変更,削除等を行わせてデータベースに更新する業務処理に対応する。
【0121】
図21に示す検索一覧パターンは、図10の行5〜行7に対応するテーブル内のデータを入力画面から入力させ、該入力されたデータをキーにしてデータを検索して一覧表示する業務処理に対応する。
【0122】
なお、本発明のソフトウェア開発支援装置に適用可能な業務パターンは、図18〜図21に示した業務パターンに限られるものではなく、その他の各種業務パターンを含めてもよい。
【0123】
例えば、複数の画面を使用した業務パターン、詳細には、第1の画面で一覧表示を行い、該一覧表示から選択された項目に対して、第2の画面で詳細に表示するような業務パターンを含めてもよい。
【0124】
図22は、本発明のソフトウェア開発支援装置における業務パターン選択情報111について説明する模式図である。
【0125】
図において、2202は業務パターンで、アプリケーション番号2201に対して選択された業務パターン(図18〜図21)を示している。
【0126】
以下、図23〜図27を参照して、図1に示したコード生成部107によるコード生成処理について説明する。
【0127】
図23は、本発明の第4の制御処理手順の一例を示すフローチャートであり、図1に示したコード生成部107によるコード生成処理(図3のステップS104)に対応する。なお、S401〜S407は各ステップを示す。
【0128】
まず、ステップS401において、入出力テーブル109から指定されたアプリケーションに対応するデータファイルを1つ取得する。
【0129】
次に、ステップS402において、該取得したデータファイルの各項目のIO区分=「F」であるか否かを判定し、IO区分=「F」であると判定した場合には、ステップS403に進む。
【0130】
ステップS403では、図示しないデータベースシステムにアクセスし、データベース(DB)を作成し(詳細は図24に示す)、次に、ステップS404において、ステップS401で作成したデータベースに対するデータ操作処理を行うBeanコード114を、ステップS401で取得したデータファイルに基づいて生成し(詳細は図25に示す)、ステップS407に進む。
【0131】
一方、ステップS402で、ステップS401で取得したデータファイルの各項目のIO区分=「F」でない(「D」である)と判定した場合には、ステップS405に進む。
【0132】
次に、ステップS405では、ステップS401で取得したデータファイルに基づいて、ウェブブラウザからの入力データを取得して業務処理全体を制御するサーブレットコード113を生成(詳細は図26に示す)し、次に、ステップS406において、ウェブブラウザへの表示を制御するJSPコード112を生成し(詳細は図27に示す)、ステップS407に進む。
【0133】
次に、ステップS407において、指定されたアプリケーションに対応する全データファイルに対して、ステップS401〜S406の処理を終了したか否かを判定し、まだ終了していないと判定した場合には、ステップS401に戻り、既に終了したと判定した場合には、処理を終了して図3のフローチャートにリターンする。
【0134】
図24は、本発明の第5の制御処理手順の一例を示すフローチャートであり、図1に示したコード生成部107によるデータベース作成処理(図23のステップS403)に対応する。なお、S501〜S504は各ステップを示す。
【0135】
まず、ステップS501において、図示しないデータベースシステムに対して、アプリケーション名をデータベース名とするDBを作成するコマンドを発行する(既にデータベースが作成済みの場合には、この処理は行わない)。次に、ステップS502において、作成されたデータベースに接続する。
【0136】
そして、ステップS503において、カレントのデータファイル番号をテーブル名、該データファイル番号内の各データ項目枝番をテーブル内の項目名としたテーブルを作成するSQL文を生成し、該SQL文のクエリを実行する。
【0137】
次に、ステップS504において、データベースから切断する処理を行い、処理を終了して図23のフローチャートにリターンする。
【0138】
図25は、本発明の第6の制御処理手順の一例を示すフローチャートであり、図1に示したコード生成部107によるBean作成処理(図23のステップS404)に対応する。なお、S601〜S605は各ステップを示す。
【0139】
まず、ステップS601において、カレントのデータファイル番号に対応するデータベース操作用のBeanファイルを生成する。なお、Beanファイル名は、例えば、アプリケーション名にデータファイル番号及び文字列「Bean」を付加し拡張子を「Java(登録商標)」としたBeanファイルとする。また、このとき、作成したBeanファイル内の先頭に、「パッケージ名(例えば、アプリケーション名にデータファイル番号及び文字列「Bean」を付加したもの)の宣言、「java(登録商標).sql」パッケージのインポート、Java(登録商標)Beansを利用するために必要なインタフェースの実装等を行うコード」を格納しておく。
【0140】
次に、ステップS602において、検索処理コードを生成する。詳細には、「DBに接続し、指定されたパラメータを検索条件として当該データファイル番号に対応するテーブルに対する検索処理を行うためのSQL文のクエリを実行し、検索結果を返し、DBから切断するコード(検索メソッド)」を当該Beanファイル内に生成する。
【0141】
次に、ステップS603において、新規登録処理コードを生成する。詳細には、「DBに接続し、指定されたパラメータを新規追加データとして当該データファイル番号に対応するテーブルに対して追加処理を行うためのSQL文のクエリを実行し、新規追加結果を返し、DBから切断するコード(登録メソッド)」を当該Beanファイル内に生成する。
【0142】
次に、ステップS604において、更新処理コードを生成する。詳細には、「DBに接続し、指定されたパラメータを更新データとして当該データファイル番号に対応するテーブルに対して更新処理を行うためのSQL文のクエリを実行し、更新結果を返し、DBから切断するコード(更新メソッド)」を当該Beanファイル内に生成する。
【0143】
次に、ステップS605において、削除処理コードを生成する。詳細には、「DBに接続し、指定されたパラメータにより削除対象レコードを指定して削除処理を行うためのSQL文のクエリを実行し、削除結果を返し、DBから切断するコード(削除メソッド)」を当該Beanファイル内に生成する。
【0144】
そして、処理を終了して図23のフローチャートにリターンする。
【0145】
なお、上記ステップS602〜S605により当該Beanファイル内に生成されるコードには、「ドライバクラスをロードする処理、データベースに接続する処理、SQLステートメントオブジェクトを生成する処理、サーブレットから渡されたデータに基づくSQL文のクエリを実行して結果を取得する処理、結果をセットする処理、SQLステートメントオブジェクトとデータベース接続オブジェクトをクローズする処理を行うためのコード」等が記載されているものとする。
【0146】
また、ステップS602〜S605で生成する検索処理コード,新規登録処理コード,更新処理コード,削除処理コードは、Beanファイル内で定義される業務処理用のクラス(例えば、クラス名:データファイル名に文字列「DBAccess」を付加)内の検索メソッド,登録メソッド,更新メソッド,削除メソッドとして生成するものとする。
【0147】
さらに、図25のフローチャートでは、いずれのデータファイルに対して、検索処理コード,新規登録処理コード,更新処理コード,削除処理コードを生成する構成について示したが、業務パターン選択情報111に応じて、必要なコードのみ生成するように構成してもよい。
【0148】
例えば、業務パターンとして「一覧表示パターン(図17)」が選択されているデータファイルでは、検索処理コードのみを生成するように構成する。
【0149】
図26は、本発明の第7の制御処理手順の一例を示すフローチャートであり、図1に示したコード生成部107によるサーブレット作成処理(図23のステップS405)に対応する。なお、S701〜S704は各ステップを示す。
【0150】
まず、ステップS701において、サーブレットファイルを生成する。このサーブレットファイルのファイル名は、例えば、アプリケーション名にカレントのデータファイル名及び文字列「Servlet」を付加し拡張子を「java(登録商標)」とする。なお、このとき、サーブレットファイル内の先頭に、「使用するBeanパッケージ及びその他必要なパッケージをインポートするコード、アクセス修飾子,クラスの定義,クラス(例えば、HttpServletクラス)の継承、ウェブブラウザ(HTMLフォーム)から送信されたパラメータ(送信情報)を受け取るためのメソッドを示すコード」を格納しておく。
【0151】
次に、ステップS702において、「ウェブブラウザからの送信情報を受け取るコード」をサーブレットファイル内に生成する。
【0152】
次に、ステップS703において、「ステップS702で生成したコードで受け取るウェブブラウザからの送信情報に対応する業務処理のBeanのメソッドを起動して業務処理を実行させるためのコード」をサーブレットファイル内に生成する。なお、ここで生成されるコードは、選択された業務パターンによって異なるものとなる。詳細は省略するが、例えば、業務パターン選択情報が「登録パターン」の場合には、登録ボタンが指示されたことを示すウェブブラウザからの送信情報に応じて、登録用のメソッドを呼び出して実行させるコードを生成し、また、業務パターン選択情報が「更新パターン」の場合には、更新ボタン/新規ボタン/削除ボタン/表示ボタンが指示が入力されたことを示すウェブブラウザからの送信情報に応じて、更新用メソッド/新規登録用メソッド/削除用メソッド/検索用メソッドを選択的に呼び出して実行させるコードを生成する。
【0153】
なお、ステップS703では、「Beanのメソッドの処理結果をJSPから取得可能な記憶領域(例えば、セッションオブジェクト)に格納するコード」も生成するものとする。
【0154】
次に、ステップS704において、「対応するJSPを呼び出すコード」をサーブレットファイル内に生成し、処理を終了して図23のフローチャートにリターンする。
【0155】
なお、必要に応じて(例えば、「閉じる」ボタン等の処理に対して)、Java(登録商標)Scriptを用いたコードをJSPファイル内に生成するものとする。
【0156】
図27は、本発明の第8の制御処理手順の一例を示すフローチャートであり、図1に示したコード生成部107によるJSP作成処理(図23のステップS406)に対応する。なお、S801〜S803は各ステップを示す。
【0157】
まず、ステップS801において、カレントのデータファイルに対応するJSPファイルを生成する。このJSPファイルのファイル名は、例えば、アプリケーション名にデータファイル名を付加し拡張子を「jsp」とする。なお、このJSPファイル内には、「JSPページのMIMEタイプとエンコードするキャラクタセットを設定するコード、当該データファイルに対応するBeanをインスタンスするコード、htmlのタグである「<html><head><title>アプリケーション名</title>」等のコード」を生成し格納しておくものとする。
【0158】
次に、ステップS802において、選択された業務パターン(業務パターン選択情報111)がいずれの業務パターンであるか判断し、業務パターン選択情報111に応じて、「表示用データを取得するコード」をJSPファイル内に生成する。詳細は省略するが、例えば、業務パターン選択情報が「一覧表示パターン」,「一覧更新パターン」等の場合には、「業務処理用のBeanの検索用メソッドを呼び出して実行させ、検索用メソッドの処理結果をBeanから取得するコード」を生成する。また、業務パターン選択情報が「検索一覧パターン」等の場合には、「前の画面で検索が指示されてセッション等に検索結果が格納されているかを判定し、格納されている場合には、該検索結果を取得するコード」を生成する。
【0159】
次に、ステップS803において、業務パターン選択情報111に応じて、「画面を生成するコード」をJSPファイル内に生成し、処理を終了して図23のフローチャートにリターンする。
【0160】
以上の処理により、業務仕様からウェブアプリケーションプログラムを自動生成することによって、Java(登録商標)等のプログラムコードの特別な知識を必要とせず、ウェブアプリケーションのプログラミングコードを生成することができ、開発作業を軽減することができるとともに、業務仕様変更等があった場合であっても、上述した図15,図16に示した項目逆参照入力一覧から関連する全ての業務仕様変更を行った後、再度コード生成処理を行うことにより、業務仕様とプログラムコードとを常に一致させることができるという、仕様変更に柔軟に対応できる保守性に優れたウェブアプリケーションの開発を容易に行うことができる。
【0161】
なお、本実施形態では、サーバサイドのJava(登録商標)プログラムを用いたウェブアプリケーションを生成する場合について説明したが、生成されるプログラムコードは、Java(登録商標)に限られるものではなく、ASP(Active Server Pages),PHP(Hypertext Preprosessor)等によるウェブアプリケーションであってもよい。
【0162】
また、Java(登録商標)Scriptを用いる場合について説明したが、その他のスクリプト言語を用いてもよい。
【0163】
なお、本実施形態では、項目のIO区分(入出力テーブルの列6)をデータファイル項目「F」又は入出力項目「D」とする場合について説明したが、その他の項目、例えばセッション変数項目「S」等を含めるように構成してもよい。セッション変数項目とは、当該項目をセッション変数とするものである。
【0164】
この場合、図4に示した業務仕様入力画面のIO区分選択エリア404で、データファイル番号入力エリア401で入力されたデータファイル番号が「ファイル定義」,「入出力定義」,「セッション定義」のいずれであるかを選択可能とする。セッション定義とは、当該データファイルで定義される項目群をセッション変数群とするものである。
【0165】
また、図4のIO区分選択エリア404で「セッション定義」が選択されていた場合、詳細ボタン406をマウス等で指示することにより、セッション項目情報を入力するセッション項目一覧画面(図示しないが図6と同様の画面)が表示されるものとする。
【0166】
そして、このセッション項目一覧画面等で入力されたセッション項目データは、図10に示した入出力テーブルの列6のIO区分が「S」として生成されるものとする。
【0167】
これにより、図12に示した関連情報生成処理において、セッション変数も含めた波及関係情報が生成される。
【0168】
また、詳細は省略するが、図26に示したサーブレット作成処理においても、「ウェブブラウザから受け取った情報等がセッション変数項目に対応する情報であった場合、当該情報をセッションオブジェクトに格納するコード」をサーブレットファイル内に生成するように構成するものとする。
【0169】
以上説明したように、業務仕様入力画面において、当該業務仕様で定義されたファイル項目、入出力項目、セッション変数項目を参照している業務仕様ファイルの名称一覧(即ち、波及情報)を、処理選択により表示させ(図15,図16)、参照業務仕様ファイルの名称一覧表示において、該当業務仕様ファイル名称を選択することで、当該項目を使用している業務仕様入力画面(図5,図6)を表示させることにより、業務仕様を構成する項目(ファイル項目,セッション変数項目,入出力項目)に名称,属性等の仕様変更が発生した場合でも、上述した工程により、波及関係の確認を行ったのち、仕様変更、プログラムコード生成、動作確認という開発保守作業をサイクリックに行うことができる。
【0170】
従って、業務仕様の枠組みの中で、仕様書間の関連を自動検索でき、仕様変更に対する対応漏れを確実に防止することができる。
【0171】
また、一連の業務仕様入力作業の中で、仕様変更作業を行えることから、開発保守作業の効率を大幅に向上させることができる。
【0172】
また、上述した各変形例を合わせた構成も全て本発明の適用範囲である。
【0173】
さらに、図10に示した入出力テーブルの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【0174】
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【0175】
以下、従来の技術の欄に示した特許文献1と、本実施形態で示したソフトウェア開発支援装置との相違について説明する。
【0176】
まず、上述したように、特許文献1に示される仕様書間の関連情報の管理方法では、仕様変更の度に、プログラム機能関連図を人手により変更しなければならず、煩雑で非効率的であるとともに、システム全体を把握しなければ困難な作業であるという問題点があった。また、プログラム機能関連図から波及関係情報が自動生成されるが、その結果情報が表示出力されるのみで、仕様変更作業,プログラムコード生成といった開発保守作業支援との連携についてはなんら考慮なされていないため、波及関係は把握できるものの、結局、仕様変更作業、プログラムコード生成等の保守作業等を独立に行う必要があり、仕様変更に対する対応漏れを起こしやすくなってしまうという問題点があった。
【0177】
これに対して、本実施形態で示したソフトウェア開発支援装置は、業務仕様を入力とした、業務仕様間の参照関係(クロスリファレンス)を生成/表示するため、仕様が変更されたとき、その構成要素に関連する仕様を業務仕様の枠組みの中(特別なデータを作成する必要なし)で波及箇所を特定し、波及関連情報として参照業務仕様ファイル一覧を出力することができる。
【0178】
また、表示されたクロスリファレンスより、業務仕様の入力画面に遷移させるため、出力された波及関連情報から、直接、業務仕様の入力画面を立ち上げ、仕様変更に関連する業務仕様を変更することができる。
【0179】
さらに、変更された業務仕様からアプリケーションプログラムを自動生成し、その動作を直に確認できる、シームレスな保守作業を実現できる。
【0180】
このように、(1)特別なデータを用意する必要なくクロスリファレンスを業務仕様の枠組みの中で特定表示でき、(2)該クロスリファレンスから直接に業務仕様の入力画面を立ち上げて変更でき、(3)変更された業務仕様からアプリケーションプログラムを自動生成して直に確認できるという、(1),(2),(3)のシームレスな保守作業を実現できる点において、本実施形態で示したソフトウェア開発支援装置は、上記特許文献1に示すような従来のソフトウェア開発資源間の関連付け方法とは根本的に異なるものである(上記特許文献1の問題点を解決するものである)。
【0181】
以上示した点は、本実施形態で示したソフトウェア開発支援装置と、上記特許文献1に示すような従来のソフトウェア開発資源間の関連付け方法との相違を考察する上で、特に留意すべき事項と考える。
【0182】
以下、図28に示すメモリマップを参照して本発明に係るソフトウェア開発支援装置で読み出し可能なデータ処理プログラムの構成について説明する。
【0183】
図28は、本発明に係るプログラム生成置で読み出し可能な各種データ処理プログラムを格納する記録媒体(記憶媒体)のメモリマップを説明する図である。
【0184】
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【0185】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、インストールするプログラムやデータが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【0186】
本実施形態における図3,図11,図12,図23,図24,図25,図26,図27に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【0187】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0188】
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【0189】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,DVD−ROM,磁気テープ,不揮発性のメモリカード,ROM,EEPROM,シリコンディスク等を用いることができる。
【0190】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0191】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0192】
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウエアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【0193】
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ,データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【0194】
【発明の効果】
以上説明したように、本発明によれば、予め作成されるソフトウェアを生成するための複数の仕様情報に基づいて、前記各仕様情報間の参照関係を示す参照関係情報を生成し、該生成された参照関係情報に基づいて特定の仕様情報を指定して編集するので、ソフトウェアを生成するための複数の仕様情報のうち、いずれかの仕様情報に仕様変更が発生した場合でも、容易に波及関係のある他の仕様情報を指定して編集することができる。
【0195】
従って、業務仕様の枠組みの中で、仕様書間の関連を自動検索でき、仕様変更に対する対応漏れを確実に防止することができる。
【0196】
また、一連の業務仕様入力作業の中で、仕様変更作業を行えることから、他の仕様情報への波及関係の確認、仕様変更、プログラムコード生成、動作確認という開発保守作業をサイクリックに行うことができ、開発保守作業の効率を大幅に向上させることができる等の効果を奏する。
【図面の簡単な説明】
【図1】本発明の一実施形態を示すソフトウェア開発支援装置の構成を示すブロック図である。
【図2】図1に示したコード生成部によって生成したサーブレット、JSP、およびBeanを利用したウェブアプリケーションシステムの全体構成の一例を示す図である。
【図3】本発明のソフトウェア開発支援装置における第1の制御処理手順の一例を示すフローチャートである。
【図4】本発明のソフトウェア開発支援装置における業務仕様入力画面の一例を示す模式図である。
【図5】本発明のソフトウェア開発支援装置における業務仕様入力画面の一例を示す模式図である。
【図6】本発明のソフトウェア開発支援装置における業務仕様入力画面の一例を示す模式図である。
【図7】本発明のソフトウェア開発支援装置における業務仕様入力画面の一例を示す模式図である。
【図8】本発明のソフトウェア開発支援装置における業務仕様入力画面の一例を示す模式図である。
【図9】本発明のソフトウェア開発支援装置における業務仕様入力画面の一例を示す模式図である。
【図10】本発明のソフトウェア開発支援装置における業務仕様情報を入出力テーブルの形式で示したテーブル構成の一例を示す模式図である。
【図11】本発明のソフトウェア開発支援装置における第2の制御処理手順の一例を示すフローチャートである。
【図12】本発明のソフトウェア開発支援装置における第3の制御処理手順の一例を示すフローチャートである。
【図13】図1に示した関連情報生成部によって生成された項目における波及関系情報の一例を示す図である。
【図14】図1に示した関連情報生成部によって生成されたテーブルにおける波及関系情報の一例を示す図である。
【図15】本発明のソフトウェア開発支援装置における項目逆参照入出力一覧(項目波及変更一覧)の一例を示す模式図である。
【図16】本発明のソフトウェア開発支援装置におけるテーブル逆参照入出力一覧(テーブル波及変更一覧)の一例を示す模式図である。
【図17】本発明のソフトウェア開発支援装置における業務パターンに対応する表示画面の一例を示す模式図である。
【図18】本発明のソフトウェア開発支援装置における業務パターンに対応する表示画面の一例を示す模式図である。
【図19】本発明のソフトウェア開発支援装置における業務パターンに対応する表示画面の一例を示す模式図である。
【図20】本発明のソフトウェア開発支援装置における業務パターンに対応する表示画面の一例を示す模式図である。
【図21】本発明のソフトウェア開発支援装置における業務パターンに対応する表示画面の一例を示す模式図である。
【図22】本発明のソフトウェア開発支援装置における業務パターン選択情報について説明する模式図である。
【図23】本発明の第4の制御処理手順の一例を示すフローチャートである。
【図24】本発明の第5の制御処理手順の一例を示すフローチャートである。
【図25】本発明の第6の制御処理手順の一例を示すフローチャートである。
【図26】本発明の第7の制御処理手順の一例を示すフローチャートである。
【図27】本発明の第8の制御処理手順の一例を示すフローチャートである。
【図28】本発明に係るプログラム生成置で読み出し可能な各種データ処理プログラムを格納する記録媒体(記憶媒体)のメモリマップを説明する図である。
【符号の説明】
101 入力装置
102 表示装置
103 処理装置(CPU,RAM,ROM)
104 外部記憶装置(ハードディスク)
105 画面制御部
116 業務仕様記述部
117 変更波及解析表示部
106 関連情報生成部
107 コード生成部
108 全体制御部
109 入出力テーブル
110 波及関係情報
112 JSPコード
113 Servletコード
114 Beanコード

Claims (12)

  1. ソフトウェアを生成するための複数の仕様情報を記憶可能な記憶手段と、
    前記記憶手段に記憶される各仕様情報に基づいて、前記各仕様情報間の参照関係を示す参照関係情報を生成する第1の生成手段と、
    前記第1の生成手段により生成される参照関係情報に基づいて特定の仕様情報を指定して編集可能な編集手段と、
    を有することを特徴とするソフトウェア開発支援装置。
  2. 前記第1の生成手段により生成される参照関係情報に基づく表示を行う表示手段を設けたことを特徴とする請求項1記載のソフトウェア開発支援装置。
  3. 前記編集手段は、前記表示手段による表示から特定の仕様情報を指定して編集可能なことを特徴とする請求項2記載のソフトウェア開発支援装置。
  4. 前記表示手段は、前記第1の生成手段により生成された参照関係情報に基づいて、特定の仕様情報に対して参照関係にある仕様情報の一覧を表示することを特徴とする請求項2又は3記載のソフトウェア開発支援装置。
  5. 前記仕様情報は、複数の項目により定義されるものであり、
    前記表示手段は、前記第1の生成手段により生成された参照関係情報に基づいて、特定の項目に対して参照関係にある項目の一覧を表示することを特徴とする請求項2〜4のいずれかに記載のソフトウェア開発支援装置。
  6. 前記記憶手段に記憶される各仕様情報に基づいてアプリケーションプログラムを生成する第2の生成手段を設けたことを特徴とする請求項1〜5のいずれかに記載のソフトウェア開発支援装置。
  7. 前記第2の生成手段は、前記編集手段により編集された仕様情報に基づいてアプリケーションプログラムを生成可能なことを特徴とする請求項6記載のソフトウェア開発支援装置。
  8. 前記仕様情報は、複数のデータ項目のデータベースへの配置を示す情報により定義される第1の仕様情報,前記第1の仕様情報内のデータ項目に紐付けられた項目を含む複数の項目により定義される第2の仕様情報を含むものであり、
    前記第1の生成手段は、前記第1の仕様情報と前記第2の仕様情報間の参照関係を示す参照関係情報を生成することを特徴とする請求項1〜7のいずれかに記載のソフトウェア開発支援装置。
  9. 前記第2の生成手段は、前記仕様情報に基づいて、前記第1の仕様情報で定義された各データ項目に対応したデータベースの作成、並びに前記データベースへのアクセスを行うための第1のプログラムの生成,前記第2の仕様情報で定義された各項目の入出力画面を表示するための第2のプログラムの生成、及び前記入出力画面からの入力情報を取得して該入力情報に基づいて前記第1のプログラム及び第2のプログラムの実行を制御するための第3のプログラムの生成をそれぞれ行うことを特徴とする請求項6〜8のいずれかに記載のソフトウェア開発支援装置。
  10. ソフトウェアを生成するための複数の仕様情報に基づいて、前記各仕様情報間の参照関係を示す参照関係情報を生成する生成工程と、
    該生成された参照関係情報に基づく表示を行う表示工程と、
    該表示から特定の仕様情報を指定して編集する編集工程と、
    を有することを特徴とするソフトウェア開発支援方法。
  11. 請求項10に記載されたソフトウェア開発支援方法を実行するためのプログラム。
  12. 請求項10に記載されたソフトウェア開発支援方法を実行するためのプログラムをコンピュータが読み取り可能に記憶した記録媒体。
JP2003209760A 2003-08-29 2003-08-29 ソフトウェア開発支援装置およびソフトウェア開発支援方法およびプログラムおよび記録媒体 Pending JP2005078119A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003209760A JP2005078119A (ja) 2003-08-29 2003-08-29 ソフトウェア開発支援装置およびソフトウェア開発支援方法およびプログラムおよび記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003209760A JP2005078119A (ja) 2003-08-29 2003-08-29 ソフトウェア開発支援装置およびソフトウェア開発支援方法およびプログラムおよび記録媒体

Publications (1)

Publication Number Publication Date
JP2005078119A true JP2005078119A (ja) 2005-03-24

Family

ID=34402584

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003209760A Pending JP2005078119A (ja) 2003-08-29 2003-08-29 ソフトウェア開発支援装置およびソフトウェア開発支援方法およびプログラムおよび記録媒体

Country Status (1)

Country Link
JP (1) JP2005078119A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007094883A (ja) * 2005-09-29 2007-04-12 Toshiba Solutions Corp アプリケーション生成方法及びアプリケーション生成装置
JP2007102583A (ja) * 2005-10-05 2007-04-19 Toshiba Corp 特許情報管理システム、特許情報管理方法およびプログラム
JP2007164503A (ja) * 2005-12-14 2007-06-28 Toray Ind Inc システム生産方法、システム生産システム、システム生産プログラムおよびシステム生産に用いられる定義体情報のデータ構造
JP2008192059A (ja) * 2007-02-07 2008-08-21 Nec Corp 要件(要求)間リンクの設定支援システム、要件(要求)間リンクの設定方法及びプログラム
JP2009104290A (ja) * 2007-10-22 2009-05-14 Nippon Telegr & Teleph Corp <Ntt> ソフトウェア成果物管理システム、方法及びそのプログラム
JP2014106564A (ja) * 2012-11-22 2014-06-09 Mitsubishi Electric Corp ソフトウェア開発支援装置、ソフトウェア開発支援方法、および、プログラム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007094883A (ja) * 2005-09-29 2007-04-12 Toshiba Solutions Corp アプリケーション生成方法及びアプリケーション生成装置
JP2007102583A (ja) * 2005-10-05 2007-04-19 Toshiba Corp 特許情報管理システム、特許情報管理方法およびプログラム
JP2007164503A (ja) * 2005-12-14 2007-06-28 Toray Ind Inc システム生産方法、システム生産システム、システム生産プログラムおよびシステム生産に用いられる定義体情報のデータ構造
JP2008192059A (ja) * 2007-02-07 2008-08-21 Nec Corp 要件(要求)間リンクの設定支援システム、要件(要求)間リンクの設定方法及びプログラム
JP2009104290A (ja) * 2007-10-22 2009-05-14 Nippon Telegr & Teleph Corp <Ntt> ソフトウェア成果物管理システム、方法及びそのプログラム
JP2014106564A (ja) * 2012-11-22 2014-06-09 Mitsubishi Electric Corp ソフトウェア開発支援装置、ソフトウェア開発支援方法、および、プログラム

Similar Documents

Publication Publication Date Title
JP2005078119A (ja) ソフトウェア開発支援装置およびソフトウェア開発支援方法およびプログラムおよび記録媒体
JP2005070831A (ja) プログラム生成装置およびプログラム生成方法およびプログラムおよび記録媒体
JP2005339580A (ja) 文書データ管理装置およびプログラム
JP4976783B2 (ja) プログラム生成装置およびプログラム生成方法およびプログラムおよび記録媒体
JP6331307B2 (ja) 情報処理装置、情報処理装置の制御方法、およびプログラム
JP2001175648A (ja) 文書管理システム
JPH08153104A (ja) ハイパーメディアシステムおよびハイパーメディア文書作成・編集方法
JP2005070879A (ja) プログラム生成装置およびプログラム生成方法およびプログラムおよび記録媒体
JPH0430230A (ja) 電力系統の設備データベース管理方式
JP2019153340A (ja) 情報処理装置、情報処理装置の制御方法、およびプログラム
JP4695331B2 (ja) プログラム生成装置およびプログラム生成方法およびプログラムおよび記録媒体
KR20140115456A (ko) 애플리케이션 개발 환경 제공 프로그램을 기록한 기록매체
JP2018116750A (ja) 情報処理装置、情報処理装置の制御方法、およびプログラム
KR20140094392A (ko) 애플리케이션 개발 환경 제공 방법 및 그 장치
JP2005148976A (ja) プログラム生成装置およびプログラム生成方法およびプログラムおよび記録媒体
JP2007011463A (ja) プログラム設計装置
JPH10269068A (ja) グラフィカルなドキュメントを自動生成するソフトウェア開発の方法
KR20140098590A (ko) 애플리케이션 개발 환경 제공 방법 및 그 장치
KR20140114961A (ko) 애플리케이션 개발 환경 제공 프로그램을 기록한 컴퓨터로 판독 가능한 기록매체
KR20140114963A (ko) 애플리케이션 개발 환경 제공 프로그램을 기록한 컴퓨터로 판독 가능한 기록매체
KR20140098565A (ko) 애플리케이션 개발 환경 제공 방법 및 그 장치
KR20140114986A (ko) 애플리케이션 개발 환경 제공 장치
KR20140114985A (ko) 애플리케이션 개발 환경 제공 방법
KR20140114976A (ko) 애플리케이션 개발 환경 제공 방법
KR20140114997A (ko) 애플리케이션 개발 환경 제공 방법