【事件の表示】
　特願２００１−３９６２６６「プログラム生成方法及びシステム」拒絶査定不服審判事件〔平成１５年　７月１１日出願公開、特開２００３−１９６０８８〕について、次のとおり審決する。
【結　論】
　本件審判の請求は、成り立たない。
【理　由】
第１．手続の経緯 
　本願は、平成１３年１２月２７日の出願であって、平成１６年１月２７日付けで手続補正がなされ、平成１８年７月２１日付けで拒絶理由通知がなされ、同年１２月６日付けで拒絶査定がなされ、これに対し、平成１９年２月１５日に審判請求がなされるとともに同年３月１６日付けで手続補正がなされたものである。そして、同年６月１２日付けで審査官から前置報告がなされ、平成２１年３月１３日付けで当審より審尋がなされ、同年６月６日付けで回答書が提出されたものである。
　 
第２．平成１９年３月１６日付けの手続補正についての補正却下の決定 
［補正却下の決定の結論］ 
　平成１９年３月１６日付けの手続補正を却下する。 
　 
［理由］ 
１．補正の内容
　平成１９年３月１６日付けの手続補正（以下、「本件補正」という。）の内容は、
　平成１６年１月２７日付けの手続補正により補正された特許請求の範囲の記載
「【請求項１】  既存プログラムを解析し、該解析結果を基に新プログラムを生成する既存プログラムを再利用するプログラム生成方法において、
  既存プログラムを解析し、
  該解析結果を表示し、
  該表示された解析結果の中から作業者による既存プログラム中の少なくとも１つ以上の起点となるデータ項目の指定に応じて該起点となるデータ項目を登録し、
  作業者によるプログラム作成指示に応じて、指定された起点となるデータ項目の設計情報に関連するデータ項目に対する設計情報を前記解析結果から抽出し、
  既存プログラムに定義されている処理ブロックの呼出し元／呼出し先の関係を前記解析結果から抽出し、
  前記抽出したデータ項目に対する設計情報と前記抽出した処理ブロックの呼出し元／呼出し先の関係に基づきプログラム内の処理ブロックの構成を生成し、
  前記抽出したデータ項目に対する設計情報に基づき前記プログラム内の処理ブロック内に展開される設計情報を生成することによりプログラムを生成することを特徴とする既存プログラムを再利用するプログラム生成方法。
    【請求項２】  既存プログラムを解析し、該解析結果を基にプログラムを生成する既存プログラムを再利用するプログラム生成システムにおいて、
  既存プログラムを解析する手段と、
  該解析結果を表示する手段と、
  該表示された解析結果の中から作業者による既存プログラム中の少なくとも１つ以上の起点となるデータ項目の指定に応じて該起点となるデータ項目を登録する手段と、
  作業者によるプログラム作成指示に応じて、指定された起点となるデータ項目の設計情報に関連するデータ項目に対する設計情報を前記解析結果から抽出する手段と、
  既存プログラムに定義されている処理ブロックの呼出し元／呼出し先の関係を前記解析結果から抽出する手段と、
  前記抽出したデータ項目に対する設計情報と前記抽出した処理ブロックの呼出し元／呼出し先の関係に基づきプログラム内の処理ブロックの構成を生成し、前記抽出したデータ項目に対する設計情報に基づき前記プログラム内の処理ブロック内に展開される設計情報を生成することによりプログラムを生成する手段を有することを特徴とする既存プログラムを再利用するプログラム生成システム。
    【請求項３】  既存プログラムを解析する手順と、
  該解析結果を表示する手順と、
  該表示された解析結果の中から作業者による既存プログラム中の少なくとも１つ以上の起点となるデータ項目の指定に応じて該起点となるデータ項目を登録する手順と、
  作業者によるプログラム作成指示に応じて、指定された起点となるデータ項目の設計情報に関連するデータ項目に対する設計情報を前記解析結果から抽出する手順と、
  既存プログラムに定義されている処理ブロックの呼出し元／呼出し先の関係を前記解析結果から抽出する手順と、
  前記抽出したデータ項目に対する設計情報と前記抽出した処理ブロックの呼出し元／呼出し先の関係に基づきプログラム内の処理ブロックの構成を生成する手順と、
  前記抽出したデータ項目に対する設計情報に基づき前記プログラム内の処理ブロック内に展開される設計情報を生成する手順をコンピュータに実行させるためのプログラム。」（以下、この特許請求の範囲に記載された請求項を「補正前の請求項」という。）を、
　
