WO2005106650A1 - ソースコード作成支援プログラムおよびソースコード作成支援方法 - Google Patents

ソースコード作成支援プログラムおよびソースコード作成支援方法 Download PDF

Info

Publication number
WO2005106650A1
WO2005106650A1 PCT/JP2004/006168 JP2004006168W WO2005106650A1 WO 2005106650 A1 WO2005106650 A1 WO 2005106650A1 JP 2004006168 W JP2004006168 W JP 2004006168W WO 2005106650 A1 WO2005106650 A1 WO 2005106650A1
Authority
WO
WIPO (PCT)
Prior art keywords
tree structure
source code
structure data
sequence diagram
program
Prior art date
Application number
PCT/JP2004/006168
Other languages
English (en)
French (fr)
Inventor
Hiroshi Miyazaki
Original Assignee
Fujitsu Limited
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 Fujitsu Limited filed Critical Fujitsu Limited
Priority to EP04730050A priority Critical patent/EP1746498A4/en
Priority to JP2006512697A priority patent/JP4616829B2/ja
Priority to CA2562012A priority patent/CA2562012C/en
Priority to AU2004319192A priority patent/AU2004319192B2/en
Priority to CNB2004800428606A priority patent/CN100555217C/zh
Priority to PCT/JP2004/006168 priority patent/WO2005106650A1/ja
Publication of WO2005106650A1 publication Critical patent/WO2005106650A1/ja
Priority to US11/523,227 priority patent/US7930679B2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/24Object-oriented
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse

Definitions

  • the source code creation support device acquires an existing program code and a sequence diagram indicating the specifications of the program code in advance, and creates a tree structure based on the acquired sequence diagram. Data is generated, and the tree structure data and the program code are stored in association with each other.
  • the output unit 120 receives the program code from the control unit 130 and outputs the received program code.
  • the tree structure data 300 includes cells 300a to 300d. “Program code specific information” is stored in the program code specific information area of cell 300a, “Receive Order” is stored in the method name area, and “ ⁇ rder” is stored in the connected class name area. The “address where cell 300b is located” is stored in the pointer area.
  • the number of identification numbers assigned to the tree structure data received from the tree structure conversion processing unit 130a and the tree structure acquired from the target tree structure data 140b If the number of identification numbers assigned to the data does not match, it is determined that the tree structure data does not match.
  • step S404, No it is determined whether or not matching has been performed for all tree structure data (step S407), and all tree structures have been matched. If the matching is not performed on the structural data (step S407, No), the next tree structure data is obtained from the target tree structure data 140b (step S408), and the process proceeds to step S402.
  • tree structure data is generated based on a sequence diagram showing the specifications of a newly created source code, and the existing source code and the existing source code are generated. Since the tree structure data that matches the generated tree structure data is searched from the storage device that stores at least the tree structure data to be generated and the source code corresponding to the matched tree structure data is obtained from the storage device, Eliminates the need to generate source code from scratch and simply generates a sequence diagram to automatically generate the desired source code, eliminating user burden and improving program development efficiency be able to. Industrial applicability

Abstract

木構造変換処理部(130a)が、生成シーケンス図データをもとに木構造データを生成し、マッチング処理部(130b)が、生成した木構造データに合致する木構造データを対象木構造データ(140b)から検索し、プログラム抽出処理部(130c)が、合致した木構造データのプログラムコード特定情報から、対応する既存のプログラムコードを取得し、取得したプログラムコードのインスタンス名を、生成シーケンス図データに対応するインスタンス名に置き換える。

Description

