【事件の表示】
　特願２０１４−５４４８７３「プログラムフロー制御監視ルーチン、関連する方法およびシステム」拒絶査定不服審判事件〔平成２５年６月６日国際公開、ＷＯ２０１３／０８２２５６、平成２７年３月１９日国内公表、特表２０１５−５０８５１７、請求項の数（１８）〕について、次のとおり審決する。
【結　論】
　原査定を取り消す。
　本願の発明は、特許すべきものとする。
【理　由】
第１　手続の経緯
　本願は、２０１２年（平成２４年）１１月２９日（パリ条約による優先権主張外国庁受理２０１１年１２月２日（ＩＮ）インド）を国際出願日とする出願であって、平成２８年７月２８日付けで拒絶理由通知がされ、平成２８年１０月２４日に手続補正がされ、平成２９年３月２９日付けで最後の拒絶理由通知がされ、平成２９年７月４日に手続補正がされ、平成２９年１２月７日付けで平成２９年７月４日の手続補正が却下されるとともに拒絶査定（以下「原査定」という）がされ、これに対し、平成３０年３月８日に拒絶査定不服審判の請求がされると同時に手続補正がされたものである。
第２　平成２９年１２月７日付けの補正の却下の決定及び原査定の概要
１．平成２９年１２月７日付けの補正の却下の決定の概要は次のとおりである。
　平成２９年７月４日付けの補正は、特許請求の範囲の限定的減縮を目的とするものであるが、当該補正後の本願請求項１−２０に係る発明は、引用文献１−３に基づいて、その発明の属する技術の分野における通常の知識を有する者（以下「当業者」という）が容易に発明できたものであり、独立特許要件を満たさないから、平成２９年７月４日付けの補正は却下すべきものである。
　　引用文献等一覧
　１．特開２００６−２８５７３４号公報
　２．特開２００１−１４０２７号公報
　３．特開平５−１２０６５号公報
２．原査定の概要は次のとおりである。
　本願請求項１−２０に係る発明は、上記引用文献１−３に基づいて、当業者が容易に発明をすることができたものであるから、特許法第２９条第２項の規定により特許を受けることができない。
第３　審判請求時の補正について
　審判請求時の補正は、特許法第１７条の２第３項から第６項までの要件に違反しているものとはいえない。
　審判請求時の補正によって、請求項１、７、１３の「プログラムフロー制御監視ルーチン」について、「前記モジュールに組み込まれ」ると共に「監視のために登録するモジュールの数に比例して拡張可能であり、これに対応してメモリ配分が増減され」るという事項を追加する補正は、特許請求の範囲の減縮を目的とするものであって、当初明細書の段落【００１０】及び【００２５】に記載されているから、当該補正は新規事項を追加するものではない。
　また、補正前の請求項７及び１４が削除されたことに対応させて、補正前の請求項８〜１３、１５〜２０を繰り上げて、補正後の請求項７〜１２、１３〜１８にするとともに引用請求項を対応させた補正も、特許請求の範囲の減縮を目的とするものであって、新規事項を追加するものではない。
　そして、「第４　本願発明」から「第６　対比・判断」までに示すように、補正後の請求項１−１８に係る発明は、独立特許要件を満たすものである。
第４　本願発明
　本願請求項１−１８に係る発明（以下それぞれ「本願発明１」−「本願発明１８」という）は、平成３０年３月８日の手続補正で補正された特許請求の範囲の請求項１−１８に記載された事項により特定される発明であり、そのうち本願発明１、７、１３は以下のとおりの発明である。
「【請求項１】
　過程工場監視および／または制御装置であって、
　少なくとも１つの入力を受け取って少なくとも１つの出力を生成するように構成された制御器と、
　少なくとも１つのモジュールを記憶するためのコンピュータ可読媒体であって、前記制御器が、過程内の監視および／または制御機能性を達成するために前記モジュールを実行するようにさらに構成される、コンピュータ可読媒体と、
　前記コンピュータ可読媒体に記憶されたモジュール登録ルーチンであって、実行されると、システム実時間に動的に、ユーザ入力に従って、監視のためにモジュールを登録および登録抹消する、モジュール登録ルーチンと、
　前記コンピュータ可読媒体上に記憶されたプログラムフロー制御監視ルーチンであって、前記プログラムフロー制御監視ルーチンは、実行されると、前記モジュールに関連する任意のエラーを検出して、任意のエラーが検出されたときのタイムスタンプ表示を提供し、前記プログラムフロー制御監視ルーチンは、前記モジュールに組み込まれ、前記プログラムフロー制御監視ルーチンは、監視のために登録するモジュールの数に比例して拡張可能であり、これに対応してメモリ配分が増減され、前記プログラムフロー制御監視ルーチンが、モジュールエラーが検出されると実行されて、工場固有の警告および／または処置を開始するインターフェースルーチンを含む、プログラムフロー制御監視ルーチンと、を備える、過程工場監視および／または制御装置。
　【請求項７】
　過程工場の監視および／または制御に関連付けられるモジュール内でエラーを検出する方法であって、
　少なくとも１つの入力を受け取って少なくとも１つの出力を生成するように構成された制御器を提供することと、
　コンピュータ可読媒体を提供することと、
　前記コンピュータ可読媒体上に、少なくとも１つのモジュール、モジュール登録ルーチン、および少なくとも１つのプログラムフロー制御監視ルーチンを記憶し、前記プログラムフロー制御監視ルーチンは、前記モジュールに組み込まれることと、
　前記少なくとも１つのモジュールのプログラムフロー制御を監視するユーザの要望を示すユーザ入力に従って、監視のために、少なくとも１つのモジュールを動的に登録する前記モジュール登録ルーチンを実行し、前記プログラムフロー制御監視ルーチンが、監視のために登録するモジュールの数に比例して拡張可能であり、これに対応してメモリ配分が増減されることと、
　過程内の監視および／または制御機能性を達成するために前記モジュールを実行することと、
　前記少なくとも１つの登録されたモジュールの実行に関連する任意のエラーを検出するために前記プログラムフロー制御監視ルーチンを実行することと、
　モジュールエラーが検出されたときのタイムスタンプ表示を提供することと、
　任意のモジュールエラーが検出されたときにインターフェースルーチンを実行して、工場固有の警告および／または処置を開始することと、を含む、方法。
　【請求項１３】
　過程工場の監視および／または制御において使用するためのコンピュータ可読媒体であって、
　前記コンピュータ可読媒体上に記憶された過程の監視および／または制御に関連付けられた複数のモジュールと、
　前記コンピュータ可読媒体に記憶されたモジュール登録ルーチンであって、実行されると、ユーザ入力に従って、少なくとも１つのモジュールを監視から登録抹消する、モジュール登録ルーチンと、
　前記コンピュータ可読媒体上に記憶された少なくとも１つのプログラムフロー制御監視ルーチンであって、実行されると、監視されるために登録された少なくとも１つのモジュールに関連する任意のエラーを検出し、前記エラーが検出されたときのタイムスタンプ表示を提供し、前記プログラムフロー制御監視ルーチンは、前記複数のモジュールの１つに組み込まれ、前記プログラムフロー制御監視ルーチンは、監視のために登録するモジュールの数に比例して拡張可能であり、これに対応してメモリ配分が増減される、プログラムフロー制御監視ルーチンと、
　任意のモジュールエラーが検出されたときに実行されて、工場固有の警告および／または処置を開始する、少なくとも１つのインターフェースルーチンと、を備える、コンピュータ可読媒体。」
　本願発明２−６は、概略、本願発明１を、本願発明８−１２は、概略、本願発明７を、本願発明１４−１８は、概略、本願発明１３を、それぞれ減縮した発明である。
第５　引用文献、引用発明等
１．引用文献１について
　原査定の拒絶の理由に引用された上記引用文献１には、図面とともに次の事項が記載されている。（下線は理解の便のため当審で付与）
（１）「【０００１】
　本発明は、
プラントに配置されたフィールド機器を管理・制御するプラント制御システム
（２）「【０００３】
　図８は、従来の診断機能を有する制御装置の一例を示す構成図である。図において、
１はフィールド機器からのプロセスデータを取り込み、制御バルブなどの操作端を駆動する制御信号を出力する制御装置
（３）「【００２７】
　図１は、本発明の制御装置の診断方法の一実施例を示す構成図である。図において、前記図８と同様のものは同一符号を付して示す。
３０は制御装置１内で実行される制御タスクであり、この制御タスク３０は、診断処理３１、ＩＮＰＵＴ処理３２、ＬＯＧＩＣ処理３３、ＯＵＴＰＵＴ処理３４、ＷＤＴ処理３５から構成され、これらの処理を順次実行する
　また、制御タスク３０は、各処理の実行順および各処理内における処理単位の実行順を監視する実行順監視機能３６を有している。」
（４）「【００２９】
　図３は、診断処理３１の一例を示すもので、フィールド機器の故障診断やメモリのチェックなど、一連の診断処理１〜診断処理Ｎを決められた順序で実行する。
　ここで、各診断処理１〜診断処理Ｎの終了時には、実行順のチェックが行われ、
実行順の異常が検出された場合には、異常終了として、警報の通知やシステムのシャットダウンなど、必要な措置が取られる
【００３０】
　図４は、実行順のチェック動作を説明するフロー図である。なお、診断処理１〜診断処理Ｎなどの処理単位における実行順情報は、図５の如き実行順テーブルとして記憶されている。
　このテーブルにおいて、Ｉｎｄｅｘは処理単位の処理順、Ｃｕｒｒｅｎｔは現在地点を０以外の整数で指定したもので、最初の地点ならばＳＴＡＲＴを指定する。Ｎｅｘｔは次に呼び出す地点を０以外の整数で指定したもので、最初の地点ならばＳＴＡＲＴを指定する。
【００３１】
　図４に戻って、実行順チェックの開始時には、実行順テーブルのＩｎｄｅｘポインタを初期化し、処理１（診断処理１）の実行順をテーブルと比較する。実行順テーブルのＩｎｄｅｘが指す所に処理１の情報があるか、情報があれば処理１のＣｕｒｒｅｎｔおよびＮｅｘｔが実行順テーブルの各々と一致しているかを調べる。なお、ＣｕｒｒｅｎｔまたはＮｅｘｔが０ならば、情報未登録である。
【００３２】
　比較結果が正常であれば、処理単位（診断処理１〜診断処理Ｎ）の実行終了に合わせて、順次Ｉｎｄｅｘポインタを更新し、同様な比較動作を繰り返す。
　最後の処理Ｎまで比較を行い、異常が検出されなければ、診断処理３１が実行順を含めて正常に終了したことになる。
【００３３】
　したがって、
診断処理３１を処理単位（診断処理１〜診断処理Ｎ）の実行順を含めて監視する
【００３４】
　図２に戻って、診断処理３１が終了すると、この診断処理３１に対する実行順のチェックが行われ、処理がＩＮＰＵＴ処理３２へ移される。
　このとき使用される
実行順情報は、前記図５の如き、実行順テーブルの形式で記憶したものでも良いし、制御タスク３０中に持っている順序情報を利用しても良い
　したがって、上記引用文献１には次の発明（以下「引用発明」という）が記載されていると認められる。
「プラント制御システムの制御装置１であって、
　フィールド機器からのプロセスデータを取り込み、制御バルブなどの操作端を駆動する制御信号を出力する制御装置１と、
　当該制御装置１が、診断処理３１、ＩＮＰＵＴ処理３２、ＬＯＧＩＣ処理３３、ＯＵＴＰＵＴ処理３４、ＷＤＴ処理３５から構成される制御タスク３０を実行し、
　制御タスク３０の中に持たせた実行順監視機能３６が、決められた順序で実行する一連の診断処理１〜診断処理Ｎの実行順をチェックし、実行順の異常が検出された場合には、異常終了として、警報の通知やシステムのシャットダウンなど、必要な措置をするプラント制御システムの制御装置１。」
２．引用文献２について
　原査定の拒絶の理由に引用された上記引用文献２の段落【００６０】及び【００６１】の記載並びに図１６の記載からみて、当該引用文献２には、
「プラントの制御コントローラにおいて、故障が発生するとエラーコードの内容とエラー発生時刻をバックアップメモリ３８にセーブし、トレースバックを可能にする」という技術的事項が記載されていると認められる。
３．引用文献３について
　原査定の拒絶の理由に引用された上記引用文献３の段落【００１４】−【００４３】の記載及び図１−３の記載からみて、当該引用文献３には、
「プログラム実行状況監視装置のプログラム実行監視部３００において、
当該プログラム実行監視部３００が、監視対象プログラムモジュール名登録簿３１０及び監視対象プログラムモジュール名登録簿管理部３２０を備え、前記監視対象プログラムモジュール名登録簿管理部３２０が、前記監視対象プログラムモジュール名登録簿３１０に対して、監視対象のプログラムモジュール名を登録したり、削除したりすることで、ユーザが監視対象プログログラムを動的に切替る」という技術的事項が記載されていると認められる。
４．その他の文献について
　新たに引用する特開２００９−９８９１０号公報の段落【０００３】−【０００５】及び図６には、次の事項が記載されている。
（１）プログラムの実行時に、必要とするメモリ領域を動的に拡張して確保し、また、不要となった場合にはメモリ領域を解放する事項は、周知技術である点。
（２）プログラミング言語であるＣ＋＋には、メモリ領域を、プログラム実行時に確保あるいは解放するための関数が用意されており、これらの関数を用いてメモリ領域を効率よく利用することは、周知技術である点。
第６　対比・判断
１．本願発明１について
（１）対比
　本願発明１と引用発明とを対比すると、次のことがいえる。
　引用発明における「プラント制御システムの制御装置１」は、本願発明１における「過程工場監視および／または制御装置」に相当する。
　引用発明の「フィールド機器からのプロセスデータを取り込み、制御バルブなどの操作端を駆動する制御信号を出力する制御装置１」は、「フィールド機器からのプロセスデータ」が「１つの入力」であり、「制御バルブなどの操作端を駆動する制御信号」が「１つの出力」であるから、本願発明１の「少なくとも１つの入力を受け取って少なくとも１つの出力を生成するように構成された制御器」に相当する。
　引用発明の「当該制御装置１が、診断処理３１、ＩＮＰＵＴ処理３２、ＬＯＧＩＣ処理３３、ＯＵＴＰＵＴ処理３４、ＷＤＴ処理３５から構成される制御タスク３０を実行」する事項について検討すると、「制御タスク３０」は本願発明１の「モジュール」に相当するから、引用発明は、本願発明１の「少なくとも１つのモジュールを記憶するためのコンピュータ可読媒体」を備えているといえる。また、引用発明の「診断処理３１、ＩＮＰＵＴ処理３２、ＬＯＧＩＣ処理３３、ＯＵＴＰＵＴ処理３４、ＷＤＴ処理３５から構成される制御タスク３０を実行」することは、本願発明１の「過程内の監視および／または制御機能性を達成するために前記モジュールを実行する」ことに相当するといえる。
　引用発明の「制御タスク３０の中に持たせた実行順監視機能３６」は、本願発明１の「前記コンピュータ可読媒体上に記憶されたプログラムフロー制御監視ルーチン」に相当し、また、引用発明の「実行順監視機能３６が、決められた順序で実行する一連の診断処理１〜診断処理Ｎの実行順をチェックし、実行順の異常が検出」という事項は、本願発明１の「前記プログラムフロー制御監視ルーチンは、実行されると、前記モジュールに関連する任意のエラーを検出」に相当する。
　引用発明の「実行順監視機能３６」が「実行順の異常が検出された場合には、異常終了として、警報の通知やシステムのシャットダウンなど、必要な措置をする」ことは、本願発明１の「前記プログラムフロー制御監視ルーチン」が「モジュールエラーが検出されると実行されて、工場固有の警告および／または処置を開始するインターフェースルーチンを含む」ことに相当する。
　したがって、本願発明１と引用発明との間には、次の一致点、相違点があるといえる。
＜一致点＞
「過程工場監視および／または制御装置であって、
　少なくとも１つの入力を受け取って少なくとも１つの出力を生成するように構成された制御器と、
　少なくとも１つのモジュールを記憶するためのコンピュータ可読媒体であって、前記制御器が、過程内の監視および／または制御機能性を達成するために前記モジュールを実行するようにさらに構成される、コンピュータ可読媒体と、
　前記コンピュータ可読媒体上に記憶されたプログラムフロー制御監視ルーチンであって、前記プログラムフロー制御監視ルーチンは、実行されると、前記モジュールに関連する任意のエラーを検出して、前記プログラムフロー制御監視ルーチンが、モジュールエラーが検出されると実行されて、工場固有の警告および／または処置を開始するインターフェースルーチンを含む、プログラムフロー制御監視ルーチンと、を備える、過程工場監視および／または制御装置。」
＜相違点１＞
　本願発明１は、「前記コンピュータ可読媒体に記憶されたモジュール登録ルーチンであって、実行されると、システム実時間に動的に、ユーザ入力に従って、監視のためにモジュールを登録および登録抹消する、モジュール登録ルーチン」を備えるのに対し、引用発明は、「モジュール登録ルーチン」を備えるものではない点。
＜相違点２＞
　プログラムフロー制御監視ルーチンについて、本願発明１では、「任意のエラーが検出されたときのタイムスタンプ表示を提供」するものであるのに対し、引用発明の実行順監視機能３６が、「エラーが検出されたときのタイムスタンプ表示を提供」するものであるかは不明である点。
＜相違点３＞
　プログラムフロー制御監視ルーチンについて、本願発明１では、「前記モジュールに組み込まれ」ると共に、「監視のために登録するモジュールの数に比例して拡張可能であり、これに対応してメモリ配分が増減され」るのに対し、引用発明の実行順監視機能３６は、「モジュールに組み込まれ」「監視のために登録するモジュールの数に比例して拡張可能であり、これに対応してメモリ配分が増減され」る構成については不明である点。
（２）相違点についての判断
　事案に鑑み、上記相違点３について検討する。
　相違点３に係る本願発明１の「プログラムフロー制御監視ルーチン」が「拡張可能であり、これに対応してメモリ配分が増減され」るという事項については、上記第５の「４．その他の文献について」にも示されているように、一般的なプログラムの実行時に、必要とするメモリ領域を動的に拡張して確保し、また、不要となった場合にはメモリ領域を解放することで、効率の良いメモリの利用を行う技術は、本願優先日前に周知であった。
　しかし、引用発明の「実行順監視機能３６」は、制御タスク３０内に診断処理３１として備わっているもので、診断対象となるモジュールに組み込まれるものではなく、当該モジュールの数に比例してメモリを拡張することもないから、メモリ配分の増減を行わせる周知技術を適用する動機付けがないものである。
　そして、例えば、プログラミング言語であるＣ＋＋に、メモリ領域をプログラム実行時に確保あるいは解放するための関数が用意されていたとしても、これらの関数を用いてメモリ領域を効率よく利用する技術を引用発明に適用しても、相違点３に係る本願発明１の「プログラムフロー制御監視ルーチン」が「前記モジュールに組み込まれ」、「監視のために登録するモジュールの数に比例して拡張可能であり、これに対応してメモリ配分が増減され」る構成とすることはできない。
　さらに、上記引用文献２及び３にも、相違点３に係る本願発明１の「プログラムフロー制御監視ルーチン」が「前記モジュールに組み込まれ」、「監視のために登録するモジュールの数に比例して拡張可能であり、これに対応してメモリ配分が増減され」る構成については、記載も示唆もされていない。
　したがって、上記相違点１及び２について判断するまでもなく、本願発明１は、当業者であっても、引用発明、引用文献２及び３に記載された事項並びに上記周知技術に基づいて、容易に発明することができたものとはいえない。
　なお、原審の補正の却下の決定においては、相違点３に係る本願発明１の「プログラムフロー制御監視ルーチンが、監視のために登録するモジュールの数に比例して拡張可能であり、これに対応してメモリ配分が増減され」る構成は、本願出願前における周知技術にすぎないとの判断がされているが、上記のとおり、当該構成は周知技術を適用しても容易に想到するものとは認められない。
２．本願発明２ないし６について
　本願発明２ないし６は、本願発明１を引用するものであり、本願発明１の「前記プログラムフロー制御監視ルーチンは、前記モジュールに組み込まれ、前記プログラムフロー制御監視ルーチンは、監視のために登録するモジュールの数に比例して拡張可能であり、これに対応してメモリ配分が増減され」る事項と同一の構成を備えるものであるから、本願発明１と同じ理由により、当業者であっても、引用発明及び引用文献２−４に記載された事項に基づいて容易に発明することができたものとはいえない。
３．本願発明７ないし１２について
　本願発明７ないし１２は、本願発明１ないし６の「過程工場監視および／または制御装置」に対応する「過程工場の監視および／または制御に関連付けられるモジュール内でエラーを検出する方法」であって、本願発明１の「前記プログラムフロー制御監視ルーチンは、前記モジュールに組み込まれ、前記プログラムフロー制御監視ルーチンは、監視のために登録するモジュールの数に比例して拡張可能であり、これに対応してメモリ配分が増減され」る事項に対応する、「前記プログラムフロー制御監視ルーチンは、前記モジュールに組み込まれること」、「前記プログラムフロー制御監視ルーチンが、監視のために登録するモジュールの数に比例して拡張可能であり、これに対応してメモリ配分が増減されること」という事項を備えるものであるから、本願発明１と同じ理由により、当業者であっても、引用発明及び引用文献２−４に記載された事項に基づいて容易に発明することができたものとはいえない。
４．本願発明１３ないし１８について
　本願発明１３ないし１８は、本願発明１ないし６の「過程工場監視および／または制御装置」に対応する「過程工場の監視および／または制御において使用するためのコンピュータ可読媒体」であって、本願発明１の「前記プログラムフロー制御監視ルーチンは、前記モジュールに組み込まれ、前記プログラムフロー制御監視ルーチンは、監視のために登録するモジュールの数に比例して拡張可能であり、これに対応してメモリ配分が増減され」る事項に対応する、「前記プログラムフロー制御監視ルーチンは、前記複数のモジュールの１つに組み込まれ、前記プログラムフロー制御監視ルーチンは、監視のために登録するモジュールの数に比例して拡張可能であり、これに対応してメモリ配分が増減される」事項を備えるものであるから、本願発明１と同じ理由により、当業者であっても、引用発明及び引用文献２−４に記載された事項に基づいて容易に発明することができたものとはいえない。
第７　原査定について
　審判請求時の補正により、本願発明１−１８は「プログラムフロー制御監視ルーチン」が「前記モジュールに組み込まれ」、「監視のために登録するモジュールの数に比例して拡張可能であり、これに対応してメモリ配分が増減され」る事項を有するものとなっており、当業者であっても、拒絶査定において引用された引用文献１−３及び周知技術に基づいて、容易に発明できたものとはいえない。したがって、原査定の理由を維持することはできない。
第８　むすび
　以上のとおり、本願発明１−１８は、当業者が引用発明及び引用文献２−４に記載された事項に基づいて容易に発明をすることができたものではない。
　したがって、原査定の理由によって、本願を拒絶することはできない。
　また、他に本願を拒絶すべき理由を発見しない
　よって、結論のとおり審決する。