「【請求項１】  既存プログラムを解析し、該解析結果を基に新プログラムを生成する既存プログラムを再利用するプログラム生成方法において、
  既存プログラムを解析し、
  該解析結果を表示し、
  該表示された解析結果の中から作業者による既存プログラム中の少なくとも１つ以上の起点となるデータ項目の指定に応じて該起点となるデータ項目を登録し、
  作業者によるプログラム作成指示に応じて、指定された起点となるデータ項目の設計情報に関連するデータ項目に対する設計情報を前記解析結果から抽出し、
  既存プログラムに定義され、前記既存プログラムで実行されている処理順序を示す処理ブロックの呼出し元／呼出し先の関係を前記解析結果から抽出し、
  前記抽出したデータ項目に対する設計情報と前記抽出した処理ブロックの呼出し元／呼出し先の関係に基づきプログラム内の処理ブロックの構成を生成し、
  前記抽出したデータ項目に対する設計情報に基づき前記プログラム内の処理ブロック内に展開される設計情報を生成することにより前記既存プログラムで実行されている処理順序を保ったプログラムを生成することを特徴とする既存プログラムを再利用するプログラム生成方法。
    【請求項２】  既存プログラムを解析し、該解析結果を基にプログラムを生成する既存プログラムを再利用するプログラム生成システムにおいて、
  既存プログラムを解析する手段と、
  該解析結果を表示する手段と、
  該表示された解析結果の中から作業者による既存プログラム中の少なくとも１つ以上の起点となるデータ項目の指定に応じて該起点となるデータ項目を登録する手段と、
  作業者によるプログラム作成指示に応じて、指定された起点となるデータ項目の設計情報に関連するデータ項目に対する設計情報を前記解析結果から抽出する手段と、
  既存プログラムに定義され、前記既存プログラムで実行されている処理順序を示す処理ブロックの呼出し元／呼出し先の関係を前記解析結果から抽出する手段と、
  前記抽出したデータ項目に対する設計情報と前記抽出した処理ブロックの呼出し元／呼出し先の関係に基づきプログラム内の処理ブロックの構成を生成し、前記抽出したデータ項目に対する設計情報に基づき前記プログラム内の処理ブロック内に展開される設計情報を生成することにより前記既存プログラムで実行されている処理順序を保ったプログラムを生成する手段を有することを特徴とする既存プログラムを再利用するプログラム生成システム。
    【請求項３】  既存プログラムを解析する手順と、
  該解析結果を表示する手順と、
  該表示された解析結果の中から作業者による既存プログラム中の少なくとも１つ以上の起点となるデータ項目の指定に応じて該起点となるデータ項目を登録する手順と、
  作業者によるプログラム作成指示に応じて、指定された起点となるデータ項目の設計情報に関連するデータ項目に対する設計情報を前記解析結果から抽出する手順と、
  既存プログラムに定義され、前記既存プログラムで実行されている処理順序を示す処理ブロックの呼出し元／呼出し先の関係を前記解析結果から抽出する手順と、
  前記抽出したデータ項目に対する設計情報と前記抽出した処理ブロックの呼出し元／呼出し先の関係に基づきプログラム内の処理ブロックの構成を生成する手順と、
  前記抽出したデータ項目に対する設計情報に基づき前記プログラム内の処理ブロック内に展開される設計情報を生成する手順をコンピュータに実行させるためのプログラム。」（以下、この特許請求の範囲に記載された請求項を「補正後の請求項」という。）