ソースコード作成支援プログラムおよびソースコード作成支援方法 技術分野
この発明は、 オブジェクト指向に基づいたソースコードの作成を支援するソー スコード作成支援プログラムおよび明ソースコード作成支援方法に関するものであ り、 特に、 既存のソースコードを再利用してプログラム開発の効率を向上させる ことができるにソースコード作成支援プログ書ラムおよびソースコード作成支援方 法に関するものである。 背景技術
近年、 プログラム開発を効率化すべく、 オブジェクト指向に基づいて、 プログ ラムコードが作成されている。 このオブジェクト指向では、 データと処理とを 1 つのオブジェクトとして収め、 このオブジェクトに処理を呼び起こすメッセージ を送る形で、 プログラムコードを記述する。
一方で、 ユーザが所望するプログラムコードの仕様書などをもとに、 仕様書に 対応するプログラムコードを自動的に生成する試みもなされているが、 プログラ ムコードを生成する処理口ジックが不完全であるために、 ユーザが所望するプロ グラムコードの雛形程度しか生成することができなかった (例えば、 特許文献 1 参照) 。 すなわち、 完全なプログラムコードを生成するには、 ユーザが簡易スク リプト言語などを用いて、 プログラムコードを新たに書き足す必要があつた。 この課題を解消するため、 プログラムコードと、 該プログラムコードの構成図 とを関連付けて作成しておき、 ユーザが構成図の編集を行うと、 該構成図に対し て行った編集が、 対応するプログラムコードに反映され、 新たなプログラムコー ドを生成可能とする技術が考案されている (例えば特許文献 2参照) 。 なお、 特 許文献 3では、 プログラムコードに関する仕様書の整合性を自動的に管理する技 術が公開されている。
特許文献 1 (特開平 1 1一 2 1 9 2 8 7号公報)
特許文献 2 (特許第 3 2 9 9 2 5 9号公報)
特許文献 3 (特開平 1 1一 3 2 1 6号公報)
しかしながら、 かかる従来の技術では、 新規に生成しょうとするプログラムコ ードと同等なプロダラムコードを予め記述しておく必要があり、 ユーザに対する 負担が大きかった。
また、 予め作成したプログラムコードの構造図に対応しない新たなプログラム コードを生成する場合には、 構造図を編集して新規のプログラムコードを生成す ることができず、 ユーザ自身が新たプログラムコードを作成する必要があり、 プ ログラムコード作成の効率が悪かった。
本発明は、 上述した従来技術の問題点を解消するためになされたものであり、 ユーザの負担をなくし、 効率よくプログラムコードを作成することができるソー スコード作成支援プロダラムおよびソースコード作成支援方法を提供することを 目的としている。 発明の開示
上述した課題を解決し、 目的を達成するため、 本発明は、 オブジェクト指向に 基づいたソースコードの作成を支援するソースコード作成支援プログラムであつ て、 新規に作成するソースコードの仕様を示すシーケンス図をもとに、 木構造デ ータを生成する木構造生成手順と、 既存のソースコードと、 該既存のソースコー ドに対応する木構造データとを少なくとも記憶した記憶装置から、 前記木構造生 成手順において生成した木構造データと合致する木構造データを検索する検索手 順と、 前記合致した木構造データに対応するソースコードを前記記憶装置から取 得する取得手順と、 をコンピュータに実行させることを特徴とする。
また、 本発明は、 オブジェクト指向に基づいたソースコードの作成を支援する ソースコード作成支援方法であって、 新規に作成するソースコードの仕様を示す シーケンス図をもとに、 木構造データを生成する木構造生成工程と、 既存のソー スコードと、 該既存のソースコ一ドに対応する木構造データとを少なくとも記憶 した記憶装置から、 前記木構造生成工程において生成した木構造データと合致す る木構造データを検索する検索工程と、 前記合致した木構造データに対応するソ —スコ一ドを前記記憶装置から取得する取得工程と、を含んだことを特徴とする。 力かる発明によれば、 新規に作成するソースコードの仕様を示すシーケンス図 をもとに、 木構造データを生成し、 既存のソースコードと、 該既存のソースコー ドに対応する木構造データとを少なくとも記憶した記憶装置から、 生成した木構 造データと合致する木構造データを検索し、 合致した木構造データに対応するソ ースコードを記憶装置から取得するので、 まったくゼロからソースコードを生成 する必要性をなくし、 シーケンス図を作成するだけで、 所望するソースコードを 自動的に生成することができるので、 ユーザの負担をなくし、 プログラム開発の 効率を向上させることができる。 図面の簡単な説明
第 1図は、 本実施の形態に係るソースコード作成装置が行うプログラム再利用 の概念を示す図であり、 第 2図は、 ソースコード作成支援装置の構成を示す機構 プロック図であり、第 3図は、シーケンス図のリスト構造の一例を示す図であり、 第 4図は、 木構造データのデータ構造の一例を示す図であり、 第 5図は、 第 3図 に示したシーケンス図データをもとに生成された木構造データを示す図であり、 第 6図は、 対応テーブルの一例を示す図であり、 第 7図は、 各木構造データのセ ルに対する識別番号の割り振りを説明するための図であり、 第 8図は、 生成シー ケンス図と生成シーケンス図の木構造データを示す図であり、 第 9図は、 プログ ラムコードのインスタンス名の変換を説明するための図であり、 第 1 0図は、 準 備処理の処理手順を示すフローチャートであり、 第 1 1図は、 木構造変換処理の 処理手順を示すフローチャートであり、 第 1 2図は、 プログラム生成処理の処理 手順を示すフローチャートであり、 第 1 3図は、 マッチング処理の処理手順を示 すフローチャートであり、 第 1 4図は、 セル選択処理の処理手順を示すフローチ ヤートであり、 第 1 5図は、 本実施の形態に係るソースコード作成支援プロダラ ムを実行するコンピュータシステムを示す図であり、 第 1 6図は、 第 1 5図に示 した本体部 5 0 1の構成を示す機能プロック図である。 発明を実施するための最良の形態
以下に、 本発明にかかるソースコード作成支援プログラムおよびソースコード 作成支援方法の実施の形態を図面に基づいて詳細に説明する。 なお、 この実施の 形態により本発明が限定されるものではない。 また、 本実施の形態では、 それぞ れの機能を物理的に独立して構成したソースコード作成支援装置について説明を 行うが、 それぞれの機能をソフトウェアによって実現することでソースコード作 成支援プログラムとして実施してもょレ、。
実施の形態
まず、 本実施の形態に係るソースコード作成支援装置が行うプログラム再利用 の概念について説明する。 第 1図は、 本実施の形態に係るソースコード作成装置 が行うプログラム再利用の概念を示す図である。 なお、 本実施の形態では、 ォブ ジェクト指向を利用して、 プログラムコードを生成することになる。
本実施の形態に示すソースコード作成支援装置は、 予め、 既存のプログラムコ ードと、 該プログラムコードの仕様を示すシーケンス図とを取得し、 取得したシ 一ケンス図をもとにして木構造データを生成し、 木構造データとプログラムコー ドとを関連付けて記憶しておく。
ここで、 木構造データとは、 シーケンス図に含まれるインスタンスとメソッド との接続関係を抽出し、 メソッドの順序情報と、 インスタンスの接続情報とをも とにして、 生成されるデータである。 また、 インスタンスは、 プログラム実行時 に、 クラスを型として生成されるものであり、 メソッドは、 各インスタンス間で 行う手続きを示す。
そして、 既存のプログラムコードを再利用して、 新たなプログラムコードを生 成する場合には、 新たに生成するプログラムコードのシーケンス図を取得し、 取 得したシーケンス図をもとに木構造データに生成し、 生成した木構造データと合 致する木構造データを、 予め生成しておいた木構造データから検索する。
そして、 合致する木構造データに対応するプログラムコードを抽出し、 抽出し たプログラムコードに含まれるィンスタンス名を新たなィンスタンス名に置き換 ることで、 新たなプログラムコードを生成することができる。
次に、 ソースコード作成支援装置の構成について説明する。 第 2図は、 ソース コード作成支援装置 1 0 0の構成を示す機能プロック図である。
同図に示すように、 このソースコード作成支援装置 1 0 0は、 入力受付部 1 1 0と、 出力部 1 2 0と、 制御部 1 3 0と、 記憶部 1 4 0とを有する。
入力受付部 1 1 0は、 図示しないキーボードなどの入力装置からシーケンス図 のデータや、 プログラムコードなどを取得し、 取得したシーケンス図のデータと プログラムコードとを制御部 1 3 0に渡す。 なお、 入力受付部 1 1 0は、 シーケ ンス図のデータを所定のデータ構造に変換し (以下、 シーケンス図データと表記 する) 、 制御部 1 3 0に渡す。
第 3図は、 シーケンス図データのリスト構造の一例を示す図である。 同図に示 すように、 シーケンス図データは、 インスタンスリスト 2 1 0と、 メソッド矢線 リスト 2 2 0とを含む。 なお、 2 0 0は、 シーケンス図データによって表示され るシーケンス図を示す。
インスタンスリスト 2 1 0は、 「左上座標」 と、 「幅 J と、 「高さ」 と、 「ィ ンスタンス情報」 と、 「ライフライン長」 と、 「ライフライン座標」 とを含む。 ここで、 「左上座標」 は、 ィンスタンスを表す箱 2 0 0 aの左上角の座標を示 し、 「幅」 は、 インスタンスを表す箱2 0 0 aの幅を示し、 「高さ」 は、 インス タンスを表す箱 2 0 0 aの高さを示す。
また、 「ィンスタンス情報」 は、 インスタンスを表す箱 2 0 0 aに記録された インスタンス名と該インスタンス名を含むクラス名とを示し、 「ライフライン長
J は、 ライフライン 2 0 0 bの長さを示し、 「ライフライン座標」 は、 ライフラ イン 2 0 0 bの頂点の座標を示す。
例えば、 左端に存在するィンスタンスの箱およびライフラインを示すィンスタ ンスリストは、 「左上座標」 カ 「 (x l , y 1 ) 」 であり、 「幅」 力 S 「w l」 で あり、 「高さ」 力 S 「h 1」 であり、 「インスタンス情報」 力 S 「a : O r d e r」 であり、 「ライフライン長」 が 「し 1」 であり、 「ライフライン座標」 が 「し X 1, L y l」 であることを示す。 なお、 その他のインスタンスリストの説明は省 略する。
次に、 メソッド矢線リスト 2 2 0の説明を行う。 同図に示すように、 メソッド 矢線リスト 2 2 0は、 「開始点座標」 と、 「メソッド名」 と、 「長さ」 と、 「線 種」 と、 「接続元クラス」 と、 「接続先クラス」 とを含む。
ここで、 「開始点座標」 は、 矢線 2 0 0 cの左端の座標を示し、 「メソッド名 j は、 矢線によって表されるメソッドの名前を示し、 「長さ」 は、 矢,線 2 0 0 c の長さを示し、 「線種」 は、 矢線 2 0 0 cの線の種類を表し、 「接続元クラス」 は、 矢線 2 0 0 cの接続元のクラス名を示し、 「接続先クラス」 は、 矢線 2 0 0 cの接続先のクラス名を示す。
例えば、 左端に存在する矢線のメソッド矢線リストは、 「開始点座標」 力 S 「 ( a 1, b 1 ) 」 であり、 「メソッド名」 力 S Γ r e c i e V e〇 r d e r」 であり、 「長さ」 力 S 「I 1」 であり、 「線種」 力 S 「S o 1 i d」 であり、 「接続元クラス J カ 「なし」 であり、 「接続先クラス」 ; ^ 「 a :〇 r d e r J であることを示す。 なお、 その他のメソッド矢線リストの説明は省略する。
出力部 1 2 0は、 制御部 1 3 0からプログラムコードを受け取り、 受け取った プログラムコードを出力する。
制御部 1 3 0は、 木構造データの生成や、 既存のプログラムコードを再利用し て、 新たなプログラムコードを生成する処理部であり、 木構造変換処理部 1 3 0 aと、マッチング処理部 1 3 0 bと、プログラム抽出処理部 1 3 0 cとを有する。 木構造変換処理部 1 3 0 aは、 入力受付部 1 1 0からシーケンス図データとプ 口グラムコードとを受け取り、 受け取ったシーケンス図データを木構造データに 変換する。 そして、 木構造変換処理部 1 30 aは、 プログラムコードと木構造デ ータとをそれぞれプログラムコードデータ 140 aおよび対象木構造データ 14 0 bとして記憶部 140に記憶させる。
なお、 木構造変換処理部 1 30 aは、 プログラムコードと木構造データとを記 憶部 140に記憶させる場合に、 木構造データに、 対応するプログラムコードが 何処に記憶されたか特定するための特定情報 (以下、 プログラムコード特定情報 と表記する) を添付する。
第 4図は、 木構造データのデータ構造の一例を示す図である。 同図に示す木構 造データは、 プログラムコード特定情報領域と、 メソッド名領域と、 接続先クラ ス名領域と、 ポインタ領域とを有する。 以下、 メソッド名領域、 接続先クラス名 領域およびポインタ領域をあわせてセルと表言己する (なお、 木構造データの先頭 のセルには、 プログラムコード特定情報領域が含まれる) 。
ここで、 プログラムコード特定情報領域は、 プログラムコード特定情報を格納 する領域であり、 メソッド名領域は、 メソッド名を格納する領域であり、 接続先 クラス名領域は、 接続先のクラス名を格納する領域であり、 ポインタ領域は、 次 の接続先となるセルのアドレスを格納している。 なお、 次の接続先が複数存在す る場合には、 ポインタ領域には複数のァドレスが格納される。
なお、第 3図に示したシーケンス図データをもとに木構造データを生成すると、 第 5図の 300のようになり、 木構造データ 300を図に示すと、 3 1 0のよう に表すことができる。
また、 木構造データ 300は、 セル 300 a~300 dを含んでいる。 セル 3 00 aのプログラムコード特定情報領域には 「プログラムコード特定情報」 が格 納され、 メソッド名領域には 「R e c i e v e O r d e r」 が格納され、 接続先 クラス名領域には 「〇 r d e r」 が格納され、 ポインタ領域には 「セル 300 b の位置するアドレス」 が格納される。
セル 300 bのメソッド名領域には 「c r e a t e Or d e r」 が格納され、 接続先クラス名領域には 「R e c e i p t」 が格納され、 ポインタ領域には 「セ ル 300 cと 300 dとが位置するァドレス」 が格納される。
セル 300 cのメソッド名領域には 「g e t Cu s t ome r」 が格納され、 接続先クラス名領域には 「Cu s t ome r」 が格納される。 なお、 セル 300 cのポィンタ領域には、後に続くセルが存在しないため、データは格納されない。 セル 300 dのメソッド名領域には 「g e t P r o du c t」 が格納され、 接 続先クラス名領域には 「P r o d u c t」 が格納される。 なお、 セル 300 dの ポインタ領域もセル 300 cと同様に、 後に続くセルが存在しないため、 データ は格納されない。
また、 木構造変換処理部 130 aは、 シーケンス図データのインスタンスに含 対応関係を表す対応テーブルを作成し、 作成した対応テーブル 140 cを記憶部 140に記 '慮させる。
第 6図は対応テーブルの一例を示す図である。 同図に示すように、 対応テープ ノレ 140 cは、 クラス名とインスタンス名とからなる。
具体的には、 クラス名 「Or d e r」 に対応するインスタンス名は 「a」 であ り、 クラス名 「Re c e i p t」 に対応するインスタンス名は 「b」 であり、 ク ラス名 「P r o d u c t」 に対応するインスタンス名は 「c J であり、 クラス名 「Cu s t ome r」 に対応するインスタンス名は 「d」 であることを示す。 こ の対応テーブルは、後述するプログラム抽出処理部 130 cによって利用される。 ところで、 木構造変換処理部 130 aは、 既存のプログラムコードを再利用し て、 新たに生成するプログラムコードの仕様を示すシーケンス図データ (以下、 生成シーケンス図データと表記する) を受け取った場合には、 受け取った生成シ 一ケンス図データを木構造データに変換し、 変換した木構造データをマツチング 処理部 130 bに渡し、 生成シーケンス図データをプログラム抽出処理部 130 cに渡す。
マッチング処理部 130 bは、 木構造変換処理部 130 aから木構造データを 受け取った場合に、 受け取った木構造データと合致する木構造データを記憶部 1 4 0の対象木構造データ 1 4 0 bから検索する。
具体的には、 第 7図に示すように、 木構造変換処理部 1 3 0 aから受け取った 木構造データおよび対象木構造データ 1 4 0 bから取得した木構造データに含ま れるセルの接続関係を解析し、 各木構造データの各セルに対して識別番号を割り 振る。
識別番号の割り振り手順は、 木構造データの先頭のセルに識別番号 「1」 を割 り振り、識別情報「 1」が割り振られた次のセルに、識別番号「 2」 を割り振る。 なお、 同一層に複数のセルが繋がっている場合には、 接続元のセルのポインタ に含まれるァドレスが記録された順番に識別番号を割り振る。
例えば、 第 5図に示す木構造データ 3 0 0に対しては、 セル 3 0 0 a、 セル 3 0 0 b、 セル 3 0 0 c、 セル 3 0 0 dの順番に、 識別番号 1、 2、 3、 4が割り 振られる。
そして、 識別番号が同一のセルに対してメソッド名および接続先クラス名が等 しいかを順番に判断し、 全てのセルのメソッド名および接続先クラス名が等しい 場合に、 木構造データが合致すると判断する。 そして、 合致した木構造データを プログラム抽出処理部 1 3 0 cに渡すことになる。
例えば、 第 8図に表される生成シーケンス図 3 5 0に対応する木構造データ 3 6 0は、 第 5図の木構造データ 3 0 0と合致することになるので、 マッチング処 理部 1 3 0 bは、 木構造データ 3 0 0をプロダラム抽出処理部 1 3 0 cに渡す。 プログラム抽出処理部 1 3 0 cは、 マツチング処理部 1 3 0 bから、 木構造デ ータを取得し、 該取得した木構造データに含まれるプログラムコード特定情報を もとに、 木構造データに対応するプログラムコードをプログラムコードデータ 1 4 0から検索する。
そして、 プログラム抽出処理部 1 3 0 cは、 検出したプログラムコードと、 対 応テーブル 1 4 0 cとをもとにして、 プログラムコードに含まれるインスタンス 名を新たなインスタンス名に置き換え、 該置き換えたプログラムコードを出力部 1 2 0に渡す。 例えば、 プログラム抽出処理部 1 30 c力 木構造データ 300を受け取った 場合には、 木構造データ 300に含まれるプログラム特定情報から、 木構造デー タ 300に対応するプログラムコード 400 b (第 9図に示す) を抽出すること ができる。
そして、 プログラム抽出処理部 1 30 cがプログラムコード 400 bのインス タンス 「b」 に対応するクラスを、 対応テーブル 140 cをもとに検索すると、 インスタンス 「b」 に対応するクラスは、 「R e c e i p t J であることが判明 する。
したがって、 第 8図に示す生成シーケンス図データのクラス 「R e c e i p t J のインスタンスは 「yj であるため、 プログラム抽出処理部 1 30 cは、 プロ グラムコード 400 aのインスタンスを 「bj から 「y」 に変換し、 新たなプロ グラムコード 400 bを生成する。
すなわち、 初めからプログラムコードを生成しなくても、 新たに生成しようと するプログラムコードの仕様のシーケンス図を作成するだけで、 シーケンス図に 対応するプログラムコードを生成することができる。
なお、 本実施の形態では詳しい説明は省略するが、 木構造変換処理部 1 30 a カ ら受け取った木構造データに割り振った識別番号の数と、 対象木構造データ 1 40 bから取得した木構造データに割り振った識別番号の数とがー致しない場合 には、 木構造データが合致しないと判断することになる。
次に、 木構造変換処理部 1 30 a 1 予め、 木構造データと木構造データに対 応するプログラムコードとを記憶部 140に記憶させる準備処理について説明す る。 第 10図は、 準備処理の処理手順を示すフローチャートである。
第 10図に示すように、 入力受付部 1 10が、 プログラムコードおよびシーケ ンス図を読み込み (ステップ S 10 1) 、 プログラムコードおょぴシーケンス図 データを、 木構造変換処理部 1 30 aに渡す (ステップ S 102) 。
そして、 木構造変換処理部 1 30 aは、 木構造変換処理を行い (ステップ S 1 03) 、 対応テーブルを作成し (ステップ S 104) 、 対応テーブルを記憶部 1 40に記憶させる (ステップ S I 05) 。
そして、 木構造変換処理部 130 aは、 プログラムコードを記憶部 140に記 憶させ (ステップ S 106) 、 プログラムコード特定情報を木構造データに追加 し (ステップ S 107) 、 木構造データを記憶部 140に記憶させる (ステップ S 108) 。
次に、第 10図のステップ S 103で示した木構造変換処理について説明する。 第 1 1図は、 木構造変換処理の処理手順を示すフローチャートである。 同図に示 すように、 木構造変換処理部 130 aは、 シーケンス図の最左かつ最上のメソッ ド矢線を検索し (ステップ S 201) 、 セルを生成し (ステップ S 202) 、 セ ルにメソッド名および接続先のクラス名を格納し (ステップ S 203) 、 矢線の 接続元クラス名を記録する (ステップ S 204) 。 (上記説明では省略したが、 木構造変換処理部 130 aは、 検索した矢線の接続元クラス名を記憶する) そして、 下方向最近傍の次の矢線を検索し (ステップ S 205) 、 矢線は存在 するカゝ否かを判断し (ステップ S 206) 、 矢線が存在しない場合には (ステツ プ S 206, No) 、 木構造変換処理を終了する。
一方、 矢線が存在する場合には (ステップ S 206, Ye s) 、 セルを生成し (ステップ S 207) 、 セルにメソッド名および接続先のクラス名を格納し (ス テツプ S 208) 、 直前の矢線に関する接続元クラス名と、 現在の矢線に関する 接続元クラス名とが同一か否かを判断する (ステップ S 209) 。
直前の矢線に関する接続元クラス名と、 現在の矢線に関する接続元クラス名と が同一でない場合には (ステップ S 209, No) 、 直前に作成したセルのポィ ンタに、 現在のセルのアドレスを格納し (ステップ S 210) 、 記録した矢線の 接続元クラス名を現在の矢線の接続元クラス名に更新し (ステップ S 211) 、 ステップ S 205に移行する。
一方、 直前の矢線に関する接続元クラス名と、 現在の矢線に関する接続元クラ ス名とが同一の場合には (ステップ S 209, Ye s) 、 呼び出し元のセ^/のポ インタに、 現在のセルのァドレスを追加し (ステップ S 212) 、 ステップ S 2 11に移行する。
次に、 新たに生成するプログラムコードのシーケンス図をもとに、 プログラム コードを生成するプログラム生成処理について説明する。 第 12図は、 プロダラ ム生成処理の処理手順を示すフローチャートである。 同図に示すように、 入力受 付部 1 10が、 シーケンス図を読み込み (ステップ S 301) 、 シーケンス図デ 一タを木構造変換処理部 130 aに渡し (ステップ S 302) 、 木構造変換処理 部 130 a力 木構造変換処理を行い (ステップ S 303) 、 木構造データをマ ツチング処理部 130 cに渡す (ステップ S 304) 。
そして、 マッチング処理部 130 cは、 マッチング処理を行い (ステップ S 3 05)'、合致する木構造データが存在するか否かを判定し(ステップ S 306)、 合致する木構造データが存在しない場合には (ステップ S 306, No) 、 処理 を終了する。
一方、 合致する木構造データが存在する場合には (ステップ S 306, Ye s ) 、 マッチング処理部 130 cは、 合致した木構造データをプログラム抽出処理 部 130 cに渡し (ステップ S 307) 、 プログラム抽出処理部 130 cは、 合 致した木構造データに対応するプログラムコードを検索し(ステップ S 308)、 対応テーブルをもとに、 プログラムコードのインスタンス名を置き換え (ステツ プ S 309) 、 出力部 120にプログラムコードを渡し (ステップ S 310) 、 出力部 120は、 プログラムコードを出力する (ステップ S 311)。
ここで、 第 12図のステップ S 303で示した木構造変換処理は、 第 1 1図で 示した木構造変換処理と同様であるので、 説明を省略する。
次に、第 12図のステップ S 305で示したマッチング処理について説明する。 第 1 3図は、 マッチング処理の処理手順を示すフローチャートである。 同図に示 すように、 マッチング処理部 130 bは、 対象木構造データ 140 bから木構造 データを取得し (ステップ S 401) 、 木構造データに識別番号を割り振り (ス テツプ S 402) 、 セル選択処理を行い (ステップ S 403) 、 各メソッド名お よび接続先クラス名は等しいか否かを判定する (ステップ S 404)。 各メソッド名および接続先クラス名が等しい場合には (ステップ S 404, Y e s) , 木構造データに含まれる全てのセルを選択した力否かを判定し (ステツ プ S405) 、 木構造データに含まれる全てのセルを選択していない場合には ( ステップ S 405, No) 、 ステップ S 403に移行し、 木構造データに含まれ る全てのセルを選択した場合には (ステップ S 405, Ye s) 、 一致する木構 造データが存在すると判断する (ステップ S406) 。
一方、 各メソッド名および接続先クヲス名が等しくない場合には (ステップ S 404, No) 、 全ての木構造データに対してマツチングを行ったか否かを判定 し (ステップ S 407) 、 全ての木構造データに対してマッチングを行っていな い場合には (ステップ S407, No) 、 対象木構造データ 140 bから次の木 構造データを取得し (ステップ S 408) 、 ステップ S 402に移行する。
一方、 全ての木構造データに対してマッチングを行った場合には (ステップ S 407, Ye s) 、 一致する木構造データが存在しないと判断する (ステップ S 409) 。
次に、 第 13図のステップ S 403に示したセル選択処理について説明する。 第 14図は、 セル選択処理の処理手順を示すフローチャートである。 同図に示す ように、 マッチング処理部 130 bは、 木構造変換処理部 130 aから受け取つ た木構造データおよび対象木構造データ 140 bから取得した木構造データに含 まれるセルを始めて選択する力否かを判定し (ステップ S 501) 、 セルを始め て選択する場合には (ステップ S 501, Ye s) 、 識別番号 「1」 に対応する セルをそれぞれ選択する (ステップ S 502) 。
一方、セルを選択するのが始めてでない場合には(ステップ S 501, No)、 対象木構造データ 140 bから新たに木構造データを取得したカゝ否かを判定し ( ステップ S 503) 、 対象木構造データから、 新たに木構造データを取得した場 合には (ステップ S 503, Ye s) 、 対象木構造データ 140 bから以前取得 した古い木構造データを、 新たに取得した木構造データに変換し (ステップ S 5 04) 、 ステップ S 502に移行する。 一方、 対象木構造データから、 新たに木構造データを取得していない場合には (ステップ S 5 0 3 , N o ) 、 前回選択した識別番号の次の識別番号に対応する セルをそれぞれ選択する (ステップ S 5 0 5 ) 。
上述してきたように、本実施の形態に係るソースコード作成支援プログラムは、 木構造変換処理部 1 3 0 a力 生成シーケンス図データをもとに木構造データを 生成し、 マッチング処理部 1 3 0 bが、 生成した木構造データに合致する木構造 データを対象木構造データ 1 4 0 bから検索し、 プログラム抽出処理部 1 3 0 c I 合致した木構造データのプログラムコード特定情報から、 対応する既存のプ ログラムコードを取得し、 取得したプログラムコードのインスタンス名を、 生成 シーケンス図データに対応するインスタンス名に置き換えるので、 まったくゼロ からプログラムコードを生成する必要性をなくし、 シーケンス図を作成するだけ で、 プログラムコードを生成することができるので、 プログラムコードの生産性 を向上させることができる。
また、 シーケンス図を作成するだけで、 シーケンス図に対応するプログラムコ 一ドが自動的に生成されるので、スクリプト言語の文法の知識がないユーザでも、 容易にプログラムコードを生成することができる。
なお、 本実施の形態では、 ソースコード作成支援装置 1 0 0について説明した 力 このソースコード作成支援装置 1 0 0を有する構成をソフトウェアによって 実現することで、 同様の機能を有するソースコード作成支援プログラムを得るこ とができる。 そこで、 このソースコード作成支援プログラムを実行するコンビュ ータシステムについて説明する。
第 1 5図は、 本実施の形態に係るソースコード作成支援プログラムを実行する コンピュータシステムを示す図である。 同図に示すように、 このコンピュータシ ステム 5 0 0は、 本体部 5 0 1と、 本体部 5 0 1からの指示により表示画面 5 0 2 aに情報を表示するディスプレイ 5 0 2と、 このコンピュータシステム 5 0 0 に種々の情報を入力するためのキーボード 5 0 3と、 ディスプレイ 5 0 2の表示 画面 5 0 2 a上の任意の位置を指定するマウス 5 0 4と、 L AN 5 0 6または広 域エリアネットワーク (WAN) に接続する LANインタフェースと、 公衆回線 507に接続するモデム 505とを有する。 ここで、 LAN506は、 他のコン ピュータシステム (PC) 51 1、 サーバ 512、 プリンタ 513などとコンビ ユータシステム 500とを接続している。
また、 第 16図は、 第 15図に示した本体部 501の構成を示す機能プロック 図である。 同図に示すように、 この本体部 501は、 CPU521と、 RAM 5 22と、 ROM523と、 ハードディスクドライブ (HDD) 524と、 CD- ROMドライブ 525と、 FDドライブ 526と、 I /Oインタフェース 527 と、 LANインタフェース 528とを有する。
そして、 このコンピュータシステム 500において実行されるソースコード作 成支援プログラムは、フロッピィディスク (FD) 508、 CD-ROM509、 DVDディスク、光磁気ディスク、 I Cカードなどの可搬型記憶媒体に記憶され、 これらの記憶媒体から読み出されてコンピュータシステム 500にインストール される。 そして、 インストールされた動画配信プログラムは、 HDD 524に記 憶され、 RAM522、 ROM523などを利用して C PU 521により実行さ れる。
以上説明したように、 本発明によれば、 新規に作成するソースコードの仕様を 示すシーケンス図をもとに、 木構造データを生成し、 既存のソースコードと、 該 既存のソースコ一ドに対応する木構造データとを少なくとも記憶した記憶装置か ら、 生成した木構造データと合致する木構造データを検索し、 合致した木構造デ 一タに対応するソースコードを記憶装置から取得するので、 まったくゼロからソ ースコードを生成する必要性をなくし、 シーケンス図を作成するだけで、 所望す るソースコードを.自動的に生成することができるので、 ユーザの負担をなくし、 プログラム開発の効率を向上させることができる。 産業上の利用可能性
以上のように、 本発明にかかるソースコード作成支援プログラムおょぴソース コード作成支援方法は、 既存のソースコードを利用して、 効率よくソースコード を作成する必要のあるオブジェクト指向に基づいたプログラム開発システムなど に適している。

