JP2005309655A - 特化設計情報生成システム及び完成ファイル生成システム - Google Patents
特化設計情報生成システム及び完成ファイル生成システム Download PDFInfo
- Publication number
- JP2005309655A JP2005309655A JP2004123923A JP2004123923A JP2005309655A JP 2005309655 A JP2005309655 A JP 2005309655A JP 2004123923 A JP2004123923 A JP 2004123923A JP 2004123923 A JP2004123923 A JP 2004123923A JP 2005309655 A JP2005309655 A JP 2005309655A
- Authority
- JP
- Japan
- Prior art keywords
- design information
- information
- file
- specialized
- generation system
- 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)
Abstract
【課題】システム開発において仕様に関するミスを早期に発見し、設計構成における品質向上、生産工程におけるソースコード品質および生産効率の向上を図る。
【解決手段】システム設計情報を入力し、処理構造を実現するための予め定められたXML構造からなる変換情報に変換し、その変換情報に基づいて予め予測されている特定のデザイン情報及びシステム構成情報からなる特化設計情報を生成する。また、その特化設計情報に基づいて、ソースコードおよびリソースファイルを含むテキスト文章の共通部分を持つテンプレートの非共通部の穴埋めを行ない、完成ファイルを生成する。
【選択図】 図20
【解決手段】システム設計情報を入力し、処理構造を実現するための予め定められたXML構造からなる変換情報に変換し、その変換情報に基づいて予め予測されている特定のデザイン情報及びシステム構成情報からなる特化設計情報を生成する。また、その特化設計情報に基づいて、ソースコードおよびリソースファイルを含むテキスト文章の共通部分を持つテンプレートの非共通部の穴埋めを行ない、完成ファイルを生成する。
【選択図】 図20
Description
本発明は、予め定められた処理構造に従ってシステム設計情報から特化設計情報を生成するシステム及び、特化設計情報に基づいてテンプレートを穴埋めすることでテキストファイルを生成するシステムに関する。
近年のコンピュータシステムの開発においては、以下の特徴が見られる。
(1)ウォーターフォールモデルの採用
従来の開発手法の代表的なものとしては,ウォーターフォールモデルがある。大規模システム開発の約8割において、このモデルが採用されていると指摘されている(例えば、非特許文献1参照。)。このモデルでは,要件定義→概要設計→詳細設計→製造→テスト→運用保守、と作業手順をフェーズ分けし、各工程では次の工程に受け渡すための生産物を作り,レビューと呼ぶ確認作業を行なう。生産物は,コーディング前までは設計書であり,コーディング以降はソースコードや実行ファイルになる。そして,レビューにより生産物の正当性を確認して,その工程での誤りをすべて修正したあとに,関係者の承認を受けて,次工程に成果物を引き継ぐ。すなわち、滝で水が流れおちるように、工程が順番に進んでいくモデルである。
従来の開発手法の代表的なものとしては,ウォーターフォールモデルがある。大規模システム開発の約8割において、このモデルが採用されていると指摘されている(例えば、非特許文献1参照。)。このモデルでは,要件定義→概要設計→詳細設計→製造→テスト→運用保守、と作業手順をフェーズ分けし、各工程では次の工程に受け渡すための生産物を作り,レビューと呼ぶ確認作業を行なう。生産物は,コーディング前までは設計書であり,コーディング以降はソースコードや実行ファイルになる。そして,レビューにより生産物の正当性を確認して,その工程での誤りをすべて修正したあとに,関係者の承認を受けて,次工程に成果物を引き継ぐ。すなわち、滝で水が流れおちるように、工程が順番に進んでいくモデルである。
(2)分散開発の遂行
現在、ネットワーク通信の進歩に伴い、大規模の開発は分散開発で行なわれることが多い。設計と製造を別会社が担当し、製造工程は複数な会社(海外を含む)が、階層別(垂直分散)・機能別(水平分散)で開発する。
現在、ネットワーク通信の進歩に伴い、大規模の開発は分散開発で行なわれることが多い。設計と製造を別会社が担当し、製造工程は複数な会社(海外を含む)が、階層別(垂直分散)・機能別(水平分散)で開発する。
(3)システムの複雑化・多様化の発生
従来のホストシステムから2階層のC/Sシステム、現在WEBシステムの3階層モデルが主流となっている。処理の分散のため、システムの構成が複雑となる一方である。また、階層別の最適化、既存システムの再利用、外部システムとの連携のため、多様な実装技術によって構築することも一般的である。実装技術とはプログラム言語をはじめ、分散システムの連携やトランザクション処理などの機能を提供するいわゆるミドルウェアにあたる。一つのシステムは複数の実装技術を利用する場合が多い。また現在技術の進化が激しく、既存よりよい新技術を導入する傾向がある。
日経BP社、"IT Pro 記者の眼:「標準の開発プロセスが欲しい,でも自社にはない」、[online]、2003年7月2日、[平成16年4月9日検索]、インターネット<URL:http://itpro.nikkeibp.co.jp/free/ITPro/OPINION/20030701/1/>
従来のホストシステムから2階層のC/Sシステム、現在WEBシステムの3階層モデルが主流となっている。処理の分散のため、システムの構成が複雑となる一方である。また、階層別の最適化、既存システムの再利用、外部システムとの連携のため、多様な実装技術によって構築することも一般的である。実装技術とはプログラム言語をはじめ、分散システムの連携やトランザクション処理などの機能を提供するいわゆるミドルウェアにあたる。一つのシステムは複数の実装技術を利用する場合が多い。また現在技術の進化が激しく、既存よりよい新技術を導入する傾向がある。
日経BP社、"IT Pro 記者の眼:「標準の開発プロセスが欲しい,でも自社にはない」、[online]、2003年7月2日、[平成16年4月9日検索]、インターネット<URL:http://itpro.nikkeibp.co.jp/free/ITPro/OPINION/20030701/1/>
従来の技術には、まず、「非可逆性の問題」という課題がある。すなわち、ウォーターフォールの開発手法において、設計工程での誤りがプログラム工程で発見されても,ただちに設計工程を見直して,誤りのない成果物をつくるという行なわれてしかるべき作業が無視され,誤りを発見した工程内での局所的な対処しか行なわれない。このため工程が進んでしまうと、仕様の漏れなどにより手戻りが必要になった時に大変なコストがかかることになるという課題がある。
次に、実際の利用者が仕様を確認するタイミングをどのように設定するのがよいのか困難であるという課題がある。すなわち、ウォーターフォールモデルの中間工程での設計書やテスト項目などを実際の利用者に確認してもらったとしても,利用者自身が要求しているシステムと適合しているかどうかを判断するのはかなり難しい。そのため、システムテストの段階になって実際に動く画面や出力される帳票をみて,始めて不具合に気が付くことも多い。そのため,納期間近になって大幅な変更を余儀なくされるケースも後を絶たない。
次に、品質管理上の課題がある。すなわち、分散開発によってきめ細かなレビューが困難であること、開発者のスキル差が認識しにくいことから品質維持が困難である。また、コーディングスタイルも管理しにくく、ソースの可読性が低くなる。
次に、開発要員の不足という課題がある。システムの複雑化・多様化によって、システム全体の設計および実装技術を短期に理解し、習得することが不可能となりつつある。開発者の負担がかかり、適切な開発要員が不足がしばしば問題となっている。
そこで、本発明は、上記の課題を解決するために、予め定められた処理構造に従ってシステム設計情報から特化設計情報を生成するシステム及び、特化設計情報に基づいてテンプレートを穴埋めすることでテキストファイルを生成するシステムを提供することを目的とする。
かかる目的を達成するために、本発明では、システム設計情報を入力し、予め定められた処理構造を実現するための予め定められたXML構造からなる情報に変換し、その情報を前記処理構造を実現するために必要な予め予測されている特定のデザイン情報及びシステム構成情報からなる特化設計情報を生成するシステムを提供する。
これにより、システム設計情報を入力する時点で、設計情報の整合性を検証し、矛盾あるいは仕様の漏れがある場合、特化設計情報が正しく作成できないため、設計資料の問題点を早期発見できる効果があり、仕様書のミスによる下流工程への影響という「非可逆性」のリスクは最小限に抑えられ、課題が解決される。
また、本発明では、特化設計情報を入力し、保持されているテンプレートを穴埋めすることで、必要なテキストファイルを生成するシステムも提供する。
以上の構成になっているので、システム設計情報から特化設計情報を生成するシステム及び、特化設計情報に基づいてテンプレートを穴埋めすることで、システム動作するため最小限のプログラムやリソースを生成する。設計工程において画面や動作仕様を仮実行しながら、実際の利用者から確認できる効果があり、課題が解決される。
同様に、ソースコードが自動的に生成されるため、品質も一定の範囲内に保証され、コーディングスタイルも半強制的に制限され統一が図られるという効果がある。
同様に、すでに最小限のソースコードおよびリソースによって、システムが動作可能となる状態となるので、システムの全体が理解できなくとも、開発者が部分的な実装が可能となるという効果がある。
本発明では、予め定められた処理構造によってシステム設計情報を管理する構成となっており、また、設計情報の品質を保持する効果が得られる。設計されたシステムが動作できるように最小限のソースコートおよびリソースを自動的に生成する構成となっているので、システムの利用者が早期に仕様を確認することができ、製造工程の品質向上および開発者の負担を軽減する効果が得られる。
以下、本発明を実施するための最良の形態について、図を用いて実施形態として説明する。なお、本発明は、これら実施形態になんら限定されるものではなく、その要旨を逸脱しない範囲において、種々なる態様で実施し得る。
(実施形態1:主に請求項1について説明する)
本発明の実施形態1として、システム設計情報を入力し、予め定められた処理構造を実現するための予め定められたXML(eXtensible Mark−up Language)構造からなる情報に変換し、その情報を、前記処理構造を実現するために必要な予め予測されている特定のデザイン情報及びシステム構成情報からなる特化設計情報を生成するシステムについて説明する。
(実施形態1:構成)
本実施形態に係る特化設計情報生成システムは、予め定められた処理構造に従ってシステム設計情報から特化設計情報を生成するためのシステムである。
本実施形態に係る特化設計情報生成システムは、予め定められた処理構造に従ってシステム設計情報から特化設計情報を生成するためのシステムである。
ここに「予め定められた処理構造」とは、デザイン情報や、システム構成情報に基づいて設計した処理構造である。デザイン情報の例として、MVCのデザインパターンがある。MVCのデザインパターンにおいては、Model(モデル:データ)、View(ビュー:ユーザインターフェース)、Controller(コントローラ:制御)、の三つの要素を整理した処理構造となる。また、システム構成情報の例として、ウェブアプリケーションがある。ウェブアプリケーションは、WEBブラウザというクライアントとネットワーク上にあるWebサーバと大きく2階層を分ける構成となる。そのため、クライアントのGUIデザイン情報(HTML)とサーバ側の画面遷移の制御やデータ操作などの処理を整理した構造となっている。
また、「システム設計情報」とは、外部仕様、内部仕様に関する情報である。例えば、データベースを扱うシステムの場合、データベースのスキーマは内部仕様である。また、ウェブアプリケーションの場合、HTMLのデザインがGUIの設計情報であり、外部仕様の一部となっている。
図1と図2は、システム設計情報の具体例を示す。図1において、「データベース仕様(database.xls)」が記述され、図2においては、「モデル仕様(model.xls)」としてデータベースのスキーマ情報が記述されている。図1と図2とにおいては、表計算のアプリケーションプログラムを用いることができ、操作者にとって理解しやすい形式でシステム設計情報を作成することが可能である。
また、図3と図4には、それぞれGUIの設計情報として、顧客一覧の表示画面のHTMLデザインを示すCustomerList.htmと、顧客情報の編集画面のHTMLデザインを示す1_CustomerEditEntry.htmが例示されている。このようなHTMLファイルを用いることにより、ブラウザで画面のデザインを直ちに表示することが可能となるので、画面仕様の確認を容易に行なうことが可能となっている。なお、例えば、図3において、{customer_name}のように、{と}で囲まれた部分は、置き換えを行なうことを示しており、{customer_name}の場合には、customerの部分で図1でMODEL_NAMEの列の値がcustomerになっている行のTABLE_NAMEの列の値のKOKYAKUというテーブルを使用することを示している。また、そのKOKYAKUというテーブルのどの列を使用するかは、_nameの部分により、図2のPROPTY_NAMEの列の値がnameとなっている行のFIELD_NAMEの列の名前であるNAMAEを仕様するべきことが表わされている。したがって、{customer_name}には、KOKYAKUのNAMAEの列の値が表示、あるいは入力されることが表わされている。他のものについても同様である。
「特化設計情報」とは特定なデザインやシステム構成に依存した設計情報である。例えば、ウェブアプリケーションの画面遷移情報である。図5から図10までは、特化設計情報の具体例を示す。図5と図6においては、database.xlsに対応する特化設計情報であるdatabase.xmlがXMLの書式に従って例示されている。図7と図8においては、画面遷移に関する情報がcontext.xmlとしてXMLの書式に従って記述されている。例えば、<fields>と</fields>とで囲まれる部分が、図2の一行分に対応しており、テーブルの列名の情報(例えば、列の名前、データ型など)が表わされている。図9には、CustomerList.htmに対応する特化設計情報であるCustomerList.htm.defという特化設計情報が記述されている。例えば、図3で{customer_name}の部分が、<!--DTI:HtmlPart_KEY="DTI_var" name="customer_name" _POSITION="START-->などのように置換がされ、実施形態2において、にここで穴埋めが行なわれるべきことが表わされている。図10には、1_CustomerEditEntry.htmに対応する1_CustomerEditEntry.htm.defという特化設計情報が記述されている。
「予め定められた処理構造に従って、生成する」とは、上記のデザイン情報や、システム構成情報を指定した処理構造に変換したり、さらに情報を整理したりすることである。図1と図2に示されている「データベース仕様(database.xls)」と「モデル仕様(model.xls)」という情報から,図11、図12、図13及び図14に例示される「データベースの構造定義(dti_database.xsd)」に従って、「データベースの処理構造(database.xml)」を生成する。すなわち、dti_database.xsdというファイルは、データベースの構造定義を表わすXMLのスキーマ構造を表わしているファイルである。また、「データベースの処理構造(database.xml)」と「顧客一覧の構造(CustomerList.htm.def)」から図15、図16、図17、図18及び図19に例示される「画面遷移・内容の構造定義(dti_context.xsd)」に従って、「画面遷移・内容の処理構造(context.xml)」を生成する。すなわち、dti_context.xsdは、画面遷移・内容の処理構造のXMLのスキーマ構造を表わしているファイルである。
図20は、本実施形態に係る特化設計情報生成システムの機能ブロック図を例示する。特化設計情報生成システム2000は、システム設計情報入力部2001と、変換情報生成部2002と、特化設計情報生成部2003と、を有する。
なお、本実施形態に係る特化設計情報生成システムの構成要素である各部は、ハードウェア、ソフトウェア、ハードウェアとソフトウェア(プログラム)の両者、のいずれかによって構成することが可能である。たとえば、これらを実現する一例として、計算機を利用する場合には、CPU、メモリ、バス、インターフェース、周辺装置などから構成されるハードウェアと、これらのハードウェア上にて実行可能なソフトウェアを挙げることができる。また、そのようなプログラムを媒体に記録することもできる
「システム設計情報入力部」2001は、システム設計情報を入力する。例えば、テキストデータとして表現されたシステム設計情報を読み取る。あるいは、図1や図2に示されたように、表計算のアプリケーションの生成するファイルの形式やブラウザで表示が可能なフィルの形式で表現されたシステム設計情報を読み取る。
「変換情報生成部」2002は、システム設計情報入力部2001に入力されたシステム設計情報を、変換情報に変換する。「変換情報」とは、前記処理構造を実現するための予め定められたXML構造からなる情報である。
上述の説明の繰り返しとなるが、図5、図6、図9は、図1、図2、図3に例示されたシステム設計情報を変換情報生成部2002により変換することにより得られる変換情報を例示する。ずなわち、図5と図6は、「データベースの処理構造(database.xml)」を示し、図9は、CustomerList.htm.defを示している。
「特化設計情報生成部」2003は、変換情報生成部2002で生成された変換情報に基づいて、特化設計情報を生成する。ここでいう「特化設計情報」とは、前記処理構造を実現するために必要な予め予測されている特定のデザイン情報及びシステム構成情報からなる。
「予め予測されている特定のデザイン情報」とは、デザインパターンの特化した情報、実装するための情報である。例えば、MVCというデザインパターンである。図5から図9は、デザイン情報の具体例を示す。図5と図6とは、MVCデザインパターンにおける、Modelに対応するデザイン情報であるdatabase.xmlを示し、図9は、Viewのデザイン情報であるCustomerList.htm.defを示し図7と図8とは、Controllerのデザイン情報であるcontext.xmlを示している。
「予め予測されている特定のシステム構成情報」とは、ウェブアプリケーション、クライアントサーバシステム、バッチシステムのような全体のシステム構成を表わす情報である。例えば、ウェブアプリケーションの場合、画面の遷移情報やHTMLデザインの情報である。図7、図8及び図9とは、システム構成情報の具体例を示す。図7と図8とにおいて、画面の遷移情報としてcontext.xmlを例示しており、図9は、HTMLデザイン情報としてCustomerList.htm.defを例示している。
したがって、図5から図9に例示された特化設計情報において、database.xml,context.xmlとCustomerList.htm.defとがデザイン情報であり、context.xmlとCustomerList.htm.defがシステム構成情報に該当することになる。
(実施形態1:処理の流れ)
図21は、本実施形態に係る特化設計情報生成システムの処理の流れ図を例示する。ステップS2101において、システム設計情報を入力する。ステップS2102において、システム設計情報を変換情報に変換する。ステップS2103において、変換情報に基づいて、特化設計情報を生成する。
図21は、本実施形態に係る特化設計情報生成システムの処理の流れ図を例示する。ステップS2101において、システム設計情報を入力する。ステップS2102において、システム設計情報を変換情報に変換する。ステップS2103において、変換情報に基づいて、特化設計情報を生成する。
(実施形態1:具体例)
図1から図3に例示されたシステム設計情報から、図5から図10に例示された特化設計情報を生成する処理を説明すると、次のようになる。まず、database.xlsとmodel.xlsというデータベースの設計情報を読込み、次にdti_database.xsdというデータベース構造定義を参照して、データベースの設計情報が正しく定義されているかどうかをチェックし、すべての情報が正しければ、XMLのスキーマの構造定義に従って、database.xmlというデータベースの処理構造を生成する。
図1から図3に例示されたシステム設計情報から、図5から図10に例示された特化設計情報を生成する処理を説明すると、次のようになる。まず、database.xlsとmodel.xlsというデータベースの設計情報を読込み、次にdti_database.xsdというデータベース構造定義を参照して、データベースの設計情報が正しく定義されているかどうかをチェックし、すべての情報が正しければ、XMLのスキーマの構造定義に従って、database.xmlというデータベースの処理構造を生成する。
また、CustomerList.htmというHTMLデザイン情報をHTML形式として正しくチェックし、問題がなければ、CustomerList.htm.defというHTMLデザイン情報を生成する。
最後に、database.xmlとCustomerList.htm.defを読み込み、dti_context.xsdの構造定義を参照して、すべての情報が正しく定義されているかどうかをチェックして、dti_context.xsdというXMLのスキーマの構造定義に従って、context.xmlという追加設計情報を生成する。
(実施形態1:主な効果)
実施形態1において、データベース設計、HTML形式及びすべての設計情報を整合性をチェックを行い、特化設計情報を生成するため、設計情報のミスが早い段階に発見する効果がある。
実施形態1において、データベース設計、HTML形式及びすべての設計情報を整合性をチェックを行い、特化設計情報を生成するため、設計情報のミスが早い段階に発見する効果がある。
(実施形態2:主に請求項2、3、4について説明する)
本発明の実施形態2として、特化設計情報を入力し、保持されているテンプレートを穴埋めすることで、必要なテキストファイルを生成するシステムについて説明する。
図22は、本実施形態に係る完成ファイル生成システムの機能ブロック図を例示する。完成ファイル生成システム2200は、特化設計情報入力部2201と、テンプレート保持部2202と、完成ファイル生成部2203と、を有する。
なお、本実施形態に係る完成ファイル生成システムの構成要素である各部は、ハードウェア、ソフトウェア、ハードウェアとソフトウェア(プログラム)の両者、のいずれかによって構成することが可能である。たとえば、これらを実現する一例として、計算機を利用する場合には、CPU、メモリ、バス、インターフェース、周辺装置などから構成されるハードウェアと、これらのハードウェア上にて実行可能なソフトウェアを挙げることができる。また、そのようなプログラムを記録した媒体を提供することも可能である。
「特化設計情報入力部」2201は、特化設計情報を入力するための部である。例えば、XMLの形式で記述された特化設計情報のテキストファイルを読み込み、構文解析などを行なう。
「テンプレート保持部」2202は、テンプレートを保持する。ここに「テンプレート」とは、システム設計情報が目的とするソースコードおよびリソースファイルを含むテキスト文章の共通部分を持ち、非共通部分を穴埋めすることで完成するテキストファイルである。また、「テキスト文章」、「テキストファイル」に代えて「バイナリファイル」としてもよい。すなわち、テンプレートとは、システム設計情報が目的とするソースコードおよびリソースファイルを含むバイナリファイルの共通部分を持ち、非共通部分を穴埋めすることで完成するバイナリファイルであってもよい。また、バイナリとテキストとが混合したものでもよい。これにより、さまざまなフォーマットのファイルが生成できる。また、テキスト文章、テキストファイル、バイナリファイルが混在していてもよい。
図23から図30は、テンプレートの具体例を示す。例えば、図28は、画面遷移の制御定義のXMLを生成するためのテンプレートとなっている。図28において、<!-DTI:HtmlPart _KEY="CONTEXT" _POSITION="START -->と<!-DTI:HtmlPart _KEY="CONTEXT _POSITION="END" -->とにはさまれた、{と}とで囲まれた部分が穴埋めを行なうべき部分を示している。
また、例えば、図23において、<!--DTI:HtmlPart _KEY="Field" _POSITION="START" -->pstmt.{SetValueFuntion}({FieldNum}, dto.get{PropFieldName}());<!--DTI:HtmlPart _KEY="Field" _POSITION="END" -->と記述がされることにより、特化設計情報のそれぞれのFieldタグの指定に応じて、そのFiledタグの指定の中のSetValueFunction, FieldNum, PropFieldNameのタグなどにより指定される値に展開がされる。すなわち、Fieldタグの指定が10個あるとすれば、上記の記述は、10個に展開されることとなり、それぞれの展開において、SetValueFunction, FieldNum, PropFieldNameが置き換えられることとなる。
「完成ファイル生成部」2203は、テンプレート保持部2202で保持されているテンプレートの非共通部分を前記特化設計情報に基づいて穴埋めすることで完成させ、完成ファイルを生成する。ここに、「前記特化設計情報」とは、特化設計情報入力部2201に入力された特化設計情報を意味する。また、「完成ファイル」とは、前記目的を達成するためのソースコードを含む必要なテキストファイルである。「前記目的」とは、システム設計情報の目的である。例えば、その目的として、以下の三つの画面遷移を示す定義したい場合、すなわち、顧客編集の入力画面(CustomerEditEntry) → 顧客編集の確認画面(CustomerEditConfirm) → 顧客編集の結果画面(CustomerEditUpdate)という画面遷移を定義したい場合には、図31に例示されるstruts-config.xmlの内容となる。
(実施形態2:処理の流れ)
図32は、本実施形態に係る完成ファイル生成システムの処理の流れ図を例示する。ステップS3201において、特化設計情報を入力する。ステップS3202において、テンプレート情報保持部で保持されているテンプレートを取得する。ステップS3203において、完成ファイルを生成する。
図32は、本実施形態に係る完成ファイル生成システムの処理の流れ図を例示する。ステップS3201において、特化設計情報を入力する。ステップS3202において、テンプレート情報保持部で保持されているテンプレートを取得する。ステップS3203において、完成ファイルを生成する。
(実施形態2:具体例)
図33から図39は、図23から図31に例示されるテンプレートに対して、図5から図10に例示され特化設計情報に基づいて穴埋めを行なうことで生成される完成ファイルを例示する。図7において、context.xmlは特化設計情報となっている。図31のstruts-config.xmlという画面遷移を定義するための完成ファイルを生成するためには、まず、特化設計情報の入力部からcontext.xmlファイルを読み込み、テンプレート保持部から,\StrutsConfig\template.srcというテンプレートファイルを読み込み、保持する。最後に、完成ファイル生成部から、context.xmlの遷移情報を抽出して、テンプレートファイルの内容の画面遷移の定義内容に穴埋め処理を行い、struts-config.xmlファイルを生成する。
図33から図39は、図23から図31に例示されるテンプレートに対して、図5から図10に例示され特化設計情報に基づいて穴埋めを行なうことで生成される完成ファイルを例示する。図7において、context.xmlは特化設計情報となっている。図31のstruts-config.xmlという画面遷移を定義するための完成ファイルを生成するためには、まず、特化設計情報の入力部からcontext.xmlファイルを読み込み、テンプレート保持部から,\StrutsConfig\template.srcというテンプレートファイルを読み込み、保持する。最後に、完成ファイル生成部から、context.xmlの遷移情報を抽出して、テンプレートファイルの内容の画面遷移の定義内容に穴埋め処理を行い、struts-config.xmlファイルを生成する。
(実施形態2:主な効果)
本実施形態によれば、設計者が実装について分からなくとも、仮動作するための画面(CustmerList.jsp)、データ制御ソース(CustmerBean.java)と画面制御するリソースファイル(struts-config.xml)が自動的に生成されるため、実装する前に、利用者からシステムを動作しながら、仕様が確認できる効果がある。また、最小限のソースコードが自動的に生成されるため、品質も一定の範囲内に保証されるし、コーディングスタイルも半強制的に制限される効果もある。最後、開発者が実装技術について完全に理解できなくとも、部分的な実装は可能となる。
本実施形態によれば、設計者が実装について分からなくとも、仮動作するための画面(CustmerList.jsp)、データ制御ソース(CustmerBean.java)と画面制御するリソースファイル(struts-config.xml)が自動的に生成されるため、実装する前に、利用者からシステムを動作しながら、仕様が確認できる効果がある。また、最小限のソースコードが自動的に生成されるため、品質も一定の範囲内に保証されるし、コーディングスタイルも半強制的に制限される効果もある。最後、開発者が実装技術について完全に理解できなくとも、部分的な実装は可能となる。
本発明に係るシステムは、コンピュータシステムの作成に係る作業効率および品質向上に効果が得られ、産業上有用である。
2000 特化設計情報生成システム
2001 システム設計情報入力部
2002 変換情報生成部
2003 特化設計情報生成部
2001 システム設計情報入力部
2002 変換情報生成部
2003 特化設計情報生成部
Claims (4)
- 予め定められた処理構造に従ってシステム設計情報から特化設計情報を生成するための特化設計情報生成システムであって、
前記システム設計情報を入力するシステム設計情報入力部と、
前記システム設計情報入力部に入力されたシステム設計情報を、前記処理構造を実現するための予め定められたXML構造からなる変換情報に変換する変換情報生成部と、
前記変換情報生成部で生成された変換情報に基づいて、前記処理構造を実現するために必要な予め予測されている特定のデザイン情報及びシステム構成情報からなる特化設計情報を生成する特化設計情報生成部と、
を有する特化設計情報生成システム。 - 前記特化設計情報を入力するための特化設計情報入力部と、
システム設計情報が目的とするソースコードおよびリソースファイルを含むテキスト文章の共通部分を持ち、非共通部分を穴埋めすることで完成するテキストファイルであるテンプレートを保持するテンプレート保持部と、
前記テンプレート保持部で保持されているテンプレートの非共通部分を前記特化設計情報に基づいて穴埋めすることで完成させ、前記目的を達成するためのソースコードを含む必要なテキストファイルである完成ファイルを生成する完成ファイル生成部と、
を有する完成ファイル生成システム。 - 前記テキストに代えて、バイナリとする請求項2に記載の完成ファイル生成システム。
- 前記テキストに代えて、テキスト及びバイナリとする請求項2に記載の完成ファイル生成システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004123923A JP2005309655A (ja) | 2004-04-20 | 2004-04-20 | 特化設計情報生成システム及び完成ファイル生成システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004123923A JP2005309655A (ja) | 2004-04-20 | 2004-04-20 | 特化設計情報生成システム及び完成ファイル生成システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005309655A true JP2005309655A (ja) | 2005-11-04 |
Family
ID=35438397
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004123923A Pending JP2005309655A (ja) | 2004-04-20 | 2004-04-20 | 特化設計情報生成システム及び完成ファイル生成システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005309655A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007087127A (ja) * | 2005-09-22 | 2007-04-05 | Open Stream Inc | データ生成プログラム、該プログラムを記憶した記憶媒体、オープンソースソフトウェア開発環境統合プログラム、該プログラムを記憶した記憶媒体 |
CN106354612A (zh) * | 2016-08-25 | 2017-01-25 | 中国人民解放军济南军区72465部队 | 云诊断资源的服务化封装方法及系统 |
-
2004
- 2004-04-20 JP JP2004123923A patent/JP2005309655A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007087127A (ja) * | 2005-09-22 | 2007-04-05 | Open Stream Inc | データ生成プログラム、該プログラムを記憶した記憶媒体、オープンソースソフトウェア開発環境統合プログラム、該プログラムを記憶した記憶媒体 |
CN106354612A (zh) * | 2016-08-25 | 2017-01-25 | 中国人民解放军济南军区72465部队 | 云诊断资源的服务化封装方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20060015839A1 (en) | Development of software systems | |
US20050149868A1 (en) | User interface application development program and development apparatus | |
CN108762743A (zh) | 一种数据表操作代码生成方法及装置 | |
CN106354492A (zh) | 一种快速调整交易流程对接的自动化代码生成方法及系统 | |
CN101996131A (zh) | 基于xml封装关键字的gui自动测试方法及自动测试平台 | |
CN110968294B (zh) | 一种业务领域模型建立系统及方法 | |
JP4613214B2 (ja) | ソフトウェア自動構成装置 | |
CN104657274A (zh) | 软件界面测试方法及装置 | |
US20080208554A1 (en) | Simulator development system and simulator development method | |
JP2017142767A (ja) | コントローラシステム、変数連携支援装置 | |
CN111124380A (zh) | 一种前端代码生成方法 | |
JP4672754B2 (ja) | プログラム・設計書の生成装置及びプログラム・設計書の生成プログラム | |
JP2013020437A (ja) | 要件管理支援装置 | |
CN111966350A (zh) | Web前端界面生成方法及装置 | |
JP2005309655A (ja) | 特化設計情報生成システム及び完成ファイル生成システム | |
CN106874014B (zh) | 基于模型和框架的三层代码生成方法 | |
CN115344966A (zh) | 一种cad装配体零部件替换方法及系统 | |
JP2011238151A (ja) | 画面プログラム生成装置 | |
JP2010049439A (ja) | ソフトウェアモデルを用いたシステム構築方法およびモデリング装置 | |
JP2008165388A (ja) | プログラム更新管理システム、プログラム更新管理方法、及びコンピュータプログラム | |
Giachetti et al. | Using UML profiles to interchange DSML and UML models | |
JP2012150740A (ja) | プログラム生成装置及び方法 | |
Tilley | Documenting software systems with views VI: lessons learned from 15 years of research & practice | |
KR101443879B1 (ko) | 웹 어플리케이션 프레임워크 처리 방법 | |
TWI686719B (zh) | 方案接軌系統及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060411 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080701 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090420 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090817 |