　に補正するものである。
　 
２．補正の適否
２−１．新規事項の有無、補正の目的要件 
　本件補正は、願書に最初に添付した明細書、特許請求の範囲又は図面に記載した事項の範囲内においてなされており、特許法第１７条の２第３項の規定に適合する。
　そして、補正前の請求項１〜３についてそれぞれなされた補正は、平成１８年法律第５５号改正附則第３条第１項によりなお従前の例とされる同法による改正前の特許法第１７条の２第４項第２号の特許請求の範囲の減縮（請求項に記載した発明を特定するために必要な事項を限定するものであって、その補正前の当該請求項に記載された発明とその補正後の請求項に記載された発明の産業上の利用分野及び解決しようとする課題が同一であるもの）を目的とするものである。 
　
２−２．独立特許要件  
　補正前の請求項１についてなされた補正は、特許法１７条の２第４項第２号の特許請求の範囲の減縮を目的とすることから、補正前の請求項１についてする補正、すなわち補正後の請求項１（以下「補正後の発明」という。）が、特許出願の際独立して特許を受けることができるものであるか、（平成１８年法律第５５号改正附則第３条第１項によりなお従前の例によるとされる同法による改正前の特許法第１７条の２第５項において準用する同法第１２６条第５項の規定に適合するか）以下に検討する。 
　
（１）補正後の発明
　前記補正前の請求項１についてする補正により、補正後の発明は、前記「１．補正の内容」の「補正後の請求項１」に記載された以下のものと認められる。
　
　「既存プログラムを解析し、該解析結果を基に新プログラムを生成する既存プログラムを再利用するプログラム生成方法において、
  既存プログラムを解析し、
  該解析結果を表示し、
  該表示された解析結果の中から作業者による既存プログラム中の少なくとも１つ以上の起点となるデータ項目の指定に応じて該起点となるデータ項目を登録し、
  作業者によるプログラム作成指示に応じて、指定された起点となるデータ項目の設計情報に関連するデータ項目に対する設計情報を前記解析結果から抽出し、
  既存プログラムに定義され、前記既存プログラムで実行されている処理順序を示す処理ブロックの呼出し元／呼出し先の関係を前記解析結果から抽出し、
  前記抽出したデータ項目に対する設計情報と前記抽出した処理ブロックの呼出し元／呼出し先の関係に基づきプログラム内の処理ブロックの構成を生成し、
  前記抽出したデータ項目に対する設計情報に基づき前記プログラム内の処理ブロック内に展開される設計情報を生成することにより前記既存プログラムで実行されている処理順序を保ったプログラムを生成することを特徴とする既存プログラムを再利用するプログラム生成方法。」
　