Claims

請 求 の 範 囲
1 . オブジェクト指向に基づいたソースコードの作成を支援するソースコード 作成支援プログラムであって、
新規に作成するソースコードの仕様を示すシーケンス図をもとに、 木構造デー タを生成する木構造生成手順と、
既存のソースコードと、 該既存のソースコードに対応する木構造データとを少 なくとも記憶した記憶装置から、 前記木構造生成手順において生成した木構造デ ータと合致する木構造データを検索する検索手順と、
前記合致した木構造データに対応するソースコードを前記記憶装置から取得す る取得手 II匿と、
をコンピュータに実行させることを特徴とするソースコード作成支援プログラ ム。
2 . 前記取得手順において取得したソースコードに含まれるインスタンスを、 前記シーケンス図に対応するインスタンスに変換する変換処理手順をさらにコン ピュータに実行させることを特徴とする請求の範囲第 1項に記載のソースコード 作成支援プログラム。
3 . 前記木構造生成手順は、 前記シーケンス図に含まれるインスタンスおよび メソッドの接続関係を抽出する接続関係抽出手順と、前記接続関係をもとにして、 メソッドの順序情報を含んだ木構造データを生成する木構造生成処理手順とをコ ンピュータに実行させることを特徴とする請求の範囲第 1項または請求の範囲第 2項に記載のソースコード作成支援プログラム。
4. 前記検索手順は、 前記木構造生成手順で生成された木構造データに含まれ るメソッドの順序情報と等しいメソッドの順序情報を含んだ木構造データを前記 記憶装置から検索することを特徴とする請求の範囲第 3項に記載のソースコード 作成支援プログラム。
5 . オブジェクト指向に基づいたソースコードの作成を支援するソースコード 作成支援方法であって、
新規に作成するソースコードの仕様を示すシーケンス図をもとに、 木構造デー タを生成する木構造生成工程と、
既存のソースコードと、 該既存のソースコードに対応する木構造データとを少 なくとも記憶した記憶装置から、 前記木構造生成工程において生成した木構造デ ータと合致する木構造データを検索する検索工程と、
前記合致した木構造データに対応するソースコードを前記記憶装置から取得す る取得工程と、
を含んだことを特徴とするソースコード作成支援方法。
6 . 前記取得工程において取得したソースコードに含まれるインスタンスを、 前記シーケンス図に対応するィンスタンスに変換する変換処理工程をさらに含ん だことを特徴とする請求の範囲第 5項に記載のソースコード作成支援方法。
7 . 前記木構造生成工程は、 前記シーケンス図に含まれるインスタンスおよび メソッドの接続関係を抽出する接続関係抽出工程と、前記接続関係をもとにして、 メソッドの順序情報を含んだ木構造データを生成する木構造生成処理工程とを含 んだことを特徴とする請求の範囲第 5項または請求の範囲第 6項に記載のソース コード作成支援方法。 ' 8 . 前記検索工程は、 前記木構造生成工程で生成された木構造データに含まれ るメソッドの順序情報と等しいメソッドの順序情報を含んだ木構造データを前記 記憶装置から検索することを特徴とする請求の範囲第 7項に記載のソースコード 作成支援方法。
PCT/JP2004/006168 2004-04-28 2004-04-28 ソースコード作成支援プログラムおよびソースコード作成支援方法 WO2005106650A1 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
EP04730050A EP1746498A4 (en) 2004-04-28 2004-04-28 AID PROGRAM FOR SOURCE PRODUCTION AND METHOD FOR SUPPORTING SOURCE PRODUCTION
JP2006512697A JP4616829B2 (ja) 2004-04-28 2004-04-28 ソースコード作成支援プログラムおよびソースコード作成支援方法
CA2562012A CA2562012C (en) 2004-04-28 2004-04-28 Source-code-generation supporting program and source-code-generation supporting method
AU2004319192A AU2004319192B2 (en) 2004-04-28 2004-04-28 Source code generation support program and source code generation support method
CNB2004800428606A CN100555217C (zh) 2004-04-28 2004-04-28 源代码生成支援装置及源代码生成支援方法
PCT/JP2004/006168 WO2005106650A1 (ja) 2004-04-28 2004-04-28 ソースコード作成支援プログラムおよびソースコード作成支援方法
US11/523,227 US7930679B2 (en) 2004-04-28 2006-09-19 Source-code-generation supporting method and computer product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2004/006168 WO2005106650A1 (ja) 2004-04-28 2004-04-28 ソースコード作成支援プログラムおよびソースコード作成支援方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US11/523,227 Continuation US7930679B2 (en) 2004-04-28 2006-09-19 Source-code-generation supporting method and computer product

