JP6425672B2 - 設計書の入出力装置、設計書の入出力システム及び設計書の入出力方法 - Google Patents

設計書の入出力装置、設計書の入出力システム及び設計書の入出力方法 Download PDF

Info

Publication number
JP6425672B2
JP6425672B2 JP2016030214A JP2016030214A JP6425672B2 JP 6425672 B2 JP6425672 B2 JP 6425672B2 JP 2016030214 A JP2016030214 A JP 2016030214A JP 2016030214 A JP2016030214 A JP 2016030214A JP 6425672 B2 JP6425672 B2 JP 6425672B2
Authority
JP
Japan
Prior art keywords
design
design information
information
input
design document
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.)
Active
Application number
JP2016030214A
Other languages
English (en)
Other versions
JP2017146923A5 (ja
JP2017146923A (ja
Inventor
秀行 鹿糠
秀行 鹿糠
佑樹 近藤
佑樹 近藤
知倫 中村
知倫 中村
岳 斎藤
岳 斎藤
立川 茂
茂 立川
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2016030214A priority Critical patent/JP6425672B2/ja
Priority to PCT/JP2017/004537 priority patent/WO2017141785A1/ja
Priority to MYPI2018702621A priority patent/MY194133A/en
Publication of JP2017146923A publication Critical patent/JP2017146923A/ja
Publication of JP2017146923A5 publication Critical patent/JP2017146923A5/ja
Application granted granted Critical
Publication of JP6425672B2 publication Critical patent/JP6425672B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Databases & Information Systems (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Document Processing Apparatus (AREA)

Description

本発明は、例えばシステム開発等で作成及び保守される様々なレイアウトの設計書を、記憶装置で一元管理する目的で、スプレッドシートソフトで作成して記憶装置に入出力する技術に関するものである。
システム開発では、計算機システムを構成する画面やデータベースに関する設計情報を記すために様々な設計書が作成される。設計書はワードプロセッシングソフトやスプレッドシート(表計算)ソフトなどで作成されるが、本発明ではスプレッドシート形式の設計書を対象とする。
設計書はシステム開発者間で設計情報を共有するためのメディアである。他方、設計書に記される設計情報を活用してプログラムの自動生成など機械的な処理を行うために、設計書を構造分析した上でデータベースの形式に設計情報を変換して一元管理する。
このようなスプレッドシートで記されるデータとデータベースのデータとの入出力を機械化する装置として特許文献1が知られている。
特開2012−123607号公報
上述の従来技術では、スプレッドシートで記されるデータとデータベースのデータとの入出力を機械化することはできるが、データベースにデータを格納するためのスキーマを事前に定義しておく必要があった。
システム開発で取り扱われる設計書は、開発プロジェクトごとに種類や記述する項目やレイアウトが異なり、また開発や保守の過程でレイアウトや項目が変更されることもある。従来技術では、データベースのスキーマの変更、及びスキーマの変更に伴うデータマイグレーションが必要とされる。また、設計書をデータベースに集約して設計情報を一括で保守するために、スキーマに則ってデータベースで格納されている設計情報の検索や編集をする画面や処理が作成されることがある。この場合、スキーマの変更に伴いそれらの画面や処理の改修も必要となる、という問題があった。
そこで本発明は、上記問題点に鑑みてなされたもので、設計書に記述される項目やレイアウトが変更になった場合にデータベースのスキーマの改修を不要にすることを目的とする。
本発明は、プロセッサとメモリを備えてスプレッドシート形式の設計書を処理する設計書の入出力装置であって、予め生成されて前記設計書の構造を定義した設計情報定義と、予め生成されてスプレッドシート形式の前記設計書を半構造データ形式に変換する定義を有する設計情報雛形と、を格納する記憶部と、前記スプレッドシート形式の前記設計書を受信して、当該設計書の情報を前記設計情報定義に基づいて前記設計情報雛形に設定し、前記半構造データ形式の設計情報として出力する変換部と、前記記憶部に格納された前記設計情報を検索するための検索条件入力画面を、前記設計情報定義に基づいて生成する検索条件入力画面出力部と、を有し、前記変換部は、前記設計情報を前記半構造データ形式を維持して前記記憶部へ格納する
本発明によれば、システム開発においてスプレッドシート形式で作成される設計書を半構造データ型式(例えば、XML形式)の設計情報に変換することが可能となる。XML形式の設計情報は、XMLファイルとして格納するか、またはデータベースの一カラムに格納する、あるいはXMLデータベースなどの形式で記憶装置に格納できるため、設計書のレイアウトが変更された場合であってもデータベースのスキーマの変更は不要となる。これによりシステム開発において作成される様々な設計書に柔軟に対応可能であり、設計書のカスタマイズが容易なスプレッドシート形式設計書の入出力を実現できる。
本発明の実施例1を示し、計算機システムのハードウェア構成の一例を示すブロック図である。 本発明の実施例1を示し、計算機システムの機能要素の一例を示すブロック図である。 本発明の実施例1を示し、設計書メタ情報の一例を示す図である。 本発明の実施例1を示し、設計情報定義体の一例を示す図である。 本発明の実施例1を示し、設計情報雛形の一例を示す図である。 本発明の実施例1を示し、設計情報の一例を示す図である。 本発明の実施例1を示し、設計書雛形の一例を示す図である。 本発明の実施例1を示し、設計書の一例を示す図である。 本発明の実施例1を示し、設計書の一例を示す図である。 本発明の実施例1を示し、設計書登録画面の一例を示す画面イメージである。 本発明の実施例1を示し、検索条件入力画面の一例を示す画面イメージである。 本発明の実施例1を示し、検索条件入力画面の一例を示す図である。 本発明の実施例1を示し、設計情報検索結果表示画面の一例を示す画面イメージである。 本発明の実施例1を示し、設計情報検索結果表示画面の一例を示す画面イメージである。 本発明の実施例1を示し、設計情報検索結果表示画面の一例を示す画面イメージである。 本発明の実施例1を示し、設計情報参照及び編集画面の一例を示す画面イメージである。 本発明の実施例1を示し、設計書メタ情報変換部の処理の一例を示すフローチャートである。 本発明の実施例1を示し、設計情報読込及び変換部の処理の一例を示すフローチャートである。 本発明の実施例1を示し、設計情報検索条件入力画面出力部の処理の一例を示すフローチャートである。 本発明の実施例1を示し、設計情報検索及び結果表示画面出力部の処理の一例を示すフローチャートである。 本発明の実施例1を示し、設計情報参照及び編集画面出力部の処理の一例を示すフローチャートである。 本発明の実施例1を示し、設計情報編集処理部の処理の一例を示すフローチャートである。 本発明の実施例1を示し、計算機の構成の一例を示すブロック図である。 本発明の実施例2を示し、計算機の機能要素の一例を示すブロック図である。
本発明の一実施例について、以下図面を参照して説明する。なお、同一の符号は同一の構成要素を示す。
<装置構成>
本発明の実施例1に係る計算機システムは、設計書メタ情報変換装置101と、設計情報入出力装置102と、クライアント装置103からなるスプレッドシート形式の設計書の入出力システム100である。図1は、計算機システムのハードウェア構成の一例を示すブロック図を示す。
設計書メタ情報変換装置101と、設計情報入出力装置102と、クライアント装置103は、図1に示すように、制御及び演算部101aと102aと103aと、入力部101bと102bと103b、記憶部101cと102cと103cと、出力部101dと102dと103dと、通信インタフェース部104aと104b及び104cを有する計算機システムである。なお、通信インタフェース部104a、104b及び104cはネットワークを介して接続される。
設計書メタ情報変換装置101と設計情報入出力装置102は、通信インタフェース部104aと104bを介して互いの装置間のデータ通信連携を実現する。設計情報入出力装置102とクライアント装置103は、通信インタフェース部104bと104cを介して互いの装置間のデータ通信を実現する。これらの、設計書メタ情報変換装置101と、設計情報入出力装置102と、クライアント装置103は、一体で合っても構わない。
記憶部101cと102cと103cは、ハードディスクドライブ等の不揮発性の記憶媒体を含む記憶装置で構成される。設計書メタ情報変換装置101の記憶部101cには設計書メタ情報変換部201と表計算部210として機能するコンピュータソフトウェアプログラムが格納される。
設計情報入出力装置102の記憶部102cには設計書読込及び変換部202と設計情報検索条件入力画面出力部203と設計情報検索及び結果表示画面出力部204と設計情報参照及び編集画面出力部205と設計情報編集処理部206として機能するコンピュータソフトウェアプログラムが格納されている。
クライアント装置103の記憶部103cには設計書などを編集する表計算部211として機能するコンピュータプログラムと、ブラウザ212として機能するコンピュータプログラムと、スプレッドシートの設計書及び設計書の雛形が格納されている。また、記憶部103cには設計情報入出力装置102から送信された画面を出力部103dに表示するブラウザとして機能するコンピュータソフトウェアプログラムも格納されている。
制御及び演算部101a、102a、103aは、後述するようにプロセッサとメモリを含み、記憶部101c、102c、103cからプログラムをメモリにロードしてプロセッサによって実行する。
設計書メタ情報変換部201及び表計算部210は、制御及び演算部101aによって記憶部101cから読み出されて実行されることにより各機能を実現している。設計書読込及び変換部202と設計情報検索条件入力画面出力部203と設計情報検索及び結果表示画面出力部204と設計情報参照及び編集画面出力部205は制御及び演算部102aによって記憶部102cから読み出されて実行されることにより各機能を実現している。表計算部211及びブラウザ212は、制御及び演算部103aによって記憶部103cから読み出されて実行されることにより各機能を実現している。
入力部101bと102bと103bは、マウス等の入力デバイスである。出力部101dと102dと103dは、各種ディスプレイ等の表示デバイスであり、この他各種プリンタ等の他の出力装置を接続することもできる。
図20は、スプレッドシート形式の設計書入出力システム100を構成する計算機の一例を示すブロック図である。図示の例は、設計書メタ情報変換装置101として稼動する計算機10の例を示すが、設計情報入出力装置102及びクライアント装置103も同様の構成である。
計算機10は、制御及び演算処理を行うプロセッサ60と、プログラムやデータを保持するメモリ70と、ネットワーク40に接続されて他の計算機等と通信を行う通信インタフェース部104aと、記憶部101cに接続されてデータやプログラム等の読み書きを行うストレージインタフェース86と、入力部101bに接続されたI/Oプロセッサ83と、プロセッサ60に接続された出力部101dを含む。なお、図1に示した制御及び演算部101a、102a、103aは、プロセッサ60及びメモリ70に相当する。
プロセッサ60は、ヘテロジニアスのマルチコアプロセッサで構成され、複数のCPUコア61と、複数のGPUコア62を含む。また、プロセッサ60は、メモリ70に接続されるメモリコントローラ63と、出力部101dに接続されるディスプレイコントローラ65と、I/Oプロセッサ83、通信インタフェース部104a及びストレージインタフェース86に接続されるI/Oコントローラ64とを含む。入力部101bとしては、キーボードやマウスやタッチパネルを含む。出力部101dとしては、ディスプレイを含む。
メモリ70には、OS71がロードされてプロセッサ60によって実行される。OS71は設計書メタ情報変換部や表計算部などの1以上のソフトウェア72を実行する。
設計書メタ情報変換部201などの各機能部はプログラムとしてメモリ70にロードされる。
プロセッサ60は、各機能部のプログラムに従って処理することによって、所定の機能を提供する機能部として稼働する。例えば、プロセッサ60は、設計書メタ情報変換プログラムに従って処理することで設計書メタ情報変換部201として機能する。他のプログラムについても同様である。さらに、プロセッサ60は、各プログラムが実行する複数の処理のそれぞれの機能を提供する機能部としても稼働する。計算機及び計算機システムは、これらの機能部を含む装置及びシステムである。
設計書メタ情報変換装置101の各機能を実現するプログラム、テーブル等の情報は、記憶部101cや不揮発性半導体メモリ、ハードディスクドライブ、SSD(Solid State Drive)等の記憶デバイス、または、ICカード、SDカード、DVD等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
<処理の概要>
図2は、計算機システムの機能ブロック図の一例を示す。
本実施例1では、設計書メタ情報変換装置101を利用する開発者等が、クライアント装置103を利用するユーザの業務を処理する計算機システムを開発することを想定する。設計情報入出力装置102は、ユーザの業務で使用する設計書を処理する計算機である。
設計書メタ情報変換装置101は、開発者の操作に応じて、設計書304b(図7B)の構造(項目及びレイアウト)を定義する設計書メタ情報301(図3)をスプレッドシート形式で生成する。
設計書メタ情報変換装置101では、設計書メタ情報変換部201が、設計書メタ情報301を読み込んで、設計書304bの構造を定義する設計情報定義体302(図4)と、設計書304bを変換する際に利用する設計情報雛形303(図5)に変換する。
設計書メタ情報変換装置101は、変換された設計情報定義体302と設計情報雛形303を、ユーザが利用する設計情報入出力装置102の記憶部102cへ格納させる。
また、設計書メタ情報変換装置101を利用する開発者は、設計書メタ情報301に対応する設計書雛形304a(図7A)を生成して、ユーザが利用する設計情報入出力装置102の記憶部102cに格納しておく。
クライアント装置103のユーザは、表計算部210で設計書雛形304aを読み込んで、スプレッドシート形式の設計書304bを生成し、記憶部102cに格納する。
クライアント装置103はユーザの操作に応じて、設計書304bの登録を要求する。設計書メタ情報変換部201は、登録要求を受け付けると設計書登録画面305をクライアント装置103に出力する。
クライアント装置103は設計書登録画面305から設計書304bの登録を実行する。設計情報入出力装置102は、スプレッドシート形式の設計書304bを受け付けると、設計書読込及び変換部202が設計情報定義体302と、設計情報雛形303を読み込んで、後述するようにスプレッドシート形式の設計書304bをXML形式の設計情報310に変換し、記憶部102cに格納する。
設計情報入出力装置102は、クライアント装置103から検索要求を受け付けると、設計情報検索条件入力画面出力部203が設計情報定義体302を読み込んで検索条件入力画面306を生成し、クライアント装置103に出力する。なお、検索条件入力画面306は、図9、図10の検索条件入力画面306a、306bの総称を示す。
設計情報入出力装置102は、クライアント装置103から検索項目を受け付けると、設計情報検索及び結果表示画面出力部204が検索を実行して、設計情報定義体302を参照して設計情報検索結果画面307を生成し、検索結果としてクライアント装置103に送信する。なお、設計情報検索結果画面307は、図11A〜図12に示す設計情報検索結果画面307a、307b、307cの総称である。
設計情報入出力装置102は、クライアント装置103から検索結果について設計情報の参照要求を受け付けると、設計情報参照及び編集画面出力部205が設計情報310と設計情報定義体302を読み込んで、設計情報参照及び編集画面308を生成し、クライアント装置103に出力する。
クライアント装置103は、設計情報参照及び編集画面308から設計情報310の編集を行うことができる。設計情報入出力装置102は、クライアント装置103から編集結果の出力要求を受け付けると、設計情報編集処理部206がXML形式の設計情報310を読み込んで、設計情報定義体302と設計情報雛形303に応じてスプレッドシート形式の設計書304cを生成してクライアント装置103へ送信する。
<データ構成>
スプレッドシート形式で作成される各種設計書に対するメタ情報を定義した設計書メタ情報301について説明する。
設計書メタ情報301は、設計書メタ情報変換装置101の記憶部101cに格納されたファイルの一例であり、設計書メタ情報変換部201で利用される。設計書メタ情報301は、スプレッドシートで定義される設計書の種別ごとに1つのファイルが表計算部210によって作成される。
以下、図3に一例を示す設計書メタ情報301を利用してデータ構成について説明する。設計書メタ情報301は、クライアント装置103で利用するスプレッドシート形式の設計書304b(設計書雛形304a)で使用する項目と、各項目のセルの位置等のレイアウトを定義した設計書304bの構造を定義したファイルである。
設計書メタ情報301の1ファイルの中には、“ファイル種別”(3011)と、“項目グループ間関連”(3012)と、“シート種別”(3013)と、 “単数項目グループ”(3014)と、“複数項目グループ”(3015)の要素が含まれる。
要素“ファイル種別”(3011)はスプレッドシート形式のファイルごとに設計書の種別を定義するものであり、要素“ローカル名”と要素“英字名”を含む。
要素“シート種別”(3013)はスプレッドシートで定義されるシートごとに定義される。したがって、スプレッドシート内に複数のシートで構成される設計書304bを対象とする場合、要素“シート種別”(3013)、及び以下の“単数項目グループ”(3014)と、“複数項目グループ”(3015)を複数定義する。要素“シート種別”(3013)は、要素“ローカル名”と要素“英字名”を含む。
要素“単数項目グループ”(3014)には、設計書で定義される1つの項目に対して値が1つ定義される項目(単数項目)の内容と付加情報を定義するグループを定義する。なお、要素“単数項目グループ”(3014)は、要素“ローカル名”と要素“英字名”を含む。また、定義される単数項目の数だけ、要素“項番”と、要素“必須フラグ”と、要素“単数項目ローカル名”と、要素“単数項目英字名”と、単数項目がスプレッドシート上のどの位置にあるかを示す情報として要素“開始行”と要素“開始列”と、単数項目を画面上に表示する際に必要とする情報として要素“種類”と要素“サイズ”が定義される。
“種類”は、クライアント装置103のブラウザで表示する際の形式を規定し、“input”は入力フィールドを示し、“text”は文字列を表示することを示す。また、“サイズ”は、入力される文字数を規定する。
要素“複数項目グループ”(3015)には、設計書で定義される1つの項目に対して値が複数定義される項目(複数項目)の内容と付加情報を定義するグループを定義する。要素“複数項目グループ”(3015)は、要素“ローカル名”と要素“英字名”を含む。また、複数項目の数だけ、要素“項番”と、要素“必須フラグ”と、要素“複数項目ローカル名”と、要素“複数項目英字名”と、複数項目がスプレッドシート上のどの位置から始まるかを示す情報として要素“開始行”と要素“開始列”と、複数項目を画面上に表示する際に必要とする情報として要素“種類”と要素“サイズ”が定義される。
なお、以上の要素“単数項目グループ”(3014)と要素“複数項目グループ”(3015)は、対象とする設計書に合わせて、それぞれ無くてもよいし、複数あってもよい。
要素“項目グループ間関連”(3012)には、要素“項番”と、要素“親項目グループ名”と、要素“子項目グループ名”と、要素“説明”を含む。要素“親項目グループ名”と要素“子項目グループ名”には、“単数項目グループ”(3014)または“複数項目グループ”(3015)の“英字名”が記入される。
設計書メタ情報301は、上記の内容で記憶部101cに格納される。設計書メタ情報301は、クライアント装置103が利用する設計書304bに対応して設計書メタ情報変換装置101を使用する開発者などが予め作成してクライアント装置103へ送信する。設計書メタ情報301は、設計書メタ情報変換装置101で作成してもよいし、他の計算機で生成してもよい。
以上のように設計書メタ情報301は、スプレッドシート形式の設計書304b及び設計書雛形304aの構造とレイアウトを含む構成情報を予め定義した情報である。
図4に設計情報定義体302の一例を示す。設計情報定義体302は、設計書メタ情報変換部201の処理によって1つの設計書メタ情報301から1つ生成されて、記憶部101c及び記憶部102cに格納されるファイルである。以下、図4の設計情報定義体302を参照してデータの構成について説明する。
設計情報定義体302はXML形式のファイルであり、ルート要素として“genericRule”(3021)を持つ。また、要素“genericRule”(3021)は属性として“localName”と“name”を持つ。
“localName”の値は設計書メタ情報301の“ファイル種別”(3011)の“ローカル名”から、“name”の値は設計書メタ情報301の“ファイル種別”(3011)の“英字名”から、設計書メタ情報変換部201の処理でそれぞれ設定される。
さらに要素“genericRule”(3021)は、要素“relationship”(3022)と要素“designSpecification”(3023)を複数含む。
要素“relationship”(3022)は、設計書メタ情報301で定義される“項目グループ間関連”と同数だけ、設計書メタ情報変換部201の処理によって生成される。また、要素“relationship”(3022)は属性として“parentItem”と“childItem”を持つ。“parentItem”の値は設計書メタ情報301の“親項目グループ名”から、“childItem”の値は設計書メタ情報301の“子項目グループ名”から、設計書メタ情報変換部201の処理でそれぞれ設定される。
要素“designSpecification”(3023)は、設計書メタ情報301で定義される“シート種別”と同数だけ、設計書メタ情報変換部201の処理によって生成される。要素“designSpecification”(3023)は属性として“localName”と“sheetCls”を持つ。
“localName”の値は設計書メタ情報301の“シート種別”(3013)の“ローカル名”から、“sheetCls”の値は設計書メタ情報301の“シート種別”(3013)の“英字名”から、設計書メタ情報変換部201の処理でそれぞれ設定される。さらに要素“designSpecification”(3023)は、要素“key”を複数含む。
要素“key”は、設計書メタ情報301の“単数項目グループ”(3014)または“複数項目グループ”(3015)の数だけ、設計書メタ情報変換部201の処理によって生成される。また、要素“key”は属性として“localName”と“name”と“type”を持つ。
“localName”の値は設計書メタ情報301の“単数項目グループ”(3014)の“ローカル名”または“複数項目グループ”(3015)の“ローカル名”から設計書メタ情報変換部201の処理で設定される。“name”の値は設計書メタ情報301の“単数項目グループ”(3014)の“英字名”または“複数項目グループ”(3015)の“英字名”から設計書メタ情報変換部201の処理で設定される。
“type”の値は“単数項目グループ”(3014)の場合は“single”または“複数項目グループ”(3015)の場合は“list”から、設計書メタ情報変換部201の処理で設定される。さらに要素“key”は、“type”に設定された値が”single”の場合は要素“singleItemKey”を複数含み、または“type”に設定された値が“list”の場合は要素“listItemKey”を複数含む。
要素“singleItemKey”(3024)は、設計書メタ情報301の“単数項目グループ”(3014)で定義される項目の数だけ、設計書メタ情報変換部201の処理によって生成される。また、要素“singleItemKey”(3024)は属性として“localName”と“name”と“mandatory”を持つ。
“localName”の値は設計書メタ情報301の“単数項目グループ”(3014)の“単数項目ローカル名”から、“name”の値は設計書メタ情報301の“単数項目グループ”(3014)の“単数項目英字名”から、“mandatory”の値は設計書メタ情報301の“必須フラグ”に“○”が記入されている場合は“true”が、“必須フラグ”に何も記入されていない場合は“false”が、設計書メタ情報変換部201の処理でそれぞれ設定される。
さらに、要素“singleItemKey”(3024)は、要素“spreadsheet”と要素“webScreen”を含む。要素“listItemKey”(3025)は、設計書メタ情報301の“複数項目グループ”(3015)で定義される項目の数だけ、設計書メタ情報変換部201の処理によって生成される。また、要素“listItemKey”(3025)は属性として“localName”と“name”と“mandatory”を持つ。
“localName”の値は設計書メタ情報301の“複数項目グループ”(3015)の“複数項目ローカル名”から、“name”の値は設計書メタ情報301の“複数項目グループ”(3015)の“複数項目英字名”から、“mandatory”の値は設計書メタ情報301の“必須フラグ”に“○”が記入されている場合は“true”が“必須フラグ”に何も記入されていない場合は“false”が、設計書メタ情報変換部201の処理でそれぞれ設定される。さらに、要素“listItemKey”(3025)は、要素“spreadsheet”と要素“webScreen”をそれぞれ1つずつ含む。
必須フラグは設計書304bで必ず使用する項目を識別するフラグで、“○”であれば設計書304bで必須の項目であることを示す。また、必須フラグが“○”に設定された項目は、検索処理で検索キーとなる。
要素“sheet”(3026)は、要素“cellLine”と要素“cellColumn”をそれぞれ1つずつ含む。要素“cellLine”(3026)の値は設計書メタ情報301の“開始行”から、要素“cellColumn”の値は設計書メタ情報301の“開始列”から、設計書メタ情報変換部201の処理でそれぞれ設定される。
要素“webScreen”(3027)は、要素“itemType”と、要素“itemLength”を、それぞれ1つずつ含む。要素“itemType”の値は設計書メタ情報301の“種類”から、要素“itemLength”の値は設計書メタ情報301の“サイズ”から、設計書メタ情報変換部201の処理でそれぞれ設定される。
以上のように、設計情報定義体302には、スプレッドシート形式の設計書304bの行番号(cellLine)と列番号(cellColumn)で定まるセルの情報が定義される。設計書読込変換部202は、設計書304bに応じた設計情報定義体302を参照することで、スプレッドシート形式の設計書304bの構造を取得できる。
図5にスプレッドシート形式の設計書304bをXML形式に変換するために使用する設計情報の雛形、または記憶部102cに格納された設計情報310をXML形式に再変換するために使用する設計情報雛形303の一例を示す。
設計情報雛形303は、設計書メタ情報変換部201の処理によって設計書メタ情報301を元にして生成され、記憶部101c及び102cに格納されるファイルである。以下、図5に一例を示す設計情報雛形303を利用してデータ構成について説明する。
設計情報雛形303はXML形式のファイルであり、ルート要素として“documentCls”(3031)を持つ。また、要素“documentCls”(3031)は属性として“name”と“fileName”と“date”を持つ。
属性“name”の値は設計書メタ情報301の“ファイル種別”(3011)の“英字名”から、設計書メタ情報変換部201の処理で設定される。属性“fileName”の値は 設計書登録画面305でユーザにより入力される“設計書ファイル名”から、設計書読込及び変換部202の処理で設定される。属性“date”の値は、設計書読込及び変換部202で設計書304bが記憶部102cに登録された際の、または設計情報編集処理部206で設計書304cを生成する際の年月日日時分秒が、例えば“YYYY/MM/DD/HH:MM:SS”の形式で生成される。さらに要素“documentCls”(3031)は、要素“sheetCls”(3032)を複数含む。
要素“sheetCls”(3032)は設計書メタ情報301で定義される“シート種別”(3013)と同数だけ、設計書メタ情報変換部201の処理によって生成される。また、“sheetCls”(3032)は属性として“name”を持つ。属性“name”の値は設計書メタ情報301の“シート種別”(3013)の“英字名”から、設計書メタ情報変換部201の処理で設定される。さらに要素“sheetCls”(3032)は、要素“singleItems”(3033)または要素“listItems”(3037)を含む。
要素“singleItems”(3033)は、設計書メタ情報301の“単数項目グループ”(3014)の数だけ、設計書メタ情報変換部201の処理によって生成される。また、要素“singleItems”(3033)は属性として“name”を持つ。属性“name”の値は設計書メタ情報301の“単数項目グループ”(3014)の“英字名”から、設計書メタ情報変換部201の処理で設定される。
さらに要素“singleItems”(3033)には、設計書メタ情報301の“単数項目グループ”(3014) で定義される“単数項目英字名”を要素名とする複数の要素が、設計書メタ情報変換部201の処理で生成され含まれる。設計書メタ情報301の“単数項目グループ”(3014) で定義される“単数項目英字名”を要素名とする要素の値には、“${}”で囲まれた変数が設計書メタ情報変換部201で生成される。変数名は、設計書メタ情報301の“シート種別”(3013)の“英字名”と設計書メタ情報301の“単数項目グループ”(3014)の“英字名”を“.”で連結した形式で、設計書メタ情報変換部201によって生成される。
要素“listItems”(3037)は、設計書メタ情報301の“複数項目グループ”(3015)の数だけ、設計書メタ情報変換部201の処理によって生成される。また、要素“listItems”(3037)は属性として“name”を持つ。属性“name”の値は設計書メタ情報301の“複数項目グループ”(3015)の“英字名”から、設計書メタ情報変換部201の処理で設定される。さらに要素“listItems”(3037)は要素“member”(3035)が一つ含まれる。なお、要素“listItems”(3037)と要素“member”(3035)の間には“#foreach( $member in $XXXX)”が、要素“member”(3035)の直後には“#end”が設計書メタ情報変換部201によって生成される。前記の“XXXX”には、設計書メタ情報301の“シート種別”(3013)の“英字名”と設計書メタ情報301の“複数項目グループ”(3015)の“英字名”を“.”で連結した形式の名前とする変数が設計書メタ情報変換部201で生成される。
要素“member”(3035)には、設計書メタ情報301の“複数項目グループ” (3015)で定義される“複数項目英字名”を要素名とする複数の要素が、設計書メタ情報変換部201の処理で生成され含まれる。設計書メタ情報301の“複数項目グループ”(3015) で定義される“複数項目英字名”を要素名とする要素の値には、“${}”で囲まれた変数が設計書メタ情報変換部201で生成される。変数名は、設計書メタ情報301の“シート種別”(3013)の“英字名”と設計書メタ情報301の“複数項目グループ”(3015)の“英字名”を“.”で連結した形式で、設計書メタ情報変換部201によって生成される。
以上のように、設計情報雛形303は、設計情報310を生成する際に、設計書304bの値をXML形式のファイルに設定するフォームが定義される。したがって、設計書読込変換部202は、設計情報定義体302に従ってスプレッドシート形式の設計書304bから読み込んだ値を設計情報雛形303に設定することで、XML形式の設計情報310に変換することができる。
図6は、設計情報310の一例を示す図である。設計情報310は、クライアント装置103で生成したスプレッドシート形式の設計書304bを、設計情報入出力装置102の設計書読込及び変換部202でXML形式に変換した結果を示す。
設計情報310は、図5に示した設計情報雛形303の変数$に設計書304bの内容を設定した情報として設計書読込及び変換部202で生成される。
図7Aは、本発明の実施例1を示し、設計書雛形304aの一例を示す図である。設計書雛形304aは、クライアント装置103の記憶部103cに予め格納されているスプレッドシート形式の情報である。
図7Aの設計書雛形304aは、未入力の状態を示す。設計書雛形304aは、設計書雛形304aの種類を示すドキュメント分類3031と、設計書304bの題目を格納する題目3032と、コンポーネントID3033と、コンポーネント名3034と、作成者3035と、更新者3036と、承認者3037と、作成日3038と、更新日3039と、承認日3040と、データの番号を示す項番3041と、パッケージ名前空間3042と、クラス日本語名3043と、クラス英字名3044と、メソッド日本語名3045と、メソッド英字名3046と、他コンポ公開3047と、備考3048のセルを含む。
図7Bは、本発明の実施例1を示し、設計書304bの一例を示す図である。図7Bの設計書304bは、図7Aの設計書雛形304aにクライアント装置103のユーザが表計算部211で所定の値を入力した結果を示す。設計書304bの各セルの符号は、設計書雛形304aと同一である。
図7Cは、本発明の実施例1を示し、設計書304cの一例を示す図である。図7Cの設計書304cは、後述する図13に示す設計情報参照及び編集画面308で編集された設計情報をスプレッドシート形式で示した情報である。
<フローチャート>
設計書メタ情報301を入力として、設計情報定義体302と設計情報雛形303を出力する、設計書メタ情報変換部201の処理を図14に示すフローチャートを用いて説明する。
ステップ1401で、設計書メタ情報変換部201は、入力部101bからの指示を契機に処理を開始する。
ステップ1402で、設計書メタ情報変換部201は、記憶部101cに予め登録されている設計書メタ情報301のファイルを読み込む。
ステップ1403では、ステップ1402で読み込んだ設計書メタ情報301のファイルの情報から、設計書メタ情報変換部201が前述の方法で設計情報定義体302の要素と値を生成し、設計情報定義体302のファイルを生成して記憶部101cに格納する。
ステップ1404では、ステップ1402で読み込んだ設計書メタ情報301のファイルの情報から、設計書メタ情報変換部201が前述の方法で設計情報雛形303の要素と値を生成し、設計情報定義体302のファイルを生成して記憶部101cに格納する。
ステップ1405では、設計書メタ情報変換部201がステップ1403で生成された設計情報定義体302のファイルと、ステップ1404で生成された設計情報雛形303のファイルを、記憶部101cから読み込んでみ通信インタフェース部104aを介してデータ転送処理を行い、設計情報入出力装置102の記憶部102cに格納させる。
最後にステップ1406で、設計書メタ情報変換部201は出力部101dに処理が完了したメッセージを出力する。
上記処理により、設計書メタ情報変換装置101は、設計書メタ情報301から設計情報定義体302と、設計情報雛形303を生成して設計情報入出力装置102の記憶部102cに格納させる。
図2において、設計書読込変換部202は設計情報定義体302を入力として設計書登録画面305を表示し、設計書雛形304aに基づいて作成されたスプレッドシート形式の設計書304bを受け付ける。そして、設計書読み込み変換部2は、受け付けた設計書304bと、設計書メタ情報変換装置101が生成した設計情報定義体302と設計書雛形304aを入力として、設計情報310を生成する。
図8は、設計書読込変換部202が出力する設計書登録画面305の一例を示す画面イメージである。設計書登録画面305は、記憶部102cに登録されている全ての設計書メタ情報301の要素“ファイル種別”をプルダウンリストで選択する登録対象3051と、ファイル名を入力する“設計書ファイル名”(3052)と“登録ボタン”が配置される。
設計書登録画面305は、設計情報入出力装置102を利用するクライアント装置103の出力部103dに表示される。クライアント装置103を使用するユーザまたは管理者などが入力部103bの操作によって登録対象3051を選択して設計書ファイル名3052を入力した後、“登録ボタン”を操作すると、設計書読込及び変換部202によって設計情報310が生成される。
次に、設計書雛形304aに基づいて作成されたスプレッドシート形式の設計書304bと設計情報定義体302と設計情報雛形303とを入力として、設計情報310を出力する設計書読込及び変換部202の処理の一例を図15に示すフローチャートを用いて説明する。
ステップ1501で、設計書読込及び変換部202は、クライアント装置103の入力部103bからの指示を契機に処理を開始する。
ステップ1502で、入力部103bから通信インタフェース部104cを介して送信された処理リクエストを、設計情報入出力装置102の設計書読込及び変換部202が受け付けて設計書登録画面305を生成する。
設計書読込及び変換部202は通信インタフェース部104bを介して処理レスポンスをクライアント装置103に応答し、クライアント装置103の出力部103dに設計書登録画面305を表示させる。なお、設計書登録画面305の“登録対象”(3051)の選択肢には、記憶部102cに登録されている全ての設計書メタ情報301の要素“ファイル種別”の“ローカル名”が一覧で並ぶ。
ステップ1503で、クライアント装置103は入力部103bの操作によって、設計書登録画面305の“登録対象”(3051)と“設計書ファイル名”(3052)が入力され、設計書登録画面305の“登録”ボタンが押されたことを受け付ける。クライアント装置103は、設計書登録画面305で入力された“設計書ファイル名”(3052)に該当した設計書304bのファイルを記憶部103cから読み込む。クライアント装置103は、通信インタフェース部104cを介して設計書304bのデータと設計書登録画面305で入力された“登録対象”(3051)と処理リクエストを設計情報入出力装置102に通知する。以降のステップの処理は設計情報入出力装置102で実行される。
ステップ1504では、設計書読込及び変換部202が記憶部102cに登録されている設計情報定義体302のファイルの中から、設計書登録画面305の“登録対象”(3051)で選択された文字列と同じ値を設計情報定義体302の要素“genericRule”(3021)の属性“localName”に持つ設計情報定義体302のファイルを記憶部102cから検索して読み込む。
ステップ1505では、設計書読込及び変換部202が記憶部102cに登録されている設計書メタ情報301のファイルの中から、ステップ1504で読み込んだ設計書メタ情報301の“ファイル種別”(3011)の“英字名”と同じ値を設計情報雛形303の要素“documentCls”(3031)の属性“name”の値に持つ設計情報雛形303のファイルを記憶部102cから検索して読み込む。
ステップ1506では、設計書読込及び変換部202がステップ1503で読み込んだスプレッドシート形式の設計書304bのファイルを、ステップ1504で読み込んだ設計情報定義体302を利用して、設計書304bのファイルから単数項目3014または複数項目3015の項目名(ローカル名)と値を取得する。
なお、設計書304bのファイルから単数項目または複数項目に該当するステップ1504で読み込んだ設計情報定義体302の要素“singleItemKey”(3024)または要素“listItemKey”(3025)の属性“mandatory”の値が、“true”であるにも関わらず、設計書304bのファイル上で単数項目3014または複数項目3015の値が入力されていなかった場合、設計書読込及び変換部202はエラーを出力する。
具体的に単数項目3014の場合、つまり設計情報定義体302の要素“key”の属性“type”の値が“single”である場合、設計書読込及び変換部202は設計情報定義体302の要素“singleItemKey”3014とこの属性“name”から項目名を取得し、項目名に対する値の行位置を要素“singleItemKey”(3024)内の要素“cellLine”から取得し、項目名に対する値の列位置を要素“singleItemKey”(3024)内の要素“cellColumn”から取得し、スプレッドシート形式の設計書304bのファイルから取得した行位置と列位置の値を取得する。設計書読込及び変換部202は、以上の処理を設計情報定義体302の要素“key”に含まれる要素“singleItemKey”(3024)の数だけ繰り返す。
または複数項目3015の場合、つまり設計情報定義体302の要素“key”の属性“type”の値が“list”である場合、設計書読込及び変換部202は設計情報定義体302の要素“listItemKey”(3025)とこの属性“name”から項目名を、項目名に対する値の行位置を要素“listItemKey”(3025)内の要素“cellLine”から取得し、項目名に対する値の列位置を要素“listItemKey”(3025)内の要素“cellColumn”から取得し、スプレッドシート形式の設計書304bのファイルから取得した行位置と列位置の値、及び行位置を一つずつ増やして値が存在する行まで値を複数取得する。
設計書読込及び変換部202は、以上の処理を設計情報定義体302の要素“key”に含まれる要素“listItemKey”(3025)の数だけ繰り返す。ただし、設計書読込及び変換部202は一つの設計情報定義体302の要素“key”に含まれる要素“listItemKey”(3025)から取得する値の数は、要素“listItemKey”(3025)の属性“mandatory”が“true”で指定される値の数に等しい。
例えば、図7Bに示す設計書304bのファイルの複数項目の例において、“クラス日本語名”(3053)と“メソッド日本語名”(3055)という項目に対する要素“listItemKey”(3025)の属性“mandatory”が“true”で指定されている場合、それぞれ3行目まで値が埋まっているので、設計書読込及び変換部202は“項番”(3051)が“3”の行までの値が取得される。
ステップ1507では、設計書読込及び変換部202が、まずステップ1506で取得した値を次のようにして、設計情報雛形303に埋め込む変数を設定する。
設計書読込及び変換部202は、単数項目について、ステップ1504で読み込んだ設計情報定義体302の、要素“designSpecification”の属性“sheetCls”の値と、要素“key”の属性“name”の値と、要素“singleItemKey”(3023)の属性“name”の値を“.”で連結した形式で変数を設定し、この変数にステップ1506で取得した項目の値を代入する。
設計書読込及び変換部202は、複数項目について、ステップ1504で読み込んだ設計情報定義体302の、要素“designSpecification”(3023)の属性“sheetCls”の値と、要素“key”の属性“name”の値を“.”で連結した形式で変数を設定する。この変数はリストオブジェクトであり、設計書読込及び変換部202が、ステップ1504で読み込んだ設計情報定義体302の要素“listItemKey”(3025)の属性“name”の値を名前とした変数を設定する。
そして、設計書読込及び変換部202は、前記ステップ1506でスプレッドシート形式の設計書304bでクラス情報(3053、3054)及びメソッド情報(3055、3056)のリストから取得した値を、リストの一行ごとに登録し、このオブジェクトを前記のリストオブジェクトに登録する。
設計書読込及び変換部202は、設計情報雛形303の“$”の変数を、以上のようにして設定した変数の値に置き換えて、設計情報310を生成する。なお、設計情報310内の“#foreach( $member in $XXXX)”と“#end”で囲まれた部分は次のように処理する。
例えば、前記リストオブジェクト“XXXX”の部分が図5の設計情報雛形303に一例を示すように、前記リストオブジェクト“classMethodDesignDoc.classMethodList”であった場合、設計書読込及び変換部202は、“classMethodDesignDoc.classMethodList”に登録されている複数のオブジェクトの中から先頭のオブジェクトを取り出して変数“$member”に代入し、要素“member”(3035)に含まれる要素内の変数を後述するように値に置き換えて、図5の“#end”まで処理する。
例えば、図5に示す要素“classLocalName”(3036)の変数“${member.classlocalName}”では、設計書読込及び変換部202が、“member”(3035)から“classlocalName”を取り出し、その値に置き換える。
設計書読込及び変換部202は、リストオブジェクトに登録されているオブジェクトの数だけ、要素“member”(3035)と、この要素に含まれる要素をコピーして、前記の要素内の変数を値に置き換える処理を繰り返す。設計書読込及び変換部202は、最後に“#foreach( $member in $XXXX)”と“#end”を消去する。
ステップ1508では、設計書読込及び変換部202が、ステップ1507で生成したXML形式の設計情報310のファイルの要素“documentCls”の属性“date”の値に、上記処理を実行した年月日日時分秒を例えば“YYYY/MM/DD/HH:MM:SS”の形式で設定する。
そして、設計書読込及び変換部202は、図5に示した要素“documentCls”の属性“fileName”の値に設計書登録画面305でユーザによって入力された“設計書ファイル名” の名前を設定し、当該ファイル名でステップ1507で生成したXML形式の設計情報310のファイルを記憶部102cに格納する。また、設計書読込及び変換部202は、受け付けた設計書304bを記憶部102cに格納する。
なお、設計書読込及び変換部202は、XML形式の設計情報310を記憶部102cに格納したデータベースの一つのフィールドに格納することができる。これにより、設計書304bのレイアウトや項目が変更されてもXML形式の設計情報310を格納するデータベースを改修する必要はなくなる。また、設計情報310をデータベースの一つのフィールドに格納する際には、XML形式を維持することで検索処理を円滑に行うことができる。
設計書読込及び変換部202は、最後にステップ1509で出力部103dに処理が完了したメッセージを出力して終了する。
以上の処理によって、スプレッドシート形式の設計書304bの内容は、設計書読込変換部202が設計情報定義体302に従って設計情報雛形303に設定することで、XML形式の設計情報310に変換されて記憶部102cに格納される。
設計情報310は、一つのファイルやデータベースの一つのカラムに格納することができるので、設計書304bのレイアウトや項目が変更されても、前記従来例のようにデータベースを改修する必要はない。したがって、システム開発において作成または更新される様々な設計書304bに柔軟に対応することが可能であり、設計書のカスタマイズが容易なスプレッドシート形式設計書の入出力システム100を提供することができる。
なお、設計情報310を記憶部102cのデータベースへ格納する際には、XML形式に限定されるものではなく、テキスト形式など所望の形式(フォーマット)で一つのカラムに格納することができる。
図16は、設計情報検索条件入力画面出力部203の処理の一例を示すフローチャートである。この処理は、設計情報入出力装置102がクライアント装置103から検索要求を受け付けたときなどに実行される。設計情報検索条件入力画面出力部203は、設計情報定義体302と設計情報定義体302を入力して、検索条件入力画面306aを出力する。
ステップ1601で、設計情報検索条件入力画面出力部203は、クライアント装置103の入力部103bからの指示(検索要求)を契機に処理が開始する。設計情報入出力装置102は、入力部103bから通信インタフェース部104bを介して処理リクエストを、設計情報検索条件入力画面出力部203が受け付けて、検索条件入力画面306aを生成する。
ステップ1602で、設計情報検索条件入力画面出力部203は、記憶部102cに登録されている設計情報定義体302を全て読み込む。ステップ1603で、設計情報検索条件入力画面出力部203は、読み込んだ設計情報定義体302の要素“designSpecification”(3023)の属性“localName”の値を、生成した検索条件入力画面306aの“検索対象”(3061)の選択肢にセットする。
ステップ1604では、ユーザによって図9の“検索対象”(3061)が選択されている場合、設計情報検索条件入力画面出力部203は、ユーザによって選択された“検索対象”(3061)に合致する設計情報定義体302を特定する。ただし、ユーザによって“検索対象”が選択されていない場合、本ステップをスキップする。
具体的には、設計情報検索条件入力画面出力部203が、ユーザによって選択された“検索対象”(3061)を要素“designSpecification”(3023)の属性“localName”の値を持つ設計情報定義体302を特定する。設計情報検索条件入力画面出力部203は、特定した設計情報定義体302に含まれる要素“key”ごとに、要素“key”の属性“localName”の値を名前に持つ入力フォームのグループを生成する。
さらに、設計情報検索条件入力画面出力部203は、生成した入力フォームのグループの中に要素“key”に含まれる要素“singleItemKey”(3024)または要素“listItemKey”(3025)の属性“mandatory”が“true”である場合に属性“localName”の値ごとに入力フォーム(3062、3064)と、“検索”(3063、3065)ボタンを生成する。
図9は、検索条件入力画面306aの一例を示す図である。設計情報検索条件入力画面出力部203が生成する検索条件入力画面306aは、検索の対象をプルダウンリスト等で選択する“検索対象”(3061)と、検索する項目と“検索”ボタン3063、3065を含む2つの入力フォーム3062、3064を含む例を示す。
図9の例では、図4に示した設計情報定義体302に基づいて、要素“key”の属性“localName”の値が“クラス・メソッド設計情報”と“クラス・メソッド一覧”を名前とする2つの入力フォームのグループを、設計情報検索条件入力画面出力部203が生成した例を示す。
設計情報検索条件入力画面出力部203は、ユーザによって選択された“検索対象”(3061)を図4の要素“designSpecification”(3023)の中に要素“relationship”が含まれ、要素“relationship”の属性“parentItem”の値と”childItem”の値で指定される単数項目グループまたは複数項目グループが存在する場合、設計情報検索条件入力画面出力部203は、“parentItem”の値と”childItem”の値で指定される単数項目グループまたは複数項目グループを纏めて入力フォームのグループと入力フォームと、“検索”ボタンも生成する。
例えば、図4に一例を示す設計情報定義体302では、要素“relationship”の属性“parentItem”の値に“classMethodDesignInfo”を持ち単数項目グループ“クラス・メソッド設計情報(要素“key”の属性“localName”の値が“クラス・メソッド設計情報”で属性“name”の値が“classMethodDesignInfo”で属性“type”の値が“single”)を指定されている。
設計情報検索条件入力画面出力部203は、要素“relationship”の属性“childItem”の値に“classMethodList”を持ち複数項目グループ“クラス・メソッド一覧” (要素“key”の属性“localName”の値が“クラス・メソッド一覧”で属性“name”の値が“classMethodList”で属性“type”の値が“list”)を指定されており、それら単数項目と複数項目を合わせた入力フォームのグループ“クラス・メソッド設計情報−クラス・メソッド一覧”を持つ検索条件入力画面306bを図10で示すように生成する。
ステップ1605で、設計情報検索条件入力画面出力部203は、通信インタフェース部104bを介して処理レスポンスをクライアント装置103に応答し、クライアント装置103の出力部103dにステップ1604で生成した検索条件入力画面306aまたは306bを表示してから終了する。
図10は、検索条件入力画面306bの一例を示す図である。設計情報検索条件入力画面出力部203が生成する検索条件入力画面306aは、検索の対象をプルダウンリスト等で選択する“検索対象”(3061)と、検索する項目と“検索”ボタン3067を含む2つの入力フォーム3066を含む例を示す。
図10の例では、図4に示した設計情報定義体302に基づいて、上述のように“クラス・メソッド設計情報−クラス・メソッド一覧”を名前とする単数項目と複数項目を合わせた入力フォームを、設計情報検索条件入力画面出力部203が生成した例を示す。
上記の処理によって、図9または図10に示す検索条件入力画面306a、306bが設計情報定義体302の内容に応じて生成され、クライアント装置103のユーザは入力フォーム内の検索項目へ所望の値を入力してから“検索”ボタンを押すことで、検索を実行することができる。
図17は、設計情報検索及び結果表示画面出力部204で行われる処理の一例を示すフローチャートである。設計情報検索及び結果表示画面出力部204は、設計情報定義体302と設計情報310を入力して、図9または図10で受け付けた入力フォームの項目で設計情報の検索を実行し、検索の結果を設計情報検索結果画面307として出力する。この処理は、検索条件入力画面306a、306bで“検索”ボタン3063、3065、3067がクリックされた後に実行される。
ステップ1701で、検索条件入力画面306a、306bで、“検索”ボタンがクリックされてクライアント装置103の入力部103bから指示(検索実行)が発生し、この指示を設計情報検索及び結果表示画面出力部204が受け付けると処理を開始する。
ステップ1702で、入力部103bから通信インタフェース部104bを介して渡される処理リクエストを、設計情報検索及び結果表示画面出力部204が受け付け、検索条件入力画面306a、306bで入力された検索条件(入力フォーム内の項目)を検索キーにして、設計情報定義体302を利用して設計情報310を検索する。すなわち、設計情報検索及び結果表示画面出力部204は、検索条件に応じて設計情報310のファイル種別を検索する。
なお、検索の範囲は“検索”ボタンがクリックされた入力フォームのグループを単位として、設計情報検索及び結果表示画面出力部204が決定する。例えば、図9の検索条件入力画面306aにおいて、入力フォームのグループである“クラス・メソッド設計情報”で入力フォーム3062内の検索条件が入力され“検索”ボタン3063がクリックされた場合、設計情報定義体302において、設計情報検索及び結果表示画面出力部204は、属性“localName”の値が“クラス・メソッド設計情報”を持つ要素“key”を特定する。設計情報検索及び結果表示画面出力部204は、特定した要素“key”の“name”の値“classMethodDesignInfo”を取得して、この取得した値を属性“name”の値に持つ設計情報の要素“singleItems ”の範囲で記憶部102cを検索する。
同様にして、検索条件入力画面306aにおいて、入力フォームのグループである“クラス・メソッド一覧”の入力フォーム3064で検索条件が入力され“検索”ボタン3065がクリックされた場合、設計情報検索及び結果表示画面出力部204は、設計情報定義体302において属性“localName”の値が“クラス・メソッド一覧” を持つ要素“key”を特定する。設計情報検索及び結果表示画面出力部204は、特定した要素“key”の“name”の値“classMethodList” を取得して、この取得した値を属性“name”の値に持つ設計情報の要素“listItems”(3037)の範囲で記憶部102cを検索する。
さらに同様に、図10の検索条件入力画面306bにおいて、入力フォームグループである“クラス・メソッド設計情報−クラス・メソッド一覧”の入力フォーム3066で検索条件が入力されて、“検索”ボタン3067がクリックされた場合、設計情報検索及び結果表示画面出力部204は、設計情報定義体302において属性“localName”の値が“クラス・メソッド設計情報”または“クラス・メソッド一覧”を持つ要素“key”を特定する。
そして、設計情報検索及び結果表示画面出力部204は、特定した要素“key”の“name”の値“classMethodDesignInfo”または値“classMethodList” を取得して、これら取得した値を属性“name”の値に持つ設計情報310の要素“singleItems ”と“listItems”の範囲で記憶部102cを検索する。
ステップ1703で、設計情報検索及び結果表示画面出力部204は、ステップ1702で検索された設計情報310のファイル種別、即ち設計情報310の要素“documentCls”の属性“name”の値を取得する。
ステップ1704で、設計情報検索及び結果表示画面出力部204は、ステップ1703で取得された値を、要素“genericRule”の属性“name”に持つ設計情報定義体302を記憶部102cから読み込む。
ステップ1705で、設計情報検索及び結果表示画面出力部204は、ステップ1702で取得した設計情報310及びステップ1704で取得した設計情報定義体302を元に、図11A〜図12に示す設計情報検索結果画面307a、307bまたは307cを生成する。
図11A〜図12に示す設計情報検索結果画面307a〜307cの検索範囲は、ステップ1702で検索した範囲とし、検索条件入力画面306a〜306bでクリックされた“検索”ボタン3063〜3067が属する入力フォームのグループに依存する。
例えば、図9の検索条件入力画面306aにおいて、入力フォームグループである“クラス・メソッド設計情報”の入力フォーム3062で検索条件が入力され“検索”ボタン3063がクリックされた場合、設計情報検索及び結果表示画面出力部204は、ステップ1702で設計情報の要素“singleItems ”の属性“name”の値に対応した“クラス・メソッド設計情報”である範囲を検索する。設計情報検索及び結果表示画面出力部204は、この検索結果をリスト形式にして図11Aに示す“クラス・メソッド設計情報 検索結果画面”307aを生成する。
図11Aにおいて、“クラス・メソッド設計情報 検索結果画面”307aのリストのカラムヘッダ3071には、“設計情報参照”(3072)と、要素“singleItems”に含まれる要素名に対応するローカル名を、設計情報定義体302の要素“singleItemKey”の属性“name”を特定して属性“localName”の値を割り当てる。
また、検索条件入力画面306aにおいて、入力フォームグループである“クラス・メソッド一覧”の入力フォーム3064で検索条件が入力され“検索”ボタン3065がクリックされた場合、設計情報検索及び結果表示画面出力部204は、ステップ1702で設計情報の要素“listItems”の属性“name”の値に対応した“クラス・メソッド一覧”である範囲を検索する。
設計情報検索及び結果表示画面出力部204は、この検索結果をリスト形式にして図11Bに示す“クラス・メソッド一覧 検索結果画面”307bを生成する。リストのカラムヘッダ3071には、“設計情報参照”(3072)と、要素“member”に含まれる要素名に対応するローカル名を、設計情報定義体302の要素“listItemKey”の属性“name”を設計情報検索及び結果表示画面出力部204が特定して属性“localName”の値を割り当てる。
さらに、検索条件入力画面306bにおいて、入力フォームグループである“クラス・メソッド設計情報 - クラス・メソッド一覧”の入力フォーム3066で検索条件が入力され“検索”ボタン3067がクリックされた場合、設計情報検索及び結果表示画面出力部204は、ステップ1702で設計情報の要素“singleItems ”の属性“name”の値に対応した“クラス・メソッド設計情報”と、要素“listItems”の属性“name”の値に対応した“クラス・メソッド一覧”の範囲を検索する。
設計情報検索及び結果表示画面出力部204は、これらの検索結果をリスト形式にして“クラス・メソッド一覧 検索結果画面”307cを生成する。設計情報検索及び結果表示画面出力部204は、リストのカラムヘッダ3071に、“設計情報参照”(3072)と、要素“singleItems”に含まれる要素名に対応するローカル名を割り当て、設計情報定義体302の要素“singleItemKey”の属性“name”を特定して属性“localName”の値と、要素“member”に含まれる要素名に対応するローカル名を、設計情報定義体302の要素“listItemKey”の属性“name”を特定して属性“localName”の値を割り当てる。
なお、上述の設計情報検索結果画面307aと307bと307cのいずれの“設計情報参照”(3072)の値は、設計情報参照及び編集画面308に遷移するボタンであり、リストの各行の設計情報に対応する設計書ファイル名、即ち設計情報310の要素“documentCls”の属性“fileName”の値を保持している。
設計情報検索及び結果表示画面出力部204は、最後にステップ1706で、通信インタフェース部104bを介して処理レスポンスをクライアント装置103に応答し、クライアント装置103の出力部103dにステップ1705で生成した設計情報検索結果画面307a〜307cを表示させて処理を終了する。
上記処理によって、設計情報入出力装置102はクライアント装置103から受け付けた検索条件で検索した結果を、設計情報検索結果画面307a、307b、307cとして出力することができる。
本実施例1では、設計情報入出力装置102は、受け付けた検索条件でXML形式の設計情報310のファイルを検索する。すなわち、設計書304bのレイアウトや項目が変更されても、設計情報入出力装置102ではXML形式の設計情報310のファイルの検索を行うことができる。したがって、前記従来例のように、設計書304bのレイアウトや項目の変更に応じてデータベースを改修する必要はなくなって、設計書304bの変更などに伴う労力や運用コストを削減できる。
図18は、設計情報参照及び編集画面出力部205の処理の一例を示すフローチャートである。この処理は、設計情報検索結果画面307a〜307cの“設計情報参照”(3072)がクリックされたときに実行される。設計情報参照及び編集画面出力部205は、設計情報定義体302と設計情報310を入力として、設計情報参照及び編集画面308を出力する。
ステップ1801で、設計情報検索結果画面307aや307bや307cに表示された“設計情報参照”(3072)のボタンがクリックされてクライアント装置103の入力部103bから指示が発生し、この指示を契機に処理が開始される。
ステップ1802では、設計情報参照及び編集画面出力部205が“設計情報参照”(3072)のボタンに割り当てられた設計書ファイル名を要素“documentCls”(3031)の属性“fileName”の値に含む設計情報310を記憶部102cから検索する。
ステップ1803では、設計情報参照及び編集画面出力部205がステップ1802で読み込んだ設計情報310のファイル種別、即ち設計情報310の要素“documentCls”(3031)の属性“name”の値を取得する。
ステップ1804では、設計情報参照及び編集画面出力部205がステップ1803で取得した値を、要素“genericRule”(3021)の属性“name”に持つ設計情報定義体302を記憶部102cから読み込む。
ステップ1805では、設計情報参照及び編集画面出力部205がステップ1802で取得した設計情報310を、ステップ1804で読み込んだ設計情報定義体302を利用して、図13に示す設計情報参照及び編集画面308を生成する。
具体的には、設計情報参照及び編集画面出力部205は、図13の“ファイル種別”(3081)として設計情報310の要素“documentCls”(3031)の属性“name”の値に対応したステップ1804の設計情報定義体302の要素“documentCls”の属性“localName”の値と、“ファイル名”(3082)として要素“documentCls”(3031)の属性“fileName”の値を生成する。
設計情報参照及び編集画面出力部205は、“ファイル種別”(3081)内に“シート種別”(3084)として設計情報310の要素“sheetCls”の属性“name”の値に対応したステップ1804の設計情報定義体302の要素“sheetCls”の属性“localName”の値を生成する。
設計情報参照及び編集画面出力部205は、“登録日時”(3083)内に要素“documentCls”の属性“date”の値を生成する。また、“シート種別”(3084)内には単数項目グループや複数項目グループを生成する。
単数項目グループの場合は、図5の要素“singleItems”(3033)の属性“name”の値に対応したステップ1804の設計情報定義体302の要素“key”の属性“localName”の値と、要素“singleItems”(3033)に含まれる要素とその値を生成する。
設計情報参照及び編集画面308では要素“singleItems”(3033)に含まれる要素のローカル名を表示させるために、設計情報定義体302の要素“singleItemKey”(3024)の属性“name”を特定して属性“localName”の値を割り当てる。
なお、設計情報参照及び編集画面出力部205は、要素“singleItems”(3033)に含まれる要素の値を、設計情報参照及び編集画面308において、編集不可能なテキストとするか、編集可能な入力フィールドとするかを、該当する設計情報定義体302の要素“itemType”の値で判定して設計情報参照及び編集画面308を生成する。
複数項目グループの場合、設計情報参照及び編集画面出力部205は、要素“listItems”(3037)の属性“name”の値に対応したステップ1804で読み込んだ設計情報定義体302の要素“key”の属性“localName”の値と、要素“listItems”(3037)に含まれる要素“member”に含まれる要素とその値をリスト形式で生成する。
設計情報参照及び編集画面出力部205は、リストのカラムヘッダ3085には、要素“member”に含まれる要素名に対応するローカル名を、設計情報定義体302の要素“listItemKey”(3025)の属性“name”を特定して属性“localName”の値を割り当てる。
設計情報参照及び編集画面出力部205は、リスト化される値を、画面において、編集不可能なテキストとするか、編集可能な入力フィールドとするかを、該当する設計情報定義体302の要素“itemType”の値で判定して設計情報参照及び編集画面308を生成する。なお、設計情報参照及び編集画面308内でリスト化される値を表示する領域の大きさは、設計情報参照及び編集画面出力部205が該当する設計情報定義体302の要素“itemLength”の値で判定して画面を生成する。なお、設計情報参照及び編集画面308の“追加”(3086)ボタンがクリックされると、リスト内に一行を新たに追加できる。また、リスト内の一行が選択され“削除”(3087)ボタンがクリックされると、選択されたリスト内の一行のデータを削除できる。また、“登録・設計書出力”(3088)のボタンがクリックされると、後述の図19の処理が開始される。
設計情報参照及び編集画面出力部205は、最後にステップ1806で、通信インタフェース部104bを介して処理レスポンスをクライアント装置103に応答し、クライアント装置103の出力部103dにステップ1705で生成した設計情報参照及び編集画面308を表示させて処理を終了する。
上記処理によって、設計情報入出力装置102は、XML形式の設計情報310を読み込んで設計情報参照及び編集画面308として表示することができる。
図19は、設計情報編集処理部206の処理の一例を示すフローチャートである。設計情報編集処理部206は、設計情報定義体302と設計情報雛形303と設計情報310と設計書雛形304aを入力として、設計情報参照及び編集画面308で編集された設計情報310(図6)と設計書304c(図7C)を出力する。
ステップ1901で、設計情報参照及び編集画面308に表示された“登録・設計書出力”(3088)ボタンがクリックされるとクライアント装置103の入力部103bから指示が発生し、この指示を契機に処理が開始される。
ステップ1902では、設計情報編集処理部206が、設計情報参照及び編集画面308の“ファイル種別”(3081)の値を、要素“genericRule”(3021)の属性“localName”の値に持つ設計情報定義体302を記憶部102cから読み込む。
ステップ1903では、設計情報編集処理部206が、記憶部102cに登録されている設計書メタ情報301のファイルの中から、ステップ1902で読み込んだ設計書メタ情報301の“ファイル種別”(3081)の“英字名”と同じ値を設計情報雛形303の要素“documentCls”の属性“name”の値に持つ設計情報雛形303のファイルを記憶部102cから読み込む。
ステップ1904では、設計情報編集処理部206が、まず設計情報雛形303の要素“documentCls”(3031)の属性“fileName”の値に、設計情報参照及び編集画面308の“ファイル名”(3082)を設定する。
次に、設計情報編集処理部206は、ステップ1902で読み込んだ設計情報定義体302を利用して、設計情報参照及び編集画面308から単数項目または複数項目の値を読み込んで所定の変数に代入し、ステップ1903で読み込んだ設計情報雛形303に変数の値を設定してXML形式の設計情報310を生成する。
なお、設計情報編集処理部206は、設計情報参照及び編集画面308から単数項目または複数項目に該当するステップ1902で読み込んだ設計情報定義体302の要素“singleItemKey”(3024)または要素“listItemKey”(3025)の属性“mandatory”の値が、“true”であるにも関わらず、設計情報参照及び編集画面308で単数項目または複数項目の値が入力されなかった場合、または消去されて無い場合はエラーを出力する。
設計情報編集処理部206は、単数項目について、設計情報定義体302の要素“key”の属性“type”の値が“single”である場合、設計情報定義体302の要素“singleItemKey”(3024)とこの属性“localName”と同じ名前をヘッダに持つ値を設計情報参照及び編集画面308から取得する。設計情報編集処理部206は、取得した値を、設計情報定義体302の、要素“designSpecification”(3023)の属性“sheetCls”の値と、要素“key”の属性“name”の値と、要素“singleItemKey”(3024)の属性“name”の値を“.”で連結した形式で変数を生成して値を代入する。以上の処理を設計情報定義体302の要素“singleItemKey”の数だけ繰り返す。
設計情報編集処理部206は、複数項目について、設計情報定義体302の要素“key”の属性“type”の値が“list”である場合、設計情報定義体302の要素“listItemKey”(3025)とこの属性“localName”と同じ名前をリストのヘッダに持つカラムの複数の値を設計情報参照及び編集画面308から取得する。
設計情報編集処理部206は、取得した値を、設計情報定義体302の、要素“designSpecification”(3023)の属性“sheetCls”の値と、要素“key”の属性“name”の値を“.”で連結した形式で変数を生成する。この変数はリストオブジェクトであり、設計情報定義体302の要素“listItemKey”(3025)の属性“name”の値を名前とした変数を作成して、前記設計情報参照及び編集画面308から取得した値を登録する。
設計情報編集処理部206は、以上のようにして生成した変数の値を、設計情報雛形303の“$”の変数を対応する値に置き換えて、設計情報310を生成する。なお、設計情報310内の“#foreach( $member in $XXXX)”と“#end”で囲まれた部分の処理は上記ステップ1507の処理と同様である。
以上のようにして、設計情報編集処理部206は、設計情報参照及び編集画面308から編集後のXML形式の設計情報310を生成する。
ステップ1905では、設計情報編集処理部206が、ステップ1904で生成した設計情報310を記憶部102cに格納して、編集されたデータで設計情報310を更新する。なお、設計情報編集処理部206は、XML形式の設計情報310をデータベースの一つのカラムに格納することができる。
ステップ1906では、設計情報編集処理部206が、予め記憶部102cにファイル種別毎に格納されている設計書雛形304aを、設計情報参照及び編集画面308の“ファイル種別”(3081)の値を元に特定して記憶部102cから読み込む。
ステップ1907では、設計情報編集処理部206が、ステップ1902で読み込んだ設計情報定義体302を用いて、ステップ1904で生成した設計情報310からステップ1906で読み込んだ設計書雛形304aを更新することによって、設計情報参照及び編集画面308で編集された設計情報310を反映した設計書304cを生成する。
具体的に単数項目の場合、設計情報編集処理部206は、設計情報310の要素“singleItems”(3033)の属性“name”の値と同じ値を持つ設計情報定義体302の要素“key”を特定した上で、設計情報310の要素“singleItems”(3033)に含まれる各要素の値と同じ値を属性“name”に持つ(特定した要素“key”内の)要素“singleItemKey”(3024)を特定する。
この要素“singleItemKey”(3024)内の要素“cellLine”からスプレッドシートの行と、要素“cellColumn”からスプレッドシートの列を取得し、設計情報310の要素“singleItems”(3033)に含まれる各要素の値を、ステップ1906で読み込んだ設計書雛形304aに取得した行と列で特定されるセルに反映する。
次に複数項目の場合、設計情報編集処理部206は、設計情報310の要素“listItems”(3037)の属性“name”の値と同じ値を持つ設計情報定義体302の要素“key”を特定する。そして、設計情報編集処理部206は、設計情報310の要素“member”に含まれる各要素の値と同じ値を属性“name”に持つ(特定した要素“key”内の)要素“listItemKey”(3025)を特定する。
設計情報編集処理部206は、この要素“listItemKey”(3025)内の要素“cellLine”からスプレッドシートの行と、要素“cellColumn”からスプレッドシートの列を取得し、設計情報310の要素“member”に含まれる各要素の値を、ステップ1906で読み込んだ設計書雛形304aに取得した行と列で特定されるセルに反映する。
また、設計情報編集処理部206は、設計情報310の要素“documentCls”(3031)の属性“date”の値にこの処理時の年月日日時分秒を例えば“YYYY/MM/DD/HH:MM:SS”の形式で設定する。
ステップ1908では、設計情報編集処理部206が、ステップ1907で生成した設計書304cを、記憶部102cに格納し、通信インタフェース部104bを介してデータ転送処理を行い、クライアント装置103の記憶部103cに登録する。
なお、設計情報編集処理部206は、ステップ1907で生成した設計書304cを、ユーザが例えばクライアント装置103上の表計算部211で編集し、これを設計書304bとしてもよい。
設計情報編集処理部206は、最後にステップ1908で出力部103dに処理が完了したメッセージを出力する。
上記処理によって、設計情報参照及び編集画面308で編集された設計情報310がXML形式のデータとして記憶部102cに格納され、さらに設計情報310はスプレッドシートの設計書304cに変換されてクライアント装置103へ出力される。
以上、本発明を実施するための最良の形態などについて具体的に説明したが、本発明はこれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
こうした本実施例1によれば、システム開発において作成される様々な設計書に柔軟に対応可能でありカスタマイズ容易なスプレッドシート形式の設計書の入出力システム100を実現できる。
本実施形態のスプレッドシート形式の設計書304bを格納する記憶部102cにおいて、設計情報310を格納するにあたり、XMLファイルとして格納する、データベースの一カラムに格納する、またはXMLデータベースに格納する、としてもよい。
本実施形態のスプレッドシート形式の設計書304bを格納する記憶部102cにおいて、設計書304bはXML形式としたが、XML(Extensible Markup Language)と同様に半構造データ形式であればJSON(JavaScript Object Notation(JavaScriptは登録商標))など、であってもよい。
また、スプレッドシート形式は表計算部(表計算ソフトウェア)210、211によって生成された情報であり、行と列の識別子を有するセルと、複数のセルを有するシートを含んで構成されればよい。
また、上記ではスプレッドシート形式の設計書304bに本発明を適用する例を示したが、設計書に限定されるものではなく、スプレッドシート形式の情報をXML形式に変換して編集、検索するものであればよい。この場合、上記実施例1の設計書304bを入力情報と読み替え、設計情報定義体302を入力情報定義体とし、設計情報雛形303を変換情報雛形と読み替えればよい。
図21は、第2の実施例を示し、計算機10の機能要素の一例を示すブロック図である。本実施例2では、前記実施例1に示した設計情報入出力装置102を仮想サーバとして計算機10上で稼動させる例を示す。その他の構成は、前記実施例1と同様である。
計算機10では、計算機資源を仮想サーバへ提供する仮想化部400が稼動し、仮想化部400上では1以上のゲストOS710−1〜710−xが稼動する。図示の例では、ゲストOS710−1は、設計情報入出力サーバ102−1を提供し、ゲストOS710−xは仮想サーバ102−xを提供する。なお、仮想化部400及びゲストOS710−1〜710−xは、仮想化部400が割り当てた図20のメモリ70にロードされて、プロセッサ60によって実行される。
仮想化部400は、計算機10の計算機資源である入力部102b、記憶部102c、出力部102d及び通信インタフェース部104bを各ゲストOS710−1〜710−xに提供する。
設計情報入出力サーバ102−1では、ゲストOS710−1上で、設計書読込変換部202と、設計情報検索条件入力画面出力部203と、設計情報検索及び結果表示画面出力部204と、設計情報参照及び編集画面出力部205と、設計情報編集処理部206が稼動する。なお、設計書読込変換部202〜設計情報編集処理部206は、前記実施例1と同様に、プロセッサ60が各プログラムを実行することで各部の機能を提供する。
ネットワーク40を介して接続されたクライアント装置103は、ブラウザ212を介して設計情報入出力サーバ102−1の各機能を利用することができる。例えば、ブラウザ212で設計情報入出力サーバ102−1の設計書読込変換部202を読み出して、設計書304bを登録する。クライアント装置103は設計書304bを設計情報入出力サーバ102−1へ送信し、設計情報入出力サーバ102−1は受信した設計書304bを記憶部102cへ格納する。設計書読込変換部202は、記憶部102cに格納された設計書304bに対応する設計情報定義体302と設計情報雛形303を読み込んで、XML形式の設計情報310に変換し記憶部102cへ格納する。
なお、クライアント装置103からの要求に応じて仮想化部400が設計情報入出力サーバ102−1を生成してもよい。この場合、計算機10の計算機資源を有効に利用することが可能となる。
また、前記実施例1に示した設計書メタ情報変換装置101やクライアント装置103を、計算機10上の仮想サーバとして提供することも可能である。また、複数の計算機10を有するクラウドシステムで設計情報入出力サーバ102−1を稼動させてもよい。
<まとめ>
以上のように、実施例1、2によれば、システム開発においてスプレッドシート形式で作成される設計書304bをXML形式の設計情報310に変換することが可能となる。XML形式の設計情報310は、XMLファイルとして記憶部102cへ格納するか、または設計情報310を格納するデータベースの一カラム(またはひとつのフィールド)に格納する、あるいは上述のXMLデータベースなどの形式で記憶装置に格納できるため、設計書のレイアウトが変更された場合であってもデータベースのスキーマの変更は不要となる。
すなわち、設計情報入出力装置102、102−1では、スプレッドシート形式の設計書304bをXML形式の設計情報310に変換し、記憶部102cに格納しておく。これにより、設計書304bのレイアウトが変更されても、設計情報310を格納するファイルやデータベースを改修する必要はなく、前記従来例に比して設計書304bの変更などに伴う労力や運用コストを削減できる。
また、設計書304bに記述される項目やレイアウトが変更になった場合は、設計書メタ情報変換装置101で、設計書メタ情報301を変更して設計情報定義体302と設計情報雛形303を再生成し、設計情報入出力装置102へ送信する。
設計情報入出力装置102は、再生成された設計情報定義体302と設計情報雛形303を利用して、前述の通り入力されたスプレッドシート形式の設計書304bをXML形式に変換して記憶部102cに格納できる。
また、設計情報入出力装置102では、再生成された設計情報定義体302と設計情報雛形303を記憶部102cに格納しておくことで設計情報310の検索や編集をするための画面や処理も自動的に変更でき、かつ編集されて再格納された設計情報310をスプレッドシート形式の設計書304cとして出力することも可能となる。
このようにして、本発明はシステム開発において作成または更新される様々な設計書に柔軟に対応することが可能であり、設計書のカスタマイズが容易なスプレッドシート形式の設計書の入出力システム100を提供することができる。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に記載したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、又は置換のいずれもが、単独で、又は組み合わせても適用可能である。
また、上記の各構成、機能、処理部、及び処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、及び機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
100 スプレッドシート形式の設計書の入出力システム
101 設計書メタ情報変換装置
101a 制御及び演算部
101b 入力部
101c 記憶部
101d 出力部
102 設計情報入出力装置
102a 制御及び演算部
102b 入力部
102c 記憶部
102d 出力部
103 クライアント装置
103a 制御及び演算部
103b 入力部
103c 記憶部
103d 出力部
104a〜104c 通信インタフェース部
105 通信インタフェース部
201 設計書メタ情報変換部
202 設計書読込及び変換部
203 設計情報検索条件入力画面出力部
204 設計情報検索及び結果表示画面出力部
205 設計情報参照及び編集画面出力部
206 設計情報編集処理部
301 設計書メタ情報
302 設計情報定義体
303 設計情報雛形
304a 設計書雛形
304b 設計書
304c 設計書
305 設計書登録画面
306 検索条件入力画面
307 設計情報検索結果画面
308 設計情報参照及び編集画面
310 設計情報

Claims (9)

  1. プロセッサとメモリを備えてスプレッドシート形式の設計書を処理する設計書の入出力装置であって、
    予め生成されて前記設計書の構造を定義した設計情報定義と、予め生成されてスプレッドシート形式の前記設計書を半構造データ形式に変換する定義を有する設計情報雛形と、を格納する記憶部と、
    前記スプレッドシート形式の前記設計書を受信して、当該設計書の情報を前記設計情報定義に基づいて前記設計情報雛形に設定し、前記半構造データ形式の設計情報として出力する変換部と、
    前記記憶部に格納された前記設計情報を検索するための検索条件入力画面を、前記設計情報定義に基づいて生成する検索条件入力画面出力部と、を有し、
    前記変換部は、
    前記設計情報を前記半構造データ形式を維持して前記記憶部へ格納することを特徴とする設計書の入出力装置。
  2. 請求項1に記載の設計書の入出力装置であって、
    前記検索条件入力画面で受け付けた検索条件で、前記記憶部に格納された設計情報を検索し、当該検索結果を表示する検索結果表示画面を、前記設計情報定義に基づいて生成する検索及び結果表示画面出力部をさらに有することを特徴とする設計書の入出力装置。
  3. 請求項2に記載の設計書の入出力装置であって、
    前記検索結果表示画面に表示された設計情報の中から参照及び編集するための参照及び編集画面を、前記設計情報定義に基づいて生成する参照及び編集画面出力部をさらに有することを特徴とする設計書の入出力装置。
  4. 請求項3に記載の設計書の入出力装置であって、
    前記参照及び編集画面で編集を受け付けて、前記編集されたデータから前記設計情報定義と前記設計情報雛形に基づいて前記半構造データ形式の設計情報を生成し、当該生成した設計情報で前記記憶部に格納された設計情報を更新し、前記設計情報定義に基づいてスプレッドシート形式の設計書を生成する設計情報編集処理部を、さらに有することを特徴とする設計書の入出力装置。
  5. プロセッサとメモリを備えたメタ情報変換装置と、
    プロセッサとメモリを備えた入出力装置と、
    を有してスプレッドシート形式の設計書を処理する設計書の入出力システムであって、
    前記メタ情報変換装置は、
    前記スプレッドシート形式の設計書の構成情報を定義した設計書メタ情報を受け付けて、前記設計書の構造を定義した設計情報定義と、前記スプレッドシート形式の前記設計書を半構造データ形式に変換する定義を設定した設計情報雛形と、を生成して出力するメタ情報変換部を有し、
    前記入出力装置は、
    前記メタ情報変換装置から出力された前記設計情報定義と前記設計情報雛形とを格納する記憶部と、 前記スプレッドシート形式の前記設計書を受信して、当該設計書の情報を前記設計情報定義に基づいて前記設計情報雛形に設定し、前記半構造データ形式の設計情報として出力する変換部と、
    前記記憶部に格納された前記設計情報を検索するための検索条件入力画面を、前記設計情報定義に基づいて生成する検索条件入力画面出力部と、を有し、
    前記変換部は、
    前記設計情報を前記半構造データ形式を維持して前記記憶部へ格納することを特徴とする設計書の入出力システム。
  6. 請求項5に記載の設計書の入出力システムであって、
    検索条件入力画面で受け付けた検索条件で、前記記憶部に格納された設計情報を検索し、当該検索結果を表示する検索結果表示画面を、前記設計情報定義に基づいて生成する検索及び結果表示画面出力部をさらに有することを特徴とする設計書の入出力システム。
  7. 請求項6に記載の設計書の入出力システムであって、
    前記検索結果表示画面に表示された設計情報の中から参照及び編集するための参照及び編集画面を、前記設計情報定義に基づいて生成する参照及び編集画面出力部をさらに有することを特徴とする設計書の入出力システム。
  8. 請求項7に記載の設計書の入出力システムであって、
    前記参照及び編集画面で編集を受け付けて、前記編集されたデータから前記設計情報定義と前記設計情報雛形に基づいて前記半構造データ形式の設計情報を生成し、当該生成した設計情報で前記記憶部に格納された設計情報を更新し、前記設計情報定義に基づいてスプレッドシート形式の設計書を生成する設計情報編集処理部を、さらに有することを特徴とする設計書の入出力システム。
  9. プロセッサとメモリを備えた入出力装置がスプレッドシート形式の設計書を処理する設計書の入出力方法であって、
    前記入出力装置が、予め生成されて前記設計書の構造を定義した設計情報定義と、予め生成されてスプレッドシート形式の前記設計書を半構造データ形式に変換する定義を有する設計情報雛形と、を受け付けて記憶部に格納する第1のステップと、
    前記入出力装置が、クライアント装置から前記スプレッドシート形式の設計書を受け付ける第2のステップと、
    前記入出力装置が、前記受け付けた前記スプレッドシート形式の設計書の情報を、前記設計情報定義に基づいて前記設計情報雛形に設定し、前記半構造データ形式の設計情報として変換して出力する第3のステップと、
    前記入出力装置が、前記記憶部に格納された前記設計情報を検索するための検索条件入力画面を、前記設計情報定義に基づいて生成する第4のステップと、を含み、
    前記第3のステップは、
    前記入出力装置が、前記設計情報の前記半構造データ形式を維持して前記記憶部へ格納することを特徴とする設計書の入出力方法。
JP2016030214A 2016-02-19 2016-02-19 設計書の入出力装置、設計書の入出力システム及び設計書の入出力方法 Active JP6425672B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2016030214A JP6425672B2 (ja) 2016-02-19 2016-02-19 設計書の入出力装置、設計書の入出力システム及び設計書の入出力方法
PCT/JP2017/004537 WO2017141785A1 (ja) 2016-02-19 2017-02-08 設計書の入出力装置、設計書の入出力システム及び設計書の入出力方法
MYPI2018702621A MY194133A (en) 2016-02-19 2017-02-08 Design specification input and output device, design specification input and output system, and design specification input and output method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016030214A JP6425672B2 (ja) 2016-02-19 2016-02-19 設計書の入出力装置、設計書の入出力システム及び設計書の入出力方法

Publications (3)

Publication Number Publication Date
JP2017146923A JP2017146923A (ja) 2017-08-24
JP2017146923A5 JP2017146923A5 (ja) 2018-04-19
JP6425672B2 true JP6425672B2 (ja) 2018-11-21

Family

ID=59625883

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016030214A Active JP6425672B2 (ja) 2016-02-19 2016-02-19 設計書の入出力装置、設計書の入出力システム及び設計書の入出力方法

Country Status (3)

Country Link
JP (1) JP6425672B2 (ja)
MY (1) MY194133A (ja)
WO (1) WO2017141785A1 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005092522A (ja) * 2003-09-17 2005-04-07 Nomura Research Institute Ltd 画面状態遷移システム、インターフェースシステム、画面状態遷移プログラム、インターフェースシステム用プログラム、画面状態遷移方法及びインターフェース方法
JP2010271968A (ja) * 2009-05-22 2010-12-02 Towa System Inc リポジトリ管理サーバ
JP6330257B2 (ja) * 2013-05-13 2018-05-30 富士通株式会社 設計書データ作成支援プログラム、設計書データ作成支援方法および情報処理装置

Also Published As

Publication number Publication date
MY194133A (en) 2022-11-14
WO2017141785A1 (ja) 2017-08-24
JP2017146923A (ja) 2017-08-24

Similar Documents

Publication Publication Date Title
CN108762743B (zh) 一种数据表操作代码生成方法及装置
KR101275871B1 (ko) SaaS 환경에서의 홈페이지 제작 시스템 및 방법, 그 방법을 컴퓨터에서 실행하기 위한 컴퓨터 프로그램이 기록된, 컴퓨터로 판독 가능한 기록 매체
GB2373085A (en) Method, computer program and system for style sheet generation.
JP2004005568A (ja) レガシー・アプリケーションの高速gui体裁更新
US8136043B2 (en) GUI generation apparatus and method for generating GUI
US9817811B2 (en) Web server system, dictionary system, dictionary call method, screen control display method, and demonstration application generation method
US11556702B2 (en) Orchestration of crud operations for a hierarchical web service data model in a spreadsheet
JP2016162184A (ja) 情報処理システム、情報処理装置、制御方法、およびコンピュータプログラム
JP6425672B2 (ja) 設計書の入出力装置、設計書の入出力システム及び設計書の入出力方法
JP2001125855A (ja) 動的Webページ生成プログラム
JP4686117B2 (ja) ソースコード変換装置、ソースコード変換方法、およびプログラム
JP6251860B2 (ja) 情報管理装置並びにファイル管理方法
JP5388881B2 (ja) 帳票入出力装置
TWI643083B (zh) 電子應用程式開發之方法、非暫時性電腦可讀儲存媒體及系統
JP6647954B2 (ja) 設計書の入出力装置、設計書の入出力システム及び設計書の入出力方法
JPH064280A (ja) ウィズィウィグ式エディターでオブジェクトをユーザ制御する機能を備えたグラフィカル・ユーザ・インターフェース
JP5504212B2 (ja) テストケース自動生成システム、テストケース自動生成方法、およびテストケース自動生成プログラム
Zahorodko et al. An approach for processing and document flow automation for Microsoft Word and LibreOffice Writer file formats.
JP2006331356A (ja) 業務処理プログラム、それを記録した記録媒体及び業務処理システム
JP2004342061A (ja) 画面とコンポーネント間のリンクを使用したウェブアプリケーションの開発方法および開発支援装置
JP7411766B2 (ja) 設定業務支援装置、設定業務支援方法および設定業務支援プログラム
JP6331307B2 (ja) 情報処理装置、情報処理装置の制御方法、およびプログラム
CN113704257B (zh) 数据表的更新方法和装置
US20240086179A1 (en) Software component update system, and software component update method
JP7426305B2 (ja) 設計書参照作業支援装置、設計書参照作業支援方法および設計書参照作業支援プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180305

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180305

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181002

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181023

R150 Certificate of patent or registration of utility model

Ref document number: 6425672

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150