（２）引用文献 
　原査定の拒絶の理由に引用された特開平１１−３２７８８４号公報（以下、「引用文献」という。）には、図面とともに次の事項が記載されている。
　 
（ア）「【０００６】
【課題を解決するための手段】本発明は、記憶媒体上に格納されたプログラムであり、このプログラムは、（ａ）既存システムを構成するプログラム、データベース定義情報、画面定義情報等を
解析して既存システムで使用されているデータ項目及びこのデータ項目を生成するロジックを抽出
プログラムを再構成
【００１０】図１は、本実施形態の既存システム処理情報を解析して再構成するシステムの構成図である。計算機の処理装置１に接続される記憶装置には、既存システム情報２、解析情報３及び再構成システム情報６が格納される。既存システム情報２は既存のソースプログラム、ＪＣＬ（ジョブ制御言語）、データベース定義、画面定義及びデータコミュニケーション定義を含む。解析情報３は既存システム情報２を解析した結果であり、プログラム、ジョブ、データベース、画面定義及びデータコミュニケーションに関する解析情報であるが、
特にプログラム中に出現するデータ項目とデータ項目を生成するロジックを中心にして整理されている
　
（イ）「【００１４】図３は、表示装置４に表示される処理フロー情報の例であり、旅費精算システムの処理フロー例を示す。バッチ処理であればジョブやプログラムの処理順はＪＣＬ解析情報から得られる。またオンライン処理であればデータコミュニケーション解析情報から処理順が得られ、
ソースプログラムと突き合わせて処理名と処理順が決定
【００１５】図４は、抽出されたデータ項目情報及びデータ項目生成ロジックの例であり、表示形式で表現している。
データ項目及びデータ項目生成ロジックは、ソースプログラムの解析情報から得られる
データ項目名はプログラム中に定義されたデータ項目の名称、レコード名はこのデータ項目が属するレコードの名称
データ項目を生成するために参照される他のデータ項目の名称
　
（ウ）「【００１７】図５は、
表示装置４に表示されるデータフローの例を示す図
【００１８】次に入力装置５を介して新システムで
出力データとして活用したいデータ項目が選択される
　
（エ）「【００１９】図６は、対象とする出力データ項目および関連するデータ項目の表示の例である。この例では精算結果レコードの近地手当、遠地手当、早出手当、遅着手当及び手当合計の各データ項目が選択された出力データ項目である。また
これらの出力データ項目を生成するための操作を追跡する
　
（オ）「【００２２】次にシステム解析・再構成部７は、選択された処理範囲内で選択された
入力実体、入力データ項目及び出力データ項目に関する処理だけを切り出してソースプログラムを再構成
データ項目のデータ属性と生成ロジックの情報が抽出されている
データ入力から始まって選択された出力データ項目の生成に至るまで参照又は生成されるデータ項目の生成順に生成ロジックを配列する
　・・・（中略）・・・
【００２４】図９は、既存のソースプログラムを再構成して作成されたソースプログラムの例を示す。この例ではソースプログラムはＣＯＢＯＬ言語で記述されており、図８で示される「早出手当」の生成ロジック及び「手当合計」の
生成ロジックの部分がＣＯＢＯＬのステートメントで表現
　
　上記（ア）の段落【０００６】における記載「（ａ）既存システムを構成するプログラム、データベース定義情報、画面定義情報等を解析して既存システムで使用されているデータ項目及びこのデータ項目を生成するロジックを抽出し、・・・（中略）・・・データ項目から別のデータ項目が順次生成される様子を示すデータフローを表示装置上に表示し、・・・（中略）・・・選択された入力データ項目へのデータ入力に始まりデータ項目の生成順序に従って選択された出力データ項目を生成するに至るまでの処理のプログラムを再構成し、」、段落【００１０】における記載「解析情報３は既存システム情報２を解析した結果であり、・・・（中略）・・・特にプログラム中に出現するデータ項目とデータ項目を生成するロジックを中心にして整理されている。」、及び（オ）の段落【００２４】における記載からすると、引用文献には、既存プログラムを解析し、該解析結果を基に新プログラムを生成する既存プログラムを再利用するプログラム生成方法に関する発明が記載されていると解される。
　
　（ウ）の段落【００１７】における記載「図５は、表示装置４に表示されるデータフローの例を示す図である。」、（ウ）の段落【００１８】における記載「入力装置５を介して新システムで出力データとして活用したいデータ項目が選択されると、」、及び（オ）の段落【００２２】における記載「次にシステム解析・再構成部７は、選択された処理範囲内で選択された入力実体、入力データ項目及び出力データ項目に関する処理だけを切り出してソースプログラムを再構成して再構成システム情報６のファイルに格納する」からすると、前記プログラム生成方法において、既存プログラムを解析し、該解析結果を表示し、該表示された解析結果の中からユーザによる既存プログラム中の少なくとも１つ以上の活用したいデータ項目の指定に応じて該データ項目を選択することで、システム解析・再構成部に、前記データ項目に基づいて、既存プログラムから新プログラムを生成するように設定すると解される。
　
　（エ）の段落【００１９】における記載「この例では精算結果レコードの近地手当、遠地手当、早出手当、遅着手当及び手当合計の各データ項目が選択された出力データ項目である。またこれらの出力データ項目を生成するための操作を追跡すると国内旅費レコードの近地手当、遠地手当、早出手当、遅着手当及び手当合計の各データ項目が参照元であることがわかって強調表示され、これらのデータ項目を生成するための操作を追跡すると社員情報レコードの社員Ｎｏと職級、旅費登録レコードの出張年月日、出発時間、帰着時間と地域コード、登録者レコードの社員Ｎｏ及びＲＵＬＥレコードのＲＵＬＥ−職級、ＲＵＬＥ−近手当、ＲＵＬＥ−遠手当、ＲＵＬＥ−早手当とＲＵＬＥ−遅手当が参照元であることがわかり強調表示される。」及び（オ）の段落【００２２】における記載「選択された処理範囲で参照又は生成されるデータ項目については図４に示されるようなデータ項目のデータ属性と生成ロジックの情報が抽出されている・・・（後略）」、からすると、前記プログラム生成方法において、ユーザによる、新プログラムで活用したいデータ項目の指示に応じて、前記データ項目の生成ロジックに必要となるデータ項目に関するデータ属性情報と生成ロジック情報を前記解析結果から抽出すると解される。
　（イ）の段落【００１４】における記載からすると、前記プログラム生成方法において、既存プログラム解析情報から、前記生成ロジック情報の処理順序を抽出すると解される。
　（オ）の段落【００２２】における記載「選択された処理範囲で参照又は生成されるデータ項目については図４に示されるようなデータ項目のデータ属性と生成ロジックの情報が抽出されているので、選択された入力データ項目へのデータ入力から始まって選択された出力データ項目の生成に至るまで参照又は生成されるデータ項目の生成順に生成ロジックを配列すると新しいソースプログラムを構成することができる。」及び（オ）の段落【００２４】における記載「「早出手当」の生成ロジック及び「手当合計」の生成ロジックの部分がＣＯＢＯＬのステートメントで表現されている。」からすると、前記プログラム生成方法は、前記抽出したデータ項目に関するデータ属性情報と生成ロジック情報と前記処理順序に基づき、新プログラム内の生成ロジック情報の配列順序を生成するものであって、前記抽出したデータ項目に関するデータ属性情報と生成ロジック情報に基づき、前記処理順序に基づいて配列されるプログラムステートメントを生成することにより前記既存プログラムで実行されているデータ項目の生成順序すなわち、処理順序を保ったプログラムを生成すると解される。
　
　したがって、引用文献には、次の発明（以下、「引用発明」という。）が記載されていると認められる。 
　 
　既存プログラムを解析し、該解析結果を基に新プログラムを生成する既存プログラムを再利用するプログラム生成方法において、
  既存プログラムを解析し、
  該解析結果を表示し、
  該表示された解析結果の中からユーザによる既存プログラム中の少なくとも１つ以上の活用したいデータ項目の指定に応じて該データ項目を選択することで、システム解析・再構成部に、前記データ項目に基づいて、既存プログラムから新プログラムを生成するように設定し、
  ユーザによる、新プログラムで活用したいデータ項目の指示に応じて、指定された活用したいデータ項目の生成ロジックに必要となるデータ項目に関するデータ属性情報と生成ロジック情報を前記解析結果から抽出し、
  既存プログラム解析情報から、前記生成ロジック情報の処理順序を抽出し、
  前記抽出したデータ項目に関するデータ属性情報と生成ロジック情報と前記処理順序に基づき、新プログラム内の生成ロジック情報の配列順序を生成し、
  前記抽出したデータ項目に関するデータ属性情報と生成ロジック情報に基づき、前記処理順序に基づいて配列されるプログラムステートメントを生成することにより前記既存プログラムで実行されている処理順序を保ったプログラムを生成することを特徴とする既存プログラムを再利用するプログラム生成方法。
　 