Publications (1)

Publication Number Publication Date
WO2005106650A1 true WO2005106650A1 (ja) 2005-11-10

Family

ID=35241842

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2004/006168 WO2005106650A1 (ja) 2004-04-28 2004-04-28 ソースコード作成支援プログラムおよびソースコード作成支援方法

Country Status (7)

Country Link
US (1) US7930679B2 (ja)
EP (1) EP1746498A4 (ja)
JP (1) JP4616829B2 (ja)
CN (1) CN100555217C (ja)
AU (1) AU2004319192B2 (ja)
CA (1) CA2562012C (ja)
WO (1) WO2005106650A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008234271A (ja) * 2007-03-20 2008-10-02 Hitachi Software Eng Co Ltd アスペクト設定方法および装置並びにコンピュータプログラム

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI273487B (en) * 2004-06-08 2007-02-11 Via Tech Inc Computer system, related method, manufacture developing method and related system for generating program codes for describing relations of numerous function titles and numerous control signal codes of a device
US20060190343A1 (en) * 2005-02-24 2006-08-24 Word Of Mouth Marketing, Inc. Method of marketing memberships in a consumer group
US7917890B2 (en) * 2006-08-31 2011-03-29 Jon Barcellona Enterprise-scale application development framework utilizing code generation
JP4613214B2 (ja) 2008-02-26 2011-01-12 日立オートモティブシステムズ株式会社 ソフトウェア自動構成装置
US8341607B2 (en) * 2008-03-13 2012-12-25 International Business Machines Corporation Condensing pattern matcher generation for intermediate language patterns
US8863097B2 (en) * 2010-12-29 2014-10-14 Sap Ag Providing code list extensibility
US20130067432A1 (en) * 2011-09-12 2013-03-14 Microsoft Corporation Application development toolkit
US9117177B1 (en) * 2013-05-30 2015-08-25 Amazon Technologies, Inc. Generating module stubs
KR20190082542A (ko) * 2018-01-02 2019-07-10 삼성전자주식회사 테이블로부터 소스 코드의 생성 및 그것의 사용을 위한 방법, 시스템 및 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07123452A (ja) * 1993-10-25 1995-05-12 Matsushita Electric Ind Co Ltd 通信サービス自動生成システム
US5561801A (en) 1991-12-13 1996-10-01 Thinking Machines Corporation System and method for multilevel promotion
JP2001188673A (ja) * 1999-12-28 2001-07-10 Mitsubishi Electric Corp ソフトウェア再利用支援装置
WO2002046921A1 (fr) * 2000-12-08 2002-06-13 Fujitsu Limited Procede et dispositif pour l'analyse de sequences

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02105222A (ja) * 1988-10-13 1990-04-17 Matsushita Electric Ind Co Ltd ソフトウェア自動生成装置とソフトウェア自動生成方法
JPH03195193A (ja) * 1989-12-22 1991-08-26 Nippon Telegr & Teleph Corp <Ntt> 通信サービスソフトウェア自動生成システム
JP3299259B2 (ja) 1990-05-15 2002-07-08 富士通株式会社 プログラムの構造図編集処理方式
US5699310A (en) * 1990-06-29 1997-12-16 Dynasty Technologies, Inc. Method and apparatus for a fully inherited object-oriented computer system for generating source code from user-entered specifications
JP3115578B2 (ja) * 1990-07-17 2000-12-11 三洋電機株式会社 プログラム開発装置
GB2278213A (en) * 1993-05-18 1994-11-23 Ibm Test program generator.
JPH0736684A (ja) * 1993-07-20 1995-02-07 Hitachi Ltd ドメイン指向部品管理方法
CA2134059C (en) * 1993-10-29 2009-01-13 Charles Simonyi Method and system for generating a computer program
US5675801A (en) * 1994-09-30 1997-10-07 International Business Machines Corporation Object oriented system and method for generating target language code
US5630131A (en) * 1994-11-14 1997-05-13 Object Technology Licensing Corp. Method and apparatus for importing and exporting archive files for a graphical user interface
US5671416A (en) * 1995-02-24 1997-09-23 Elson; David Apparatus and a method for searching and modifying source code of a computer program
JP3625084B2 (ja) * 1995-04-14 2005-03-02 株式会社山武 ソフトウエア部品の再利用システム
EP0937285B1 (en) * 1995-12-15 2003-07-09 Z-Force Corporation Method for constructing software components and systems as assemblies of independent parts
JPH09297690A (ja) * 1996-04-30 1997-11-18 Nippon Telegr & Teleph Corp <Ntt> 複数意思決定主体環境でのタスク依頼とタスク引き受け行動決定方法
JPH113216A (ja) 1997-06-11 1999-01-06 Fujitsu Ltd シナリオに基づくオブジェクト指向分析設計支援方法および支援装置
JPH11219287A (ja) 1998-02-02 1999-08-10 Mitsubishi Electric Corp ソフトウェア開発支援装置
US6742175B1 (en) * 1998-10-13 2004-05-25 Codagen Technologies Corp. Component-based source code generator
US6591272B1 (en) * 1999-02-25 2003-07-08 Tricoron Networks, Inc. Method and apparatus to make and transmit objects from a database on a server computer to a client computer
JP3715132B2 (ja) 1999-05-21 2005-11-09 三菱電機株式会社 データ中継装置及びデータ中継方法
JP4024733B2 (ja) 2003-08-29 2007-12-19 ジョンソン コントロールズ オートモーティブ システムズ株式会社 乗り物用座席

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5561801A (en) 1991-12-13 1996-10-01 Thinking Machines Corporation System and method for multilevel promotion
JPH07123452A (ja) * 1993-10-25 1995-05-12 Matsushita Electric Ind Co Ltd 通信サービス自動生成システム
JP2001188673A (ja) * 1999-12-28 2001-07-10 Mitsubishi Electric Corp ソフトウェア再利用支援装置
WO2002046921A1 (fr) * 2000-12-08 2002-06-13 Fujitsu Limited Procede et dispositif pour l'analyse de sequences

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1746498A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008234271A (ja) * 2007-03-20 2008-10-02 Hitachi Software Eng Co Ltd アスペクト設定方法および装置並びにコンピュータプログラム

