審決検索MVP
← 検索一覧に戻る
特許拒絶査定不服審判

2020-001740

オンプレミスとクラウドプラットフォーム間のハイブリッドアプリケーション動作

審判番号
2020-001740
法域
特許
審判種別
拒絶査定不服審判(拒絶査定不服の審決)
出願番号
特願2018-046493外部サイト(J-PlatPat)へ移動します
請求日
2020年02月07日
審決日
2021年05月14日
公報発行日
2021年11月26日
結論
請求不成立
当事者
審判長/審判官
分類
P18 .121-WZ (G06F)
条文(本文から自動抽出・参考)
特許法第44条第1項、特許法第36条の2第2項、特許法第50条の2、特許法第164条、特許法第29条
データ出所
審決公報(SGML)

事件の表示

特願2018- 46493「オンプレミスとクラウドプラットフォーム間のハイブリッドアプリケーション動作」拒絶査定不服審判事件〔平成30年 6月28日出願公開,特開2018-101445〕について,次のとおり審決する。

結論

【結 論】 本件審判の請求は,成り立たない。

理由

【理 由】 第1.手続の経緯 本願は,平成27年4月20日(パリ条約による優先権主張2014年5月23日 アメリカ合衆国)の外国語書面出願である特願2015-085678号の一部を,特許法第44条第1項の規定により,平成30年3月14日に新たな特許出願としたものであって, 平成30年3月20日付けで特許法36条の2第2項の規定による外国語書面,及び,外国語要約書面の日本語による翻訳文が提出され,同日付けで審査請求がなされると共に手続補正がなされ,令和1年5月20日付けで審査官により特許法50条の2の通知を伴う拒絶理由が通知され,これに対して令和1年7月19日付けで意見書が提出されると共に手続補正がなされたが,令和1年11月29日付けで審査官により令和1年7月19日付けの手続補正が却下されると共に拒絶査定がなされ,これに対して令和2年2月7日付けで審判請求がなされると共に手続補正がなされ,令和2年4月6日付けで審査官により特許法164条3項の規定に基づく報告がなされ,令和2年7月21日付けで上申書が提出され,令和2年12月9日付けで当審により拒絶理由が通知され,令和3年3月12日付けで意見書が提出されると共に手続補正がなされたものである。 第2.本件補正発明について 本願の請求項1に係る発明(以下,これを「本件補正発明」という)は,令和3年3月12日付けの手続補正により補正された特許請求の範囲の請求項1に記載された,次のとおりのものである。 「オンプレミスプラットフォームにデプロイされたオンプレミスアプリケーションによりクラウドプラットフォームのクラウドリソースを消費するコンピュータ実施方法であって,前記オンプレミスアプリケーションは,前記クラウドプラットフォーム上にインストールされたアプリケーションランタイムの技術に対応する技術を用いて前記オンプレミスプラットフォームのオンプレミスローカル開発環境において開発され,クラウドアプリケーションランタイムは,前記クラウドアプリケーションランタイムを前記オンプレミスプラットフォームの他のシステムに公開することによって,前記オンプレミスプラットフォームに組み込まれ,前記クラウドアプリケーションランタイムは,オンプレミスプラットフォームの拡張を実装することによって,前記オンプレミスプラットフォームにおいて提供され,前記方法は, 前記クラウドプラットフォーム内で実行されている接続エージェントにおいて,前記クラウドリソースを消費する要求を前記アプリケーションランタイムのローカルバージョンにデプロイされた前記オンプレミスアプリケーションから受信するステップであって,前記オンプレミスアプリケーションは,前記アプリケーションランタイムの前記ローカルバージョンとして前記オンプレミスプラットフォーム上にインストールされているクラウドアプリケーションランタイムのローカルバージョンにデプロイされ,前記要求は,セキュアトンネルを介して,前記オンプレミスプラットフォームから前記接続エージェントへフォワードされる,ステップと, 前記クラウドリソースから前記要求しているオンプレミスアプリケーションへ応答をフォワードするステップであって,前記応答は,セキュアトンネルを介して前記接続エージェントによりフォワードされる,ステップと, を具備することを特徴とするコンピュータ実施方法。」 第4.引用文献に記載の事項 1.当審による令和2年12月9日付けの拒絶理由(以下,これを「当審拒絶理由」という)に引用された,本願の第1国出願前に既に公知である,米国特許出願公開第2012/0124129号明細書(2012年5月17日公開,以下,これを「引用文献1」という)には,関連する図面と共に,次の事項が記載されている。(下線は当審にて付加したものである。以下,同じ。) A.「[0024] FIG.3 illustrates secure integration of external resources with a local system according to one embodiment of the present invention. A local system 300A may include a client 313 that is running software, such as a software application (e.g., Netweaver Design Studio by SAP AGR, for example. The client software program may be loaded and executed on a computer system, such as a laptop or desk top computer, for example. If a user of client 313 desires additional computing resources, the user may trigger a request to across a network, such as the Internet, to a cloud computing system 300B for such resources. For example, embodiments of the present invention include a cloud controller software component 311 for creating secure connections to new resources on a cloud computing system 300B. Cloud controller 311 may include a user interface (“UI”) 310 for specifying the desired resources and other information used by the cloud to create the resources. In one embodiment, the UI 310 may be integrated into the client. Accordingly, a user may be able access controller 311 through the client (e.g., as a menu item or link). If additional resources are requested by the user of client system 313, the client may send authentication information to the controller 311 to ensure that the user requesting the resources has is authorized to do so. For example, at 301, the client may send a username and password to controller 311. Controller 311 may access authorization data 312 and compare authentication information received from the client to authorization data 312 to determine if the user is authorized to request cloud resources. For example, if the username and password received by the controller 311 from the client 313 match a username and password stored in the authorization data, then the controller 311 authorizes the user to request cloud resources.」 ([0024] 図3は,本発明の1実施例に従う,ローカル・システムと,外部リソースとの安全な統合を説明している。ローカル・システム300Aは,例えば,(例として,SAP AGRによる,ネットウィーバー・デザイン・スタジオといった,ソフトウェア・アプリケーションのような,ソフトウエアを実行している,クライアント313を含んでいる。クライアント・ソフトウェア・プログラムは,例えば,ラップトップ,或いは,デスクトップ・コンピュータのような,コンピュータ・システム上にロードされ,実行され得る。もし,クライアント313のユーザが,附加的な計算リソースを望めば,ユーザは,このようなリソースのために,インターネットのようなネットワークを介して,クラウド・コンピューティング・システム300Bに,要求を送信する。例えば,本発明の実施例は,クラウド・コンピューティング・システム300B上の,新しいリソースへの安全な接続を生成することのために,クラウド・コントローラ・ソフトウェア・コンポーネント311が含まれる。クラウド・コントローラ311は,要求されたリソース,及び,リソースを生成するために,クラウドによって使用される他の情報を明示するための,ユーザ・インターフェース(“UI”)310を含み得る。1実施例において,UI310は,クライアントに統合され得る。その結果,ユーザは,(例えば,メニューや,リンクのように)クライアントを介して,コントローラ311に,アクセスすることが可能になり得る。もし,クライアント・システム313のユーザによって,附加的なリソースが要求されると,クライアントは,リソースを要求しているユーザが,そうすることを許可されていることを保証するために,認証情報をコントローラ311に送信し得る。例えば,301において,クライアントは,ユーザ名と,パスワードを,コントローラ311に,送信し得る。コントローラ311は,認証データ312にアクセスし,ユーザが,クラウド・リソースを要求することを許可されているか否か決定するために,認証データ312にアクセスし,クライアントから受信した認証情報と,認証データ312とを比較し得る。例えば,もし,クライアント313から,コントローラ311によって受信された,ユーザ名と,パスワードが,認証データ内に格納されている,ユーザ名と,パスワードに一致すれば,そのとき,ユーザに,クラウド・リソースを要求することを,許可する。<当審にて訳出。以下,同じ。>) B.「[0030] FIG.5 illustrates an example secure communication between external resources with a local system according to one embodiment of the present invention. Features and advantages of the present invention include using shared security information (e.g., a shared key) between a tunnel agent client on a local system and a tunnel agent server on a cloud computing system to establish a secure channel between local resources and cloud resources. In this example, a secure connection may be established between a client 501 and server instance 502. When client 501 sends data to server instance 502, the data transmission may be secured by way of encryption, for example, using the shared key. If data is being sent from client 501 on a local system to server 502 on a cloud, the tunnel agent client (“TAC”) may receive and encrypt the data at 503 using the shared security information received from the controller. The data is sent from the TAC to the tunnel agent server. At 504, tunnel agent server (“TAS”) receives and decrypts the data using the shared key before it is processed at server instance 502. If data is being sent from server instance 502 to client 501, TAS may encrypt the data at 505 using the shared security information before it is sent. The encrypted data may be sent across a network and received by the TAC. The TAC decrypts the data at 506 using the shared security information before it is sent to the client 501.」 ([0030] 図5は,本発明の1実施例に従うローカル・システムと,外部リソースとの間の安全通信の例を説明している。本発明の特徴と利点は,ローカル・リソースと,クラウド・リソースとの間の安全なトンネルを構築するために,ローカル・システム上のトンネル・エージェント・クライアントと,クラウド・コンピューティング・システム上のトンネル・エージェント・サーバとの間で,共有されたセキュア情報(例えば,共有鍵)を用いることを含む。この例において,安全な接続は,クライアント501と,サーバ・インスタンス502との間に構築され得る。クライアント501が,サーバ・インスタンス502へ,データを送信するとき,データ送信は,例えば,共有鍵を用いる,暗号化方法によって,安全に行われる。もし,ローカル・システム上のクライアント501から,クラウド上のサーバ502へ,データが送信されると,トンネル・エージェント・クライアント(“TAC”)は,503で,コントローラから受け取った,共有セキュリティ情報を用いることで,データを受信し,暗号化する。そのデータは,TACから,トンネル・エージェント・サーバに送信される。504で,トンネル・エージェント・サーバ(“TAS”)は,データを受信し,それを,サーバ・インスタンス502で処理する前に,共有鍵を用いて,復号する。もし,データが,サーバ・インスタンス502から,クライアント501へ送信されると,TASは,505で,それが送信される前に,共有セキュリティ情報を用いて,暗号化し得る。その暗号化されたデータは,ネットワークを渡って送信され,TACによって受信される。TACは,506で,そのデータを,それが,クライアント501に送られる前に,共有セキュリティ情報を用いて,復号する。) C.「[0044] FIGS.7A-B illustrate communication between local resources and cloud resources according to another embodiment of the present invention. In this embodiment, local system 700A includes multiple local computer systems 710 and 720 coupled together using a network 790, such as a local Ethernet or Intranet (e.g., computers 710 and 720 are in a common network inside firewall 760). Here, each computer 710 and 720 includes a client software system 711 and 721, respectively. Additionally, each computer includes a tunnel agent client 712 and 722, respectively, for communication with cloud computer system 700B. Each client may be configured to use resources on cloud computing system 700B. Resources on local system 700A may communicate with resources on cloud computer system 700B over another external network, such as the Internet. Communications between computer resources on local system 700A and the Internet may be channeled through a proxy 762, for example. Further, clients 711 and 721 may each be local software applications, such as a Netweaver Design Studio Application, executing on a user's laptop or desktop computer. Each client software application may be configured to access a server instance 773 implemented on cloud computing system 700B. According to one example embodiment of the present invention, when a first user starts a first client 711, cloud controller 740 may authenticate and authorize the user as described above, and send a request to create a server instance to cloud management service 770. An image of the server instance 773 is extracted from repository 771 and instantiated. A tunnel agent server 772 may also be stored as an image and instantiated.」 ([0044] 図7A-Bは,本発明の他の実施例に従う,ローカル・リソースと,クラウド・リソースとの間の通信を説明している。この実施例において,ローカル・システム700Aは,ローカル・イーサネット,或いは,イントラネット(例えば,コンピュータ710と,720は,ファイヤ・ウォール760の内側の共通ネットワーク内である)のような,ネットワーク790を用いて連結された,複数のローカル・コンピュータ・システム710,及び,720を含む。ここで,コンピュータ710,及び,720それぞれは,クライアント・ソフトウェア・システム711,及び,721を,それぞれ,含む。さらに,それぞれのコンピュータは,クラウド・コンピュータ・システム700Bと通信するために,トンネル・エージェント・クライアント712,及び,722を,それぞれ,含む。クライアントそれぞれは,クラウド・コンピューティング・システム700B上のリソースを使用するために,構成されている。ローカル・システム700A上のリソースは,インターネットのような,他の外部ネットワークを通じて,クラウド・コンピューティング・システム700B上のリソースと通信し得る。ローカル・システム700A上のリソースと,インターネットとの間の通信は,例えば,プロキシ762を介して,導かれる。その上,クライアント711,及び,721は,それぞれ,ユーザのラップトップ,或いは,デスクトップ・コンピュータ上で実行される,例えば,ネットウィーバー・デザイン・スタジオのような,ローカル・ソフトウェア・アプリケーションであり得る。クライアント・ソフトウェア・アプリケーションそれぞれは,クラウド・コンピューティング・システム700B上に実装されている,サーバ・インスタンス773にアクセスするよう構成されている。本発明の1実施例に従って,第1のユーザが,第1のクライアント711を開始する時に,クラウド・コントローラ740は,上で述べたユーザを認証し,許可し,クラウド管理サービス770へ,サーバ・インスタンスを生成するための要求を送信し得る。サーバ・インスタンス773のイメージは,リポジトリ771から取り出され,インスタンス化される。トンネル・エージェント・サーバ772は,また,イメージとして格納され,インスタンス化され得る。) D.「[0046] (“TAS”) 772 provide secure access to pre-configured services (tcp ports) from the local network of the TAS to the TAC and vice-versa. Security may be based on secure socket layer (“SSL”) and pre-shared keys used for client authentication. In some implementations, no direct connections can be made between the TAS and TAC networks because of firewalls and/or https proxies. Accordingly, in this example only the TAC can initiate a connection to the TAS_i.e., TAC 712 exclusively initiates connections with TAS 772. In other words, in this example tunnel agent server cannot initiate a connection with tunnel agent client as described in more detail below. [0047] In this example, there are three (3) types of connections. The first is referred to herein as a “service connection.” A service connection is established by the TAC when it initially connects to the TAS, and may later be used by the TAS to request a new connection be established by the TAC for use as a callback connection as described below. The second connection is referred to as a “forward connection.” A forward connection may be accepted by the TAC and forwarded to an address inside the TAS network. A forward connection may be used for communication between a client 711 and server instance 773, for example. The third connection is referred to herein as a “callback connection.” A callback connection may be accepted by the TAS from a server instance on the cloud and forwarded to an address inside the TAC network to another system other than the client (e.g., a server running a backend system). Callback connections may be used to allow a server instance to access resources on backend systems, such as retrieving data from a backend ERP system or database, for example. Connections may be established by connecting to ports, and messages may be routed through the connections. Once a connection is established, it may be assigned a connection ID, for example, which may indicate the appropriate recipient for a received communication. Communication between software components may include the use of configuration data in the TAC 713 and 723 and configuration data in the TAS 777, for example. One example of configuration data for the tunnel agent client and configuration data for the tunnel agent server is shown in Appendix A.」 ([0046] (“TAS”)772は,TASのローカル・ネットワークから,TACへ,及び,その逆へ,事前に設定されたサービス(tcp)への安全なアクセスを提供する。安全は,セキュア・ソケット・レイヤ(“SSL”)と,クライアント認証に用いられる,事前供給鍵に基づき得る。いくつかの実装においては,非直接接続が,ファイヤ・ウォール,及び/または,httpsプロキシのために,TASとTACネットワークの間に,作成させることが可能である。それで,この例において,TACのみが,TASへの接続を開始することができる_即ち,TAC712は,TAS772との接続を,独占的に開始する。言い換えると,この例において,トンネル・エージェント・サーバは,以下に詳細を述べるように,トンネル・エージェント・クライアントとの接続を開始できない。 [0047] この例においては,3種類のコネクションが存在する。第1は,“サービス・コネクション”として,この中に引用する。サービス・コネクションは,TASへ最初に接続する時に,TACによって確立され,後に,以下に述べるような,コールバック・コネクションとして使用のため,TACによって新しいコネクションが確立される要求のため,TASによって用いられる。第2のコネクションは,“フォワード・コネクション”として,引用する。フォワード・コネクションは,TACによって受理され,TASネットワークの内側のアドレスへ転送され得る。フォワード・コネクションは,例えば,クライアント711と,サーバ・インスタンス773の間の通信のために用いられ得る。第3のコネクションは,“コールバック・コネクション”として,この中に引用する。コールバック・コネクションは,クラウド上のサーバ・インスタンスから,TASによって受理され,クライアント以外の,他のシステム(例えば,バックエンド・システムが走っているサーバ)への,TACネットワーク内のアドレスへ,転送され得る。コールバック・コネクションは,例えば,バックエンドERPシステム,或いは,データベースから,データを検索するような,バックエンド・システム上のリソースへアクセスすることを,サーバインスタンスに許可するために用いられ得る。コネクションは,ポートに接続することによって確立し得,メッセージは,そのコネクションを介して,転送され得る。一度コネクションが確立すると,それに,コネクションIDが付与され得,例えば,それは,受信された通信のための,適切な受領者であることを示し得る。ソフトウェア・コンポーネント間の通信は,例えば,TAC713,及び,723内の設定データと,TAS777内の設定データの使用を含む。トンネル・エージェント・クライアントのための設定データ,及び,トンネル・エージェント・サーバのための設定データの一例は,Appendix Aに示されている。) E.「[0049] In this example, when a connection is first established it is a service connection. Service connections are used for sending service messages back and forth between the TAC and TAS. A service connection protocol may be based on serializable java objects. For example, “serializable” java objects may be used to share data between two java programs (e.g., a java implementation of the TAC and TAS). Data may be encoded before it is sent over the network. This example encoding is called “serialization.” The serialization of java objects is described in details and is part of the java language specification. The following are examples of service messages definitions:」 ([0049] この例においては,コネクションが第1に確立される時,それは,サービス・コネクションである。サービス・コネクションは,TACと,TASの間を行き来して,サービス・メッセージを送信することのために用いられる。サービス・コネクション・プロトコルは,シリアライズ可能なjavaオブジェクトに基づき得る。例えば,“シリアライズ可能な”javaオブジェクトは,2つのjavaプログラム(例えば,TACと,TASのjava実装)間でデータを共有するために用いられ得る。データは,ネットワーク上を送信される前に,符号化される。この例の符号化することは,“シリアライゼーション”と呼ばれる。javaオブジェクトのシリアライゼーションは,詳細に説明されており,java言語仕様の一部である。) F.「[0070] Connections from a TAC to a TAS are initiated by a “ClientInit” message. For example, when a connection is made by a local system, such as client 711, to a TAS port (or server socket) where the TAC 712 is listening for some local service, the TAC 712 may establish a new connection to the TAS 772 and send an initialization message (“ClientInit”). The initialization message (“ClientInit”) may be sent by the TAC 712 to initiate new “forward” connection. The TAS 772 may reply with an acknowledgement message (“AckMessage”). The AckMessage is used as a confirmation that a message was received and processed and contains the result of the operation (e.g., “ok” or an error code). Next, the [0071] TAS 772 checks the authentication of the requesting TAC using the shared key, checks the service, and opens a connection to the target destination (e.g., server instance 773). If the TAC is authenticated and the service connection to the server instance 773 is established, then the TAS sends the AckMessage. For a forward connection, the connection starts in “service mode” for transferring initialization messages as described above, and then switches to “data mode” if the TAC is authorized and the TAS successfully completes the above steps. Accordingly, if the AckMessage is sent by the TAS and received by the TAC, both sides switch to the data forward protocol. If some error occurs (for example the destination service is not available at the moment)_the TAS will send the corresponding ERROR AckMessage and terminate the connection. Once in data mode, messages may be sent between the local system resources and cloud resources using the TAC and TAS. For example, a data message for a forward connection may be a 4 byte length header and body. The body may be the size specified in the 4 byte header (e.g., serialized integer using standard java byte ordering). The body is the actual data that is being forwarded by the connection (unmodified). Messages with length=0 are used as pings to keep the proxy alive and may discarded by the remote side when received, for example.」 ([0070] TACからTASへのコネクションは,“ClientiInit”メッセージによって開始される。例えば,クライアント711などのローカル・システムによって,TAC712が,何らかのローカル・サービスをリッスンしている,TASポート(または,サーバ・ソケット)へのコネクションが確立されると,TAS712は,TAS772への,新しいコネクションを確立し,開始メッセージ(“ClientiInit”)を送信する。開始メッセージ(“ClientiInit”)は,新しい“フォワード”コネクションを開始するために,TAC712によって,送信され得る。TAS772は,確認メッセージ(“AckMessage”)で応答する。)AckMessageは,メッセージが,受信され,処理されたことの確認として用いられ,処理の結果(例えば“OK”,或いは,エラーコード)を含む。次に, [0071] TAS772は,要求しているTACの認証を,共有鍵を用いることでチェックし,サービスをチェックし,目的の送り先(例えば,サーバ・インスタンス773)とのコネクションを開く。TACが認証され,サーバ・インスタンス773へのサービス・コネクションが,確立されれば,そのとき,TASは,AckMessageを送信する。フォワード・コネクションのために,その接続は,上で述べたように,開始メッセージを送信することのために,“サービス・モード”において開始し,TACが,許可され,TASが,上のステップを,成功裏に完了するのであれば,そのとき,“データ・モード”に切り替わる。その結果,AckMessageがTASによって送信され,TACによって受信されると,両サイドは,データ・フォワード・プロトコルとして切り替わる。いくつかの障害(例えば,送り先サービスが,現在,利用できない)が発生すると,TASは,一致するERROR AckMessageを送信し,コネクションを終了させる。データ・モードである時点で,メッセージは,TACと,TASを用いて,ローカル・システムリソースと,クラウド・リソースとの間で,送信され得る。例えば,フォワード・コネクションのためのデータ・メッセージは,4バイト長のヘッダとボディであり得る。ボディは,4バイトのヘッダに記述されたサイズ(例えば,標準的な,javaバイト・オーダリングに用いられている,シリアライズされた整数型)であり得る。ボディは,(修正されていない)コネクションによって,フォワードされている,実際のデータである。例えば,長さ0のメッセージは,動作しているプロキシを維持するためのpinとして用いられ,受信された時,リモート側によって,破棄され得る。) G.「[0074] In this example, tunnel agent client 712 is the single connection point between backend resources on and cloud resources. FIG.8B illustrates connections and messaging according to an embodiment of the present invention. In one embodiment, when TAC 712 connects to the TAS 772 for the first time, it will establish a service connection illustrated by dashed lines 898. The TAC 712 may send an “OpenCallback” at 810 across the service connection for the callback services it is configured to route. Specifically, the TAC may have the corresponding entry in the configuration file for routing callback services to a backend system such as QWA as follows:」 ([0074] この例において,トンネル・エージェント・クライアント712は,バックエンド・リソースと,クラウド・リソースとの間の,単一のコネクション・ポイントである。図8Bは,本発明の実施例に従う,コネクションと,メッセージングを説明している。1実施例において,最初に,TAC712と,TAS772が接続すると,それは,破線898で示されるサービス・コネクションを確立する。TAC712は,810で,それのルートを設定する,コールバック・サービスのためのサービス・コネクションを渡って,“OpenCallback”を送信し得る。特に,TACは,以下のように,QWAなどのバックエンド・システムへ,コールバック・サービスをルーティングするための,対応するエントリを,設定ファイル内に有し得る。) 2.当審拒絶理由に引用された,本願の第1国出願前に既に公知である,特表2002-505471号公報(公表日;2002年2月19日,以下,これを「引用文献2」という)には,関連する図面と共に,次の事項が記載されている。 H.「 【0028】 (典型的なクライアントサーバ・システム) 図3は,この発明の典型的なクライアントサーバ・システムと典型的な分散システム100を示している。従って,クライアントサーバ・システム300は,クライアント・コンピュータ302(クライアント302とも呼ぶ),サーバコンピュータ312(サーバ312とも呼ぶ),およびクライアント302とサーバ312の間を接続するネットワーク310からなる。この特別なクライアントサーバ・システムは,Java(登録商標)オブジェクト指向言語を使って,RMI218への機能強化として実装される。しかし,当業者には明らかなように,この発明の同様のシステムは,一般的な遠隔手続き呼び出し(RPC)システムと,他のオブジェクト指向および非オブジェクト指向言語を使って実装することもできる。 【0029】 クライアント302は,遠隔メソッド呼び出し306,リモート・スタブ308,および遠隔メソッド・ランタイム309を備えたクライアント・アプリケーション304を有する。クライアント・アプリケーション304は,一般に利用者が開発したソフトウェアであって,サーバ312上の処理を呼び出すための遠隔メソッド呼び出し306を有する。例えば,クライアント・アプリケーション304は,Java(登録商標)プログラミング言語で書かれたJava(登録商標)アプリケーションである。遠隔メソッド呼び出し306は,RMI等のRPC機構を使って実装される。 【0030】 遠隔メソッド・スタブ308は,遠隔メソッド呼び出し306によって提供されたデータとパラメータを整列させる。そのデータとパラメータは,サーバ312上の遠隔メソッド・スケルトン315が復号化可能な所定の形式に配置される。遠隔メソッド・ランタイム309は,それらがサーバ312で処理されるとき,遠隔メソッド呼び出し306に関連する処理の状態を追跡する。また,遠隔メソッド・ランタイム309は,クライアント・アプリケーション304とサーバ312の間の通信リンクが接続されているかどうかを確認する。遠隔メソッド・ランタイム309は,そのリンクの状態をサーバ312に問い合わせることもできる。適切な時間内に応答がなければ,あるいはサーバ312がそのリンクのダウンを示せば,遠隔メソッド・ランタイム309は,クライアント・アプリケーション304に遠隔メソッド呼び出しが終了していることを知らせる。 【0031】 ネットワーク310は,クライアント302とサーバ312の間の通信リンクを提供する。ネットワーク310は,インターネットまたは企業や学内のイントラネットであってもよい。ネットワーク310は,TCP/IP,またはNovell Netware,Apple Talk,X.25等の他のネットワーク・プロトコルを使用することができ,RMI等のRPCシステムをサポート可能な他のネットワークであってもよい。 【0032】 サーバ312は,対応する遠隔メソッド・ランタイム314と,遠隔メソッド・スケルトン315を有する。クライアント302とは異なり,サーバ312は,一般資源管理部316とイベント処理部317,遠隔メソッド資源管理部322,遠隔イベント処理部323,および多数の遠隔メソッド資源324も有している。また,サーバ312は,遠隔オブジェクトA318と遠隔オブジェクトB320を有している。各遠隔オブジェクトは,クライアント・アプリケーション304が,遠隔メソッド呼び出し306を使って呼び出せる複数のメソッド(図示せず)に関連付けられる。サーバ312の別の構成では,特定のシステムに必要な遠隔メソッドを行うための遠隔メソッドをいくつでも有することができる。 【0033】 遠隔メソッド・ランタイム314には,遠隔メソッドが実行状態であることをクライアント302に知らせる責任がある。遠隔メソッド・ランタイム314は,クライアント302に情報を提供し,遠隔メソッドがデータを処理していることを知らせる。この発明によると,遠隔メソッドが中断されても,この処理状態は中断されない。ただし,遠隔メソッド・ランタイム314は,遠隔メソッドが要求されたタスクの処理を完了するまで,クライアント302との接続を保持する。また,遠隔メソッド・ランタイム314は,遠隔メソッドが異常終了したり,エラーで終了したときにもクライアント302に知らせる。 【0034】 このメソッドは,遠隔メソッドの処理に必要な一般資源が,現時点で利用できないかどうかを確認する。一般資源としては,メモリ,ディスク記憶空間,データ,またはシステム資源が依存可能な他の資源などがある。 【0035】 遠隔メソッド・スケルトン315には,ネットワーク310上に送られるデータとパラメータを復号化する責任がある。このパラメータとデータは,サーバ312上で遠隔メソッドを実行するための引数として使われる。」 3.当審拒絶理由に引用された,本願の第1国出願前に既に公知である,「清水航,Java2コンピューティングの可能性 Java2 SDK v1.2,Computopia,日本,株式会社コンピュータ・エージ社,1999年 4月1日,第34巻,第391号,p.34-38」(以下,これを「引用文献3」という)には,関連する図面と共に,次の事項が記載されている。 I.「JDKとは,Java言語によるアプリケーション開発を行うための基本的なツールのことである。一部の例外を除き全てのJavaアプリケーションやJavaアプレットは,JDKを基に開発されている。それは,開発ツールを使用したJavaアプリケーション開発とて例外ではない。何故なら,開発ツール自体がJDKをサポートしているからである。 ここで,Javaの性質を思い起こしてみると,Write Once,Run Anyware。つまり,一度ソースコードを書いたらどこでも動作可能であることを明示している。Javaにおいてこの目標を現実とするための手段のひとつがJDKであった。プラットフォームや開発ツールが異なるマルチプラットフォーム環境下では,必然的に互換性のないコードが開発される。これは,プラットフォーム固有のAPIを利用するために,そうなってしまう。 しかし,Javaアプリケーションの開発では,JDKが提供される機能を使用し,Javaの定義から外れないコードの生成を行うことによってこの問題を解決している。つまり,JavaのAPI だけを知ればいい。Javaは,“Write Once,Run Anyware” という発想によって,製品を提供する側と,利用する側の双方に利益をもたらすのである。」(34頁左欄2行~末行) 4.当審拒絶理由に引用された,本願の第1国出願前に既に公知である,「Antonio Goncalves著,日本オラクル株式会社監訳“Begining Java EE6 GlassFish3で始めるエンタープライズJava” 株式会社翔泳社 2013年1月10日 初版第2刷発行」(以下,これを「引用文献4」という)には,関連する図面と共に,次の事項が記載されている。 J.「1.4.1 JDK6 本書におけるサンプルアプリケーションの開発と実行にはJava Development Kit(JDK)が必要です。JDKはコンパイラ(javac),仮想マシン,ドキュメント・ジェネレータ(javadoc),監視ツール(VisualVM)などの複数のツールが付属しています。JDK6をインストールするには,Oracle社の公式サイト(http://www.oracle.com/technetwork/jp/java/javase/downloads/,英語)にアクセスし,適切なプラットフォームと言語を選択してファイルをダウンロードします。 ダウンロードページではソフトウェアのライセンスへの同意が求められます。これに同意しMicrosoft Windowsを実行している方は(LinuxとApple Mac OSXは本書ではサポートしていませんが,コードは移植可能です)jdk-6u26-windows-i586.exeファイルをダウンロードします。exeファイルを実行すると,インストール可能なJDKモジュール(JDK,JRE,Derbyデータベース,ソース)が表示されます(図1-7参照)。」(22頁1行~10行) 5.本願の第1国出願前に既に公知である,特開2011-048590号公報(2011年3月10日公開,以下,これを「周知技術文献」という)には,関連する図面と共に,次の事項が記載されている。 K.「【0016】 Java(登録商標)アプリケーション210(Java(登録商標)アプリケーションA204,Java(登録商標)アプリケーションB205,およびJava(登録商標)アプリケーションC206)は,JVM202上において,マルチスレッドにより複数の処理を並行して行うマルチ動作を実現している。このマルチ動作は,JVM202により管理されているものとする。また,Java(登録商標)アプリケーション210は,ソフトウェアプログラム200の機能を拡張または縮小するために,追加または削除が実施されるプラグインである。」 第5.引用文献1に記載の発明 1.上記Aの「A local system 300A may include a client 313 that is running software, such as a software application (e.g., Netweaver Design Studio by SAP AGR, for example. The client software program may be loaded and executed on a computer system, such as a laptop or desk top computer, for example. If a user of client 313 desires additional computing resources, the user may trigger a request to across a network, such as the Internet, to a cloud computing system 300B for such resources.(ローカル・システム300Aは,例えば,(例として,SAP AGRによる,ネットウィーバー・デザイン・スタジオといった,ソフトウェア・アプリケーションのような,ソフトウエアを実行している,クライアント313を含んでいる。クライアント・ソフトウェア・プログラムは,例えば,ラップトップ,或いは,デスクトップ・コンピュータのような,コンピュータ・システム上にロードされ,実行され得る。もし,クライアント313のユーザが,附加的な計算リソースを望めば,ユーザは,このようなリソースのために,インターネットのようなネットワークを介して,クラウド・コンピューティング・システム300Bに,要求を送信する。)」という記載,同じく,上記Aの「embodiments of the present invention include a cloud controller software component 311 for creating secure connections to new resources on a cloud computing system 300B. (本発明の実施例は,クラウド・コンピューティング・システム300B上の,新しいリソースへの安全な接続を生成することのために,クラウド・コントローラ・ソフトウェア・コンポーネント311が含まれる。)」という記載と,上記Cの「clients 711 and 721 may each be local software applications, such as a Netweaver Design Studio Application, executing on a user's laptop or desktop computer. Each client software application may be configured to access a server instance 773 implemented on cloud computing system 700B. (クライアント711,及び,721は,それぞれ,ユーザのラップトップ,或いは,デスクトップ・コンピュータ上で実行される,例えば,ネットウィーバー・デザイン・スタジオのような,ローカル・ソフトウェア・アプリケーションであり得る。クライアント・ソフトウェア・アプリケーションそれぞれは,クラウド・コンピューティング・システム700B上に実装されている,サーバ・インスタンス773にアクセスするよう構成されている。)」という記載から,引用文献1には, “ローカル・システム上のクライアント・ソフトウェア・プログラムから,インターネットのようなネットワークを介して,クラウド・コンピューティング・システムに計算リソースの要求を行う方法”が記載されていることが読み取れる。 2.上記Bの「When client 501 sends data to server instance 502, the data transmission may be secured by way of encryption, for example, using the shared key. If data is being sent from client 501 on a local system to server 502 on a cloud, the tunnel agent client (“TAC”) may receive and encrypt the data at 503 using the shared security information received from the controller. The data is sent from the TAC to the tunnel agent server. At 504, tunnel agent server (“TAS”) receives and decrypts the data using the shared key before it is processed at server instance 502. If data is being sent from server instance 502 to client 501, TAS may encrypt the data at 505 using the shared security information before it is sent. The encrypted data may be sent across a network and received by the TAC. The TAC decrypts the data at 506 using the shared security information before it is sent to the client 501.(クライアント501が,サーバ・インスタンス502へ,データを送信するとき,データ送信は,例えば,共有鍵を用いる,暗号化方法によって,安全に行われる。もし,ローカル・システム上のクライアント501から,クラウド上のサーバ502へ,データが送信されると,トンネル・エージェント・クライアント(“TAC”)は,503で,コントローラから受け取った,共有セキュリティ情報を用いることで,データを受信し,暗号化する。そのデータは,TACから,トンネル・エージェント・サーバに送信される。504で,トンネル・エージェント・サーバ(“TAS”)は,データを受信し,それを,サーバ・インスタンス502で処理する前に,共有鍵を用いて,復号する。もし,データが,サーバ・インスタンス502から,クライアント501へ送信されると,TASは,505で,それが送信される前に,共有セキュリティ情報を用いて,暗号化し得る。その暗号化されたデータは,ネットワークを渡って送信され,TACによって受信される。TACは,506で,そのデータを,それが,クライアント501に送られる前に,共有セキュリティ情報を用いて,復号する。)」という記載,上記Cの「local system 700A includes multiple local computer systems 710 and 720 coupled together using a network 790, such as a local Ethernet or Intranet (e.g., computers 710 and 720 are in a common network inside firewall 760). Here, each computer 710 and 720 includes a client software system 711 and 721, respectively. Additionally, each computer includes a tunnel agent client 712 and 722, respectively, for communication with cloud computer system 700B. Each client may be configured to use resources on cloud computing system 700B. Resources on local system 700A may communicate with resources on cloud computer system 700B over another external network, such as the Internet.(ローカル・システム700Aは,ローカル・イーサネット,或いは,イントラネット(例えば,コンピュータ710と,720は,ファイヤ・ウォール760の内側の共通ネットワーク内である)のような,ネットワーク790を用いて連結された,複数のローカル・コンピュータ・システム710,及び,720を含む。ここで,コンピュータ710,及び,720それぞれは,クライアント・ソフトウェア・システム711,及び,721を,それぞれ,含む。さらに,それぞれのコンピュータは,クラウド・コンピュータ・システム700Bと通信するために,トンネル・エージェント・クライアント712,及び,722を,それぞれ,含む。クライアントそれぞれは,クラウド・コンピューティング・システム700B上のリソースを使用するために,構成されている。ローカル・システム700A上のリソースは,インターネットのような,他の外部ネットワークを通じて,クラウド・コンピューティング・システム700B上のリソースと通信し得る。)」という記載,上記(1)において引用した上記Cの記載内容,上記Dの「The second connection is referred to as a “forward connection.” A forward connection may be accepted by the TAC and forwarded to an address inside the TAS network. A forward connection may be used for communication between a client 711 and server instance 773, for example. The third connection is referred to herein as a “callback connection.” A callback connection may be accepted by the TAS from a server instance on the cloud and forwarded to an address inside the TAC network to another system other than the client (e.g., a server running a backend system). Callback connections may be used to allow a server instance to access resources on backend systems, such as retrieving data from a backend ERP system or database, for example.(第2のコネクションは,“フォワード・コネクション”として,引用する。フォワード・コネクションは,TACによって受理され,TASネットワークの内側のアドレスへ転送され得る。フォワード・コネクションは,例えば,クライアント711と,サーバ・インスタンス773の間の通信のために用いられ得る。第3のコネクションは,“コールバック・コネクション”として,この中に引用する。コールバック・コネクションは,クラウド上のサーバ・インスタンスから,TASによって受理され,クライアント以外の,他のシステム(例えば,バックエンド・システムが走っているサーバ)への,TACネットワーク内のアドレスへ,転送され得る。コールバック・コネクションは,例えば,バックエンドERPシステム,或いは,データベースから,データを検索するような,バックエンド・システム上のリソースへアクセスすることを,サーバインスタンスに許可するために用いられ得る。)」という記載,及び,上記Fの「a data message for a forward connection may be a 4 byte length header and body. The body may be the size specified in the 4 byte header (e.g., serialized integer using standard java byte ordering). The body is the actual data that is being forwarded by the connection (unmodified)(フォワード・コネクションのためのデータ・メッセージは,4バイト長のヘッダとボディであり得る。ボディは,4バイトのヘッダに記述されたサイズ(例えば,標準的な,javaバイト・オーダリングに用いられている,シリアライズされた整数型)であり得る。ボディは,(修正されていない)コネクションによって,フォワードされている,実際のデータである。)」という記載と,上記(1)において検討した事項から,引用文献1においては, “ローカル・システム上のクライアント・ソフトウェア・プログラムから,クラウド・コンピューティング・システム上のサーバインスタンスへ,要求が送信されると,ローカル・システム上のトンネル・エージェント・クライアントは,前記要求を暗号化し,フォワード・コネクションを介して,クラウド・コンピューティング・システム上のトンネル・エージェント・サーバにフォワードし,前記トンネル・エージェント・サーバは,フォワードされた要求を復号し,前記復号された要求は,前記サーバ・インスタンスによって処理され,前記サーバ・インスタンスからの応答が,前記ローカル・システムに送信されると,前記トンネル・エージェント・サーバは,前記応答を暗号化し,前記トンネル・エージェント・クライアントにフォワードし,前記トンネル・エージェント・クライアントは,前記フォワードされた応答を復号し,前記クライアント・ソフトウェア・プログラムに送信する”ものであることが読み取れる。 3.上記Eの「For example, “serializable” java objects may be used to share data between two java programs (e.g., a java implementation of the TAC and TAS).(例えば,“シリアライズ可能な”javaオブジェクトは,2つのjavaプログラム(例えば,TACと,TASのjava実装)間でデータを共有するために用いられ得る。)」という記載から,引用文献1においては, “TACと,TASはjavaプログラムである”ことが読み取れる。 4.以上,上記1.~上記3.において検討した事項から,引用文献1には,次の発明(以下,これを「引用発明」という)が記載されているものと認める。 「ローカル・システム上のクライアント・ソフトウェア・プログラムから,インターネットのようなネットワークを介して,クラウド・コンピューティング・システムに計算リソースの要求を行う方法であって, ローカル・システム上のクライアント・ソフトウェア・プログラムから,クラウド上のサーバ・インスタンスへ,要求が送信されると, ローカル・システム上のトンネル・エージェント・クライアントは,前記要求を暗号化し,フォワード・コネクションを介して,クラウド・コンピューティング・システム上のトンネル・エージェント・サーバにフォワードし, 前記トンネル・エージェント・サーバは,フォワードされた要求を復号し, 前記復号された要求は,前記サーバ・インスタンスによって処理され, 前記サーバ・インスタンスからの応答が,前記ローカル・システムに送信されると, 前記トンネル・エージェント・サーバは,前記応答を暗号化し,前記トンネル・エージェント・クライアントにフォワードし, 前記トンネル・エージェント・クライアントは,前記フォワードされた応答を復号し,前記クライアント・ソフトウェア・プログラムに送信する, 方法であって, 前記トンネル・エージェント・クライアントと,前記トンネル・エージェント・サーバは,javaプログラムである,方法。」 第6.本件補正発明と引用発明との対比 1.引用発明における「ローカルシステム」が, 本件補正発明における「オンプレミスプラットフォーム」に相当し, 引用発明における「ローカルシステム上のクライアント・ソフトウェア・プログラム」が, 本件補正発明における「オンプレミスプラットフォームにデプロイされたオンプレミスアプリケーション」に相当し, 引用発明における「クラウド・コンピューティング・システム」が, 本件補正発明における「クラウドプラットフォーム」に相当し, 引用発明において,「クラウド・コンピューティング・システムに計算リソースの要求を行う」ことは,「ローカル・システム上のクライアント・ソフトウェア・プログラム」が,「クラウド・コンピューティング・システム」の「計算リソース」を「消費」することを求めるものであるから, 引用発明における「クラウド・コンピューティング・システムに計算リソースの要求を行う方法」とは,“クラウド・コンピューティング・システムに計算リソースの消費を行う方法”と言い得るものであり, 引用発明における当該「方法」は,「コンピュータ」によって「実施」されるものに他ならないので, 引用発明における「ローカル・システム上のクライアント・ソフトウェア・プログラムから,インターネットのようなネットワークを介して,クラウド・コンピューティング・システムに計算リソースの要求を行う方法」が, 本件補正発明における「オンプレミスプラットフォームにデプロイされたオンプレミスアプリケーションによりクラウドプラットフォームのクラウドリソースを消費するコンピュータ実施方法」に相当する。 2.引用発明において,「ローカル・システム上のクライアント・ソフトウェア・プログラムから,クラウド上のサーバインスタンスへ,要求が送信される」ということは, 引用発明における「クラウド上のサーバ・インスタンス」が,当該「要求」を受信することに他ならず, 当該「サーバ・インスタンス」は,「ローカル・システム」と,「クラウド」との接続に関する処理を行うものであるから, 本件補正発明における「接続エージェント」に相当するものである。したがって, 引用発明における「ローカル・システム上のクライアント・ソフトウェア・プログラムから,クラウド上のサーバ・インスタンスへ,要求が送信される」ことと, 本件補正発明における「クラウドプラットフォーム内で実行されている接続エージェントにおいて,前記クラウドリソースを消費する要求を前記アプリケーションランタイムのローカルバージョンにデプロイされた前記オンプレミスアプリケーションから受信するステップ」とは, “クラウドリソースを消費する要求を,オンプレミスアプリケーションから受信するステップ”である点で共通する。 3.引用発明において,「ローカル・システム上のトンネル・エージェント・クライアントは,前記要求を暗号化し,フォワード・コネクションを介して,クラウド・コンピューティング・システム上のトンネル・エージェント・サーバにフォワード」することは, 「セキュアトンネル」を介して,「トンネル・エージェント・サーバ」に「要求」を「フォワード」することに他ならず,「トンネル・エージェント・サーバ」は,上記引用のとおり,「クラウド・コンピューティング・システム上」で動作するものであることは,明らかであるので,本件補正発明における「クラウドプラットフォーム内で実行されている接続エージェント」に相当する。 したがって,引用発明における上記2.において検討した事項を踏まえると, 引用発明における「ローカル・システム上のトンネル・エージェント・クライアントは,前記要求を暗号化し,フォワード・コネクションを介して,クラウド・コンピューティング・システム上のトンネル・エージェント・サーバにフォワードし」が, 本件補正発明における「要求は,セキュアトンネルを介して,前記オンプレミスプラットフォームから前記接続エージェントへフォワードされる,ステップ」に相当する。 4.引用発明において,「サーバ・インスタンスからの応答が,前記ローカル・システムに送信されると,前記トンネル・エージェント・サーバは,前記応答を暗号化し,前記トンネル・エージェント・クライアントにフォワードし,前記トンネル・エージェント・クライアントは,前記フォワードされた応答を復号し,前記クライアント・ソフトウェア・プログラムに送信する」ということは,トンネル・エージェント・サーバから,セキュアトンネルを介して,トンネル・エージェント・クライアントにフォワードされ,当該トンネル・エージェント・クライアントから,クライアント・ソフトウェア・プログラムに送信される”ものであり, 引用発明における「サーバ・インスタンス」と, 本件補正発明にける「クラウドリソース」とは, “クラウド側”である点で共通するので, 引用発明における「サーバ・インスタンスからの応答が,前記ローカル・システムに送信されると,前記トンネル・エージェント・サーバは,前記応答を暗号化し,前記トンネル・エージェント・クライアントにフォワードし,前記トンネル・エージェント・クライアントは,前記フォワードされた応答を復号し,前記クライアント・ソフトウェア・プログラムに送信する」ことと, 本件補正発明における「クラウドリソースから前記要求しているオンプレミスアプリケーションへ応答をフォワードするステップであって,前記応答は,セキュアトンネルを介して前記接続エージェントによりフォワードされる,ステップ」とは, “クラウド側から,要求している前記オンプレミスアプリケーションへ応答をフォワードするステップであって,前記応答は,セキュアトンネルを介して前記接続エージェントによりフォワードされるステップ”である点で共通する。 5.以上,上記1.~上記4.に検討したとおりであるから,本件補正発明と引用発明との,一致点,及び,相違点は,次のとおりである。 [一致点] オンプレミスプラットフォームにデプロイされたオンプレミスアプリケーションによりクラウドプラットフォームのクラウドリソースを消費するコンピュータ実施方法であって,前記方法は, 前記クラウドリソースを消費する要求を,前記オンプレミスアプリケーションから受信するステップであって,前記要求は,セキュアトンネルを介して,前記オンプレミスプラットフォームから前記接続エージェントへフォワードされる,ステップと, クラウド側から,要求している前記オンプレミスアプリケーションへ応答をフォワードするステップであって,前記応答とは,セキュアトンネルを介して前記接続エージェントによりフォワードされる,ステップと を具備することを特徴とするコンピュータ実施方法。 [相違点1] 本件補正発明においては,「オンプレミスアプリケーションは,前記クラウドプラットフォーム上にインストールされたアプリケーションランタイムの技術に対応する技術を用いて前記オンプレミスプラットフォームのオンプレミスローカル開発環境において開発され,クラウドアプリケーションランタイムは,前記クラウドアプリケーションランタイムを前記オンプレミスプラットフォームの他のシステムに公開することによって,前記オンプレミスプラットフォームに組み込まれ」るものであるのに対して, 引用発明においては,「開発環境」,及び,「クラウドアプリケーションランタイム」に関する言及がない点。 [相違点2] 本件補正発明においては,「クラウドアプリケーションランタイムは,オンプレミスプラットフォームの拡張を実装することによって,前記オンプレミスプラットフォームにおいて提供され」るものであるのに対して, 引用発明においては,「クラウドアプリケーションランタイム」が,どのように実施され,提供されるものであるかについての言及がない点。 [相違点3] 本件補正発明においては,「オンプレミスアプリケーションは,前記アプリケーションランタイムの前記ローカルバージョンとして前記オンプレミスプラットフォーム上にインストールされている前記クラウドアプリケーションランタイムにデプロイされ」るものであるのに対して, 引用発明においては,そのような言及がない点。 [相違点4] “クラウド側”に関して, 本件補正発明においては,「クラウドリソース」であるのに対して, 引用発明においては,「サーバインスタンス」である点。 第7.相違点についての当審の判断 1.[相違点1]について 本願明細書の段落【0017】に, 「クラウドアプリケーションランタイム132,クラウドアプリケーションランタイム136,及びアプリケーションランタイム150は,Apache Tomcat (TomEE)のJava(登録商標) Enterprise Edition,Lean Java(登録商標)サーバ(LJS)などのようなJava(登録商標)コンテナであり得る」, と記載されていて,この記載内容に従えば,本件補正発明における「クラウドアプリケーションランタイム」とは,“javaランタイム”を指すものと解される。 したがって,本件補正発明における「オンプレミスアプリケーション」とは,“クラウドから,オンプレミスプラットフォームにインストールされたjavaランタイムを用いて動作するjavaアプリケーション”であるといえる。 この点については,「オンプレミスアプリケーション」について,審判請求人が,原出願についての平成31年2月13日付けの意見書において, 「(1) この指摘については,本願明細書の段落0029に示されますように,オンプレミスアプリケーションは,例えば,Java(登録商標) Enterprise Edition 6 の技術を用いて,オンプレミスローカル開発環境において開発されます。」 と述べている点からも裏付けられる。 一方,引用発明においても,「トンネル・エージェント・クライアント」と,「トンネル・エージェント・サーバ」は,「javaプログラム」であるから,引用発明は,当該「javaプログラム」が動作するのに必要な,“javaランタイム”が,「ローカル・システム」上にインストールされている態様を含むものである。 ここで,引用発明における「クライアント・ソフトウェア・プログラム」が,どのように開発されたものであるか,引用発明には,特に言及されていないが,上記指摘のように,引用発明は,“ローカル・システム上に,javaランタイムがインストールされている”態様を含むものであって,“javaアプリケーションの開発環境”である「JDK」については,上記Iに引用した引用文献3の記載,及び,“JavaEE6”における「JDK」の使用を示す,上記Jに引用した引用文献4の記載にもあるとおり,本願の第1国出願前に,当業者には周知の技術事項であるから,“javaランタイムを有する”態様を含む引用発明において,「クライアント・ソフトウェア・プログラム」を,周知の「JDK」を用いて,「ローカル・システム上」で開発し,当該開発した「クライアント・ソフトウェア・プログラム」を,当該「ローカル・システム上」で使用するよう構成することは,当業者が適宜なし得る事項である。 そして,上記において検討したとおり,「クラウドアプリケーションランタイム」が,「javaランタイム」である以上,引用発明においても,「サーバ」側に,「クラウドアプリ-ケーションランタイム」を導入することは,当業者が適宜なし得る事項である。 よって,[相違点1]は,格別のものではない。 2.[相違点2]について 上記Kに引用した周知技術文献の記載内容にもあるとおり,「javaプログラム」が「拡張」として実装され,提供されることは,本願の第1国出願前に当業者には,周知の技術事項である。 よって,[相違点2]は,格別のものではない。 3.[相違点3]について 上記1.において検討した事項を踏まえると,引用発明は,“javaランタイム”を有する態様,即ち,“javaランタイム”がインストールされた態様を含むものであり,「クライアント・ソフトウェア・プログラム」は,“javaプログラム”として実装する態様を含むものあり,当該「実装」が,本件補正発明における「デプロイ」に相当するものであるから, 引用発明における“javaプログラム”である「クライアント・ソフトウェア・プログラム」は,ローカル・システム上の“javaランタイム”に「デプロイ」されることで使用されることは,本願の第1国出願前に,当業者には周知の技術事項である。 よって,[相違点3]は,格別のものではない。 4.[相違点4]について 引用発明における「サーバ・インスタンス」は,「クラウド・コンピューティング・システム」において,「ローカル・システム上」の「クライアント・ソフトウェア・プログラム」からの「要求」を受け付け,その「応答」を返す処理を行っているものであるから,その処理内容は,本件補正発明における「クラウドリソース」と同等である。 そして,本件補正発明における「クラウドリソース」は,当該「クラウドリソース」特有のサービス等を提供する点については,何ら示されていないので, 引用発明における「サーバ・インスタンス」と,本件補正発明における「クラウドリソース」とは,表現の差こそあれ,実質的な構成に格別の相違があるとは認められない。 よって,[相違点4]は,格別のものではない。 5.上記1.~上記4.において検討したとおり,[相違点1]~[相違点4]は格別のものではなく,本件補正発明の構成によってもたらされる効果も,引用発明,及び,引用文献2~引用文献4に記載の技術事項から当業者ならば容易に予測することができる程度のものであって,格別のものとはいえない。 第8.むすび したがって,本件補正発明は,本願の第1国出願前に日本国内又は外国において頒布された刊行物に記載された発明又は電気通信回線を通じて公衆に利用可能となった発明に基づいて当業者が容易に発明をすることができたものであるので,特許法29条2項の規定により特許を受けることができない。 よって,結論のとおり審決する。

審決本文(J-PlatPat)

J-PlatPatの審決検索トップを開きます。番号入力で「審判番号」を選び、下の番号を貼り付けて検索してください。

J-PlatPat 審決検索を開く
2020-001740

番号・当事者・条文・審決分類・商標の称呼が一致(または近い)審決を機械的に集めた候補です。判断内容は各審決の本文でご確認ください。

同じ当事者の審決5件(エスアーペー エスエー)
  • 2025-006444拒絶査定不服審判 / 2026-02-10 / 原査定取消(特許/登録すべき)クエリパイプライン実行のスケジューリング
    同じ当事者: エスアーペー エスエー
  • 2018-003671拒絶査定不服審判 / 2019-10-23 / 原査定取消(特許/登録すべき)オンプレミスとクラウドプラットフォーム間のハイブリッドアプリケーション動作
    同じ当事者: エスアーペー エスエー
  • 2016-010946拒絶査定不服審判 / 2017-12-04 / 原査定取消(特許/登録すべき)ビジネスプロセスのロギングのためのシステムおよび方法
    同じ当事者: エスアーペー エスエー
  • 2016-018384拒絶査定不服審判 / 2017-11-28 / 原査定取消(特許/登録すべき)マルチレベルストレージアーキテクチャ内の記録の削除
    同じ当事者: エスアーペー エスエー
  • 2016-016976拒絶査定不服審判 / 2017-08-04 / 原査定取消(特許/登録すべき)部分的マージ
    同じ当事者: エスアーペー エスエー
同じ論点・分野の審決(審決分類)2,453件(121・G06F)
  • 2025-005007拒絶査定不服審判 / 2026-08-19 / 原査定取消(特許/登録すべき)共有レコードのクライアント更新にルールの適用によるシステム生成更新のトリガ
    共通の審決分類: 121・G06F
  • 2024-009005拒絶査定不服審判 / 2026-08-18 / 原査定取消(特許/登録すべき)モジュール式空気冷却および分配システムおよび方法
    共通の審決分類: 121・G06F
  • 2025-008882拒絶査定不服審判 / 2026-08-18 / 原査定取消(特許/登録すべき)情報処理装置、認証器、それら方法およびプログラム
    共通の審決分類: 121・G06F
  • 2025-007124拒絶査定不服審判 / 2026-08-18 / 原査定取消(特許/登録すべき)記憶装置
    共通の審決分類: 121・G06F
  • 2025-014602拒絶査定不服審判 / 2026-08-13 / 原査定取消(特許/登録すべき)ペン入力装置用カバー部材、及びペン入力装置
    共通の審決分類: 121・G06F

メモ・タグ(非公開)

あなただけに表示されます。審決本文の公開範囲は変わりません。

メモとタグは Pro の機能です。ログイン/Proでメモを保存