（３）対比 
　ここで、補正後の発明と引用発明とを比較する。 
　引用発明の「ユーザ」、「活用したいデータ項目」、「該データ項目を選択することで、システム解析・再構成部に、前記データ項目に基づいて、既存プログラムから新プログラムを生成するように設定」、及び「活用したいデータ項目の生成ロジックに必要となるデータ項目に関するデータ属性情報と生成ロジック情報」は、それぞれ、補正後の発明の「作業者」、「起点となるデータ項目」、「該起点となるデータ項目を登録」及び「指定された起点となるデータ項目の設計情報に関連するデータ項目に対する設計情報」に相当する。
　引用発明の「新プログラムで活用したいデータ項目の指示」は、該指示によって新プログラムを再構成することから、引用発明の「新プログラムで活用したいデータ項目の指示」は、補正後の発明の「プログラム作成指示」に相当する。
　
　そして、引用発明の「既存プログラム解析情報から、前記生成ロジック情報の処理順序を抽出」することと、補正後の発明の「既存プログラムに定義され、前記既存プログラムで実行されている処理順序を示す処理ブロックの呼出し元／呼出し先の関係を前記解析結果から抽出」することとは、ともに、設計情報の処理順序を表す情報を解析結果から抽出する点で一致する。
　引用発明の「抽出したデータ項目に関するデータ属性情報と生成ロジック情報と前記処理順序に基づき、新プログラム内の生成ロジック情報の配列順序を生成」することと、補正後の発明の「抽出したデータ項目に対する設計情報と前記抽出した処理ブロックの呼出し元／呼出し先の関係に基づきプログラム内の処理ブロックの構成を生成」することとは、ともに、抽出したデータ項目に対する設計情報と前記抽出した処理順序に基づき新しいプログラム内の設計情報の配列順序を生成する点で一致する。
　引用発明の「前記処理順序に基づいて配列されるプログラムステートメントを生成することにより前記既存プログラムで実行されている処理順序を保ったプログラムを生成する」ことと、補正後の発明の「前記プログラム内の処理ブロック内に展開される設計情報を生成することにより前記既存ソースプログラムで実行されている処理順序を保ったプログラムを生成する」こととは、ともに、前記処理順序に基づいて展開される設計情報を生成することにより前記既存プログラムで実行されている処理順序を保ったプログラムを生成する点で一致する。
　
　よって、補正後の発明と引用発明とは、以下の点で一致し、また、相違している。 
　 
（一致点） 
　既存プログラムを解析し、該解析結果を基に新プログラムを生成する既存プログラムを再利用するプログラム生成方法において、
  既存プログラムを解析し、
  該解析結果を表示し、
  該表示された解析結果の中から作業者による既存プログラム中の少なくとも１つ以上の起点となるデータ項目の指定に応じて該起点となるデータ項目を登録し、
  作業者によるプログラム作成指示に応じて、指定された起点となるデータ項目の設計情報に関連するデータ項目に対する設計情報を前記解析結果から抽出し、
  前記設計情報の処理順序を表す情報を解析結果から抽出し、
  前記抽出したデータ項目に対する設計情報と前記抽出した処理順序に基づき新しいプログラム内の設計情報の配列順序を生成し、
  前記抽出したデータ項目に対する設計情報に基づき前記処理順序に基づいて展開される設計情報を生成することにより前記既存ソースプログラムで実行されている処理順序を保ったプログラムを生成することを特徴とする既存プログラムを再利用するプログラム生成方法。
　