Also Published As

Publication number Publication date
CN1977242A (zh) 2007-06-06
CA2562012C (en) 2013-01-22
JPWO2005106650A1 (ja) 2008-03-21
US20070016889A1 (en) 2007-01-18
JP4616829B2 (ja) 2011-01-19
AU2004319192A1 (en) 2005-11-10
AU2004319192B2 (en) 2008-07-31
US7930679B2 (en) 2011-04-19
EP1746498A1 (en) 2007-01-24
CN100555217C (zh) 2009-10-28
CA2562012A1 (en) 2005-10-11
EP1746498A4 (en) 2011-08-10

Similar Documents

Publication Publication Date Title
US7930679B2 (en) Source-code-generation supporting method and computer product
US20110271246A1 (en) Software development support tool
JP2004240750A (ja) 画像検索装置
JPH02197962A (ja) 電子ファイル装置
KR19990023580A (ko) 전자 메일 또는 에이전트를 이용하여 클라이언트 상에서 gui를 작성하는 정보 처리 방법 및 정보 처리 장치, 정보 처리 장치를 제어하는 프로그램을 저장한 기억 매체
JP2005135211A (ja) 文書管理方法および文書管理装置
JP2006243830A (ja) 画像機器を利用したワークフロー支援システム及びワークフロー検索システム
US20090300001A1 (en) Server apparatus, catalog processing method, and computer-readable storage medium
CN115329753B (zh) 一种基于自然语言处理的智能数据分析方法和系统
JP2004213091A (ja) 文書画像検索装置及びその方法、文書画像検索システム、プログラム
JP2004240751A (ja) 画像検索装置
US6950992B2 (en) External-character font creation system and program recording medium therefor
JP6790886B2 (ja) 情報処理プログラム、情報処理方法および情報処理装置
JP2010146217A (ja) 情報処理装置、その制御方法及びプログラム
JP2001147923A (ja) 類似文書検索装置、類似文書検索方法及び記録媒体
JP5358981B2 (ja) 情報処理装置、情報処理装置の制御方法および情報処理装置の制御用プログラム
JP4585742B2 (ja) 画像表示装置、画像表示方法、プログラム及び記録媒体
JP2005063043A (ja) 画像表示装置、画像表示方法および画像表示プログラム
JP2993881B2 (ja) キーワード生成方法
JP2993880B2 (ja) 電子ファイル装置
JP2008046850A (ja) 文書種類判別装置及び文書種類判別プログラム
JP3550863B2 (ja) 地図認識処理システムおよび地図認識処理方法
JP2020008893A (ja) 情報処理装置、情報処理システム及びプログラム
AU2022271364A1 (en) Facilitating identification of fillable regions in a form
JP2010231638A (ja) コマンド対応付け支援システム、コマンド対応付け支援方法およびプログラム

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200480042860.6

Country of ref document: CN

AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2006512697

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 11523227

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2756/KOLNP/2006

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 2004319192

Country of ref document: AU

WWE Wipo information: entry into national phase

Ref document number: 2004730050

Country of ref document: EP

Ref document number: 2562012

Country of ref document: CA

ENP Entry into the national phase

Ref document number: 2004319192

Country of ref document: AU

Date of ref document: 20040428

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Ref document number: DE

WWP Wipo information: published in national office

Ref document number: 11523227

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 2004730050

Country of ref document: EP