（相違点１）
　補正後の発明は、「既存プログラムに定義され、前記既存プログラムで実行されている処理順序を示す処理ブロックの呼出し元／呼出し先の関係を前記解析結果から抽出」するのに対して、引用発明は、既存プログラム解析情報から、前記生成ロジック情報の処理順序を抽出する点。
　
（相違点２）
　補正後の発明は、「抽出したデータ項目に対する設計情報と前記抽出した処理ブロックの呼出し元／呼出し先の関係に基づきプログラム内の処理ブロックの構成を生成」するのに対して、引用発明は、抽出したデータ項目に関するデータ属性情報と生成ロジック情報とデータ項目の生成順に基づき、新プログラム内の生成ロジックの配列順序を生成する点。
　
（相違点３）
　補正後の発明は、「プログラム内の処理ブロック内に展開される設計情報を生成することにより前記既存ソースプログラムで実行されている処理順序を保ったプログラムを生成する」のに対して、引用発明は、前記処理順序に基づいて配列されるプログラムステートメントを生成することにより前記既存プログラムで実行されている処理順序を保ったプログラムを生成する点。
　
（４）判断 
　相違点１〜相違点３について検討する。
　ソースプログラムを記述するに際して、データの生成順序を手続ブロック単位にまとめ、当該手続ブロックの処理順序がデータ項目の生成順序に対応するように構成すること、及び前記手続ブロックの処理順序として、呼出し元の手続ブロックが呼出し先の手続ブロックを呼び出すことで、前記処理順序が特定されるように構成することは、当業者にとって常識的・基礎的事項（以下、「常識的・基礎的技術事項」と言う。）である。（例えば、特開平６−３４８４９８号公報の段落【０００４】における記載「通常のコンピュータはサブルーチンを実行して呼び出し元に復帰するための制御機構を既に持っている。この制御機構は、複数の呼び出し元ルーチンから呼び出されるサブルーチンに関する「呼び出しおよび呼び出し元への復帰」の実行の流れを制御するものであり、「部品化ソフトウエアの実行装置」の主な要素である。なお、ＣＯＢＯＬ言語のＰＥＲＦＯＲＭ文によるセクションの実行と同等なソフトウェア部品の実行はサブルーチンの実行の一種だとみなすことができる。」、及び特開平９−１６０７６５号公報の段落【０００６】における記載「サービスは、複数の機能で構成し、これらの各機能を実現するため、既存ソフトウェア資産では、データの生成順序を機能単位にまとめ、手続きブロックとしてプログラム言語により明示して記述している。」等参照。）
　
　そして、既存プログラムの所定の機能を再利用するプログラムを生成する方法であって、前記既存プログラム内の所定の機能を実行する際の主ルーチン（すなわち、主手続ブロック）と前記主手続ブロックから呼ばれるサブルーチン（すなわち、手続ブロック）との関係を判別（すなわち、抽出）して、前記手続ブロックの呼出し元／呼出し先の関係に基づき、前記作成するプログラム内の手続ブロックの構成を生成し、該主手続ブロック内にソースプログラム行を配列することで、既存プログラムの所定の機能を再利用するプログラムを生成する方法は、当業者にとって周知の技術（以下、「周知技術」と言う。）である。（例えば、特開昭６３−３０９３６号公報における記載「ソースプログラムから一つの部品を抽出する際に、まずその部品の主ルーチンとなる部分をソースプログラムの手続き部上で指定し、その主ルーチンから呼ばれる全ての手続き部とその手続き部分で使われる変数を定義しているソースプログラム行とを機械的に判断した後、それらの行を抽出して部品を作成していた。」（１頁右下欄１１行目〜１８行目。）及び特開平９−１６０７６５号公報の段落【００１１】における記載「既存のプログラムの解析に基づき（ステップ１）、既存プログラムに含まれるデータ項目とこのデータ項目を生成する手続きとを抽出し、新規ソフトウェアに再利用するデータ部品を作成する」、段落【００７５】における記載「既存プログラムの作成者がまとまった単位として分類した手続きブロックを抽出の１単位とすることで、データの生成順序を抽出することができ、ソフトウェア部品群内で矛盾無く動作できるようソースコードを変更することができ、・・・（後略）」等参照。）
　
　してみると、前記引用発明における既存プログラムに前記常識的・基礎的技術事項及び前記周知技術を適用することで、引用発明のプログラム生成方法として、既存プログラムに定義され、前記既存プログラムで実行されている、呼出し元の手続ブロックが呼出し先の手続ブロックを呼び出す処理順序（「処理順序を示す手続ブロックの呼出し元／呼出し先の関係」に相当）を既存プログラムの解析結果から抽出し、前記抽出した手続ブロックの処理順序（「呼出し元／呼出し先の関係」に相当）に基づき新プログラム内の手続ブロックの構成を生成し、前記手続ブロック内に配列されるプログラムステートメントを生成することにより前記既存プログラムで実行されている処理順序を保ったプログラムを生成するように構成することは、当業者であれば、容易に想到し得たことである。
　よって、上記相違点１〜相違点３は格別のものではない。
　
　そして、補正後の発明の構成によってもたらされる効果も、当業者であれば当然に予測可能なものに過ぎず格別なものとは認められない。
　
　したがって、補正後の発明は上記引用発明、常識的・基礎的技術事項、及び周知技術に基づいて容易に発明できたものであるから、特許法第２９条第２項の規定により、特許出願の際独立して特許を受けることができないものである。
　
３．むすび 
　以上のとおり、補正後の発明は、特許出願の際独立して特許を受けることができるものではないから、平成１８年法律第５５号改正附則第３条第１項によりなお従前の例によるとされる同法による改正前の特許法第１７条の２第５項の規定により準用する特許法第１２６条第５項の規定に適合していないから、前記補正前の請求項１３についてする補正を含む本件補正は、特許法第１５９条第１項において読み替えて準用する同法第５３条第１項の規定により却下すべきものである。
　
　したがって、前記補正前の請求項１についてする補正（補正後の請求項１）を含む本件補正は、特許法第１５９条第１項において読み替えて準用する同法第５３条第１項の規定により却下すべきものである。 
　 
第３．本願発明について 
　平成１９年３月１６日付けの手続補正は上記のとおり却下されたので、本願の請求項１に係る発明（以下、同項記載の発明を「本願発明」という。）は、平成１６年１月２７日付け手続補正書の特許請求の範囲の請求項１に記載された事項により特定される、以下のとおりのものである。 
　 
　「既存プログラムを解析し、該解析結果を基に新プログラムを生成する既存プログラムを再利用するプログラム生成方法において、
  既存プログラムを解析し、
  該解析結果を表示し、
  該表示された解析結果の中から作業者による既存プログラム中の少なくとも１つ以上の起点となるデータ項目の指定に応じて該起点となるデータ項目を登録し、
  作業者によるプログラム作成指示に応じて、指定された起点となるデータ項目の設計情報に関連するデータ項目に対する設計情報を前記解析結果から抽出し、
  既存プログラムに定義されている処理ブロックの呼出し元／呼出し先の関係を前記解析結果から抽出し、
  前記抽出したデータ項目に対する設計情報と前記抽出した処理ブロックの呼出し元／呼出し先の関係に基づきプログラム内の処理ブロックの構成を生成し、
  前記抽出したデータ項目に対する設計情報に基づき前記プログラム内の処理ブロック内に展開される設計情報を生成することによりプログラムを生成することを特徴とする既存プログラムを再利用するプログラム生成方法。」
　
（１）引用文献 
　原査定の拒絶の理由に引用された、引用文献およびその記載事項は、前記「第２．平成１９年３月１６日付けの手続補正についての補正却下の決定」の「２．補正の適否」の「２−２．独立特許要件」の「（２）引用文献」に記載したとおりである。
　
（２）対比・判断 
　本願発明は、前記「第２．平成１９年３月１６日付けの手続補正についての補正却下の決定」の「２．補正の適否」の「２−２．独立特許要件」の「（１）補正後の発明」に記載された補正後の発明の発明特定事項「前記既存プログラムで実行されている処理順序を示す処理ブロックの呼出し元／呼出し先」から「前記既存プログラムで実行されている処理順序を示す」を省くとともに、補正後の発明の発明特定事項「前記既存プログラムで実行されている処理順序を保ったプログラム」から「前記既存プログラムで実行されている処理順序を保った」を省いたものである。
　そうすると、本願発明の構成要件を全て含み、さらに特定の構成要件に限定要件を付加したものに相当する補正後の発明が、前記「第２．平成１９年３月１６日付けの手続補正についての補正却下の決定」の「２．補正の適否」の「２−２．独立特許要件」の「（４）判断」に記載したとおり、引用発明、常識的・基礎的技術事項、及び周知技術に基づいて、当業者が容易に発明をすることができたものであるから、本願発明も、同様の理由により、引用発明、常識的・基礎的技術事項、及び周知技術に基づいて、当業者が容易に発明をすることができたものである。 
　 
（３）むすび 
　以上のとおり、本願の請求項１に係る発明は、その出願前日本国内又は外国において頒布された刊行物に記載された発明に基いて、その出願前にその発明の属する技術の分野における通常の知識を有する者が容易に発明をすることができたものであるから、特許法第２９条第２項の規定により特許を受けることができない。
　よって、結論のとおり審決する。