(57)【特許請求の範囲】
【請求項１】
自動化ソリューション（１２〜１６）をいわゆるクラウド（１０）に接続するための複数のクラウドゲートウェイ（２０〜２４）のソフトウェアアップデートを行う方法であって、前記クラウド（１０）内のコンピューターノードとして機能する処理ユニット（５４）が、
前記クラウドゲートウェイ（２０〜２４）のそれぞれに接続される前記自動化ソリューション（１２〜１６）の各危険性に応じて前記クラウドゲートウェイ（２０〜２４）の順位を求める順位決定ステップと、
前記危険性が最も低い前記クラウドゲートウェイ（２０〜２４）又は前記クラウドゲートウェイ（２０〜２４）の群を更新する更新ステップと、
該更新ステップで行われた更新の結果を確認し、該確認の結果に従って、前記更新が失敗なく行われたことが確認された場合、前記危険性がその次に高い前記クラウドゲートウェイ（２０〜２４）又は前記クラウドゲートウェイ（２０〜２４）の群に関して更新を継続するか、又は、前記更新が失敗なく行われなかったことが確認された場合、更新を中止する、確認ステップと、
前記危険性が最も高い前記クラウドゲートウェイ（２０〜２４）又は前記クラウドゲートウェイ（２０〜２４）の群についても更新が行われるまで、更新と前記確認ステップとを繰り返す反復ステップとを少なくとも実行し、さらに、
前記順位決定ステップにおいて前記クラウドゲートウェイ（２０〜２４）の順位を求める際、前記自動化ソリューション（１２〜１６）に含まれる機能ユニットの危険性を考慮し、その危険性を、前記クラウド（１０）において提供される所与の又は設定可能なデータベース（３０）に基づいて更に求めるステップを実行する、方法。
【請求項２】
前記データベース（３０）内のデータには、前記機能ユニットそれぞれの前記危険性に関する推定値が含まれる、請求項１に記載の方法。
【請求項３】
前記順位決定ステップにおいて、前記自動化ソリューション（１２〜１６）に含まれる機能ユニットの動作状態を考慮する、請求項１又は２に記載の方法。
【請求項４】
前記機能ユニットの動作状態に対するデータが、前記クラウド（１０）において提供される更なるデータベース（３２）内で利用可能にされる、請求項３に記載の方法。
【請求項５】
前記クラウドゲートウェイ（２０〜２４）の順位を求める評価サービス（３４）が前記処理ユニット（５４）により前記クラウド（１０）内に提供され、
前記クラウドゲートウェイ（２０〜２４）又は前記クラウドゲートウェイ（２０〜２４）の群の更新、該更新の結果の確認、及び当該先行の更新の結果に応じた更新の中止又は更新の継続を行う更新サービス（３６）が前記処理ユニット（５４）により前記クラウド（１０）内に提供される、請求項１〜４のいずれか１項に記載の方法。
【請求項６】
クラウド（１０）内のコンピューターノードとして機能する処理ユニット（５４）で実行されるコンピュータープログラム（４０）であって、請求項１〜５のいずれか１項に記載の方法を実行するためのプログラムコードを含む、コンピュータープログラム。
【請求項７】
プログラムコードを記憶したコンピューター可読データ媒体からなるコンピュータープログラム製品であって、
クラウド（１０）内のコンピューターノードとして機能する処理ユニット（５４）で前記プログラムコードが実行されると、当該処理ユニット（５４）が請求項１〜５のいずれか１項に記載の方法を実行する、コンピュータープログラム製品。
【請求項８】
クラウド（１０）内のコンピューターノードとして機能する処理ユニット（５４）と相互作用することができる電子的に読み出し可能なコンピュータープログラムを記憶したデジタル記憶媒体であって、前記コンピュータープログラムが請求項６に記載のプログラムコードを含むコンピュータープログラムである、デジタル記憶媒体。
【請求項９】
クラウド（１０）内のコンピューターノードとして機能する処理ユニットであって、
請求項６に記載のコンピュータープログラムがロードされたメモリ（５２）を備え、該コンピュータープログラムを実行する当該処理ユニットが、請求項１〜５のいずれか１項に記載の方法を実行する、処理ユニット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、第一に、クラウドゲートウェイにおけるソフトウェアアップデートを行う方法に関する。本発明はさらに、その方法が実装されたコンピュータープログラム、及び、その方法を実行する、例えばクラウド内のコンピューターノードの形態の処理ユニットに関する。
【背景技術】
【０００２】
クラウドサービスの利用は、ますます一般的になっており、それは、いわゆるＩＩｏＴ用途（ＩＩｏＴ＝Industrial Internet of Things：産業用のモノのインターネット）についても言える。この技術的背景において、例えば、センサー及びアクチュエーター、自動化デバイス、例えば、プログラマブルロジックコントローラー及び分散フィールドデバイス等、又は、例えば、上述の自動化デバイス並びに接続されるセンサー及びアクチュエーターのネットワークの形態の全自動化システムが、以下では短くゲートウェイと称する、いわゆるクラウドゲートウェイを介してクラウドに接続される。そのようなゲートウェイは、特に、自動化ソリューションに含まれる機能ユニット（自動化ソリューションのセンサー、アクチュエーター、自動化デバイス、機械、連結機械、及び装置又は部分装置等）又はそのような機能ユニットの群と、クラウドとのインターフェースを構成する、それぞれの自動化ソリューションの場所に設置されるモジュール又はデバイスである。ゲートウェイは、上述のタイプの機能ユニットからデータを収集し、このデータを、自動化機能／自動化サービスを有するそれぞれのクラウドプラットフォームに転送する。そのような転送に関連して、任意選択のデータの事前処理及び／又はデータの暗号化を行うことができる。制御機能がクラウド内のサービスとして実装され、制御の範囲内で自動化ソリューションから生じるデータが処理され、クラウド内で自動化ソリューションの機能ユニットに対する１つ又は複数の制御変数として確定されたデータが生成される場合、ゲートウェイによって、閉制御ループを形成することもできる。
【０００３】
各ゲートウェイは、技術的プロセスを制御及び／又は監視するそれぞれの自動化ソリューション又は自動化ソリューションの個々の機能ユニットの群とクラウドとの間で、独立したインターフェースとして機能する。ＩＩｏＴサービスを利用するために、自動化ソリューションは、少なくとも１つのゲートウェイ又はゲートウェイの群を介してクラウドに接続される。クラウドに接続される多数の自動化ソリューションには、対応して多数のゲートウェイも存在する結果となる。言語上の簡略化のため、ただし、より広範な普遍性を放棄することなく、以下の記載は、１つの自動化ソリューションに対して、「それ自身の」それぞれの自動化ソリューションをクラウドに接続する、それぞれちょうど１つのゲートウェイがあることを基本として引き続き行われる。
【０００４】
上述の意味でゲートウェイとして機能するデバイスは、好適な方法でインターネットに接続され、インターネットを介して、基本的にそれ自体既知の様式で、それぞれのクラウドプラットフォーム及びそこで提供されるＩＩｏＴサービスとの接続が行われる。しかしながら、インターネットへの接続は、並々ならぬセキュリティリスクを意味する。このリスクは、ゲートウェイ自体にとどまらず、それぞれの自動化ソリューションにも及ぶ。これは、ゲートウェイの故障又は不具合の場合、自動化ソリューションも直接の影響を受けるためである。したがって、インターネットを通じたゲートウェイの脆弱性は、ゲートウェイにそれぞれ接続された自動化ソリューションに対する攻撃にも利用される可能性がある。この理由から、ゲートウェイのシステムソフトウェアの機能又はセキュリティのアップデート等（以下ではまとめてソフトウェアアップデート又は短く更新と称する）は、非常に重要である。
【０００５】
しかしながら、上述のタイプの更新は、それ自体、ゲートウェイの通常どおりの機能に対する基本的なリスクを呈する。更新が不完全であるか又は失敗すると、多くの場合、ゲートウェイの通常どおりの機能はもはや与えられなくなる。したがって、このことも、接続された自動化ソリューションの機能を損ない、又はその機能に完全なる疑問を呈する。更新が不完全であるか又は失敗したことに起因するゲートウェイの不具合は、ゲートウェイによって送信されるデータが利用可能でなくなる又は通常どおりの形では利用可能でなくなるという結果をもたらし得る。更新が不完全であるか又は失敗したことに起因して生じるこの又は別の障害は、潜在的に壊滅的な結果を伴う自動化ソリューションにおける不具合又は自動化ソリューションの規定外の振舞いをもたらし得る。
【０００６】
目下のところ、１つ又は複数のクラウドゲートウェイに対するソフトウェア更新において、それぞれのクラウドゲートウェイを介してクラウドに接続される関連するデバイスの種類は考慮されない。したがって、ソフトウェア更新の際に、ソフトウェア更新が失敗したときにリスクが生じる可能性が考慮に入れられない場合がある。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
したがって、本発明の課題は、この問題に対する解決策を提示することにある。
【課題を解決するための手段】
【０００８】
上記課題は、本発明によれば、請求項１に記載の特徴を有する、複数のクラウドゲートウェイ（ゲートウェイ）のソフトウェアアップデートを行う方法によって解決される。このために、自動化ソリューションをクラウドに接続するための複数のゲートウェイのソフトウェアアップデート（更新）を行う方法は、クラウド内のコンピューターノードとして機能する処理ユニットが実行する以下のステップを含む。
【０００９】
第１のステップにおいて、ゲートウェイの順位を、ゲートウェイに接続される各自動化ソリューションの危険性に応じて確定する。
【００１０】
第２のステップにおいて、最も低い危険性を有するゲートウェイ又はゲートウェイの群の更新を行う。
【００１１】
第３のステップにおいて、先行の第２のステップで行われた更新の結果をチェックする。
【００１２】
第４のステップにおいて、先行の更新の結果をチェックする第３のステップにおいて、更新が失敗なく行われたことが確認された場合、更新は、その次の高さの危険性を有するゲートウェイ又はゲートウェイの群へと継続され、又は、先行の更新の結果をチェックする第３のステップにおいて、更新が失敗なく行われなかったことが確認された場合、更新が中止される。
【００１３】
先行の更新の結果をチェックする第３のステップにおいて、更新が失敗なく行われたことが確認され、続いて、それに対応して第４のステップが実行された場合、その後、第３のステップ及び第４のステップが繰り返され、更新は、最も高い危険性を有するゲートウェイ又はゲートウェイの群についても更新が行われるまで継続されるか、又は、更新は、途中で、更新が失敗したことに基づいて中止される。
【００１４】
本明細書において提案される方法の利点は、更新が、ゲートウェイの求められた順位に応じて、最も低い危険性を有するゲートウェイ又はゲートウェイの群から開始されることにある。障害が発生しても、より高い危険性を有するゲートウェイ及び特にその自動化ソリューションには影響を与えない。更新が失敗したことに基づいて方法が中止された場合、最終的に全てのゲートウェイ及び中でも最も高い危険性を有するゲートウェイ又はゲートウェイの群に対する更新が正常に実行されるまで、失敗の原因を突き止めて排除することができ、後の時点でこの方法を新たに実行することができる。
【００１５】
本発明の有利な形態は、従属請求項の主題である。この場合に用いられる参照は、それぞれの従属請求項の特徴による独立請求項の主題の更なる発展を示す。これは、参照される従属請求項の特徴の組合せに対する独立した客観的保護を得ることを放棄するものとして理解されるべきではない。さらに、特許請求の範囲の説明に関して及び従属請求項の特徴をより具体的に説明する場合の記載に関して、それぞれ先行する請求項、及びデバイスをいわゆるクラウドに安全に接続する具体的な方法のより一般的な実施形態における制限は存在しないことが前提となる。したがって、従属請求項の態様に関する記載における各参照は、特に記載されていなくても、明示的に任意選択の特徴の記載として読まれるべきである。
【００１６】
概して、ゲートウェイの順位は、それぞれ接続された自動化ソリューションの求められた危険性に基づいて与えられる。本方法の実施形態において、個々の自動化ソリューションの危険性を確定するために、個々の自動化ソリューションに含まれる機能ユニット（アセット）の危険性が考慮される。したがって、本方法の実施形態において、ゲートウェイの順位を確定する際、ゲートウェイに接続された各自動化ソリューションの危険性に応じて、自動化ソリューションに含まれる機能ユニット（アセット）の危険性が考慮される。また、この危険性は、クラウドにおいて提供されるデータベース（アセットメタデータベース）の所与の又は設定可能なデータに基づいて求められる。そのようなデータベースは、危険性を確定する際に考慮されるデータの動的な適応を可能にする。この適応は、例えば、それぞれの自動化ソリューションのオペレーター及び／又はクラウドプラットフォームのオペレーターによって行うことができる。
【００１７】
危険性を確定するためにそのようなデータベースに基づく方法の特定の実施形態において、データベース内のデータには、それぞれの機能ユニット（アセット）の危険性に関する推定値が対応する。これにより、例えば、自動化ソリューションのスタートアップの際、それぞれの自動化ソリューションに応じた危険性に関する値を提供することができ、したがって、例えば、温度調節器は、比較的重要でない機能とセキュリティ関連機能との双方を実行することができる。したがって、それぞれの自動化ソリューションのプログラマー、スタートアップエンジニア、又はオペレーターによって推定値を入力することが可能であることにより、それぞれの自動化ソリューションの実状を特に簡単に考慮することができる。
【００１８】
本方法の更なる一実施形態において、ゲートウェイに接続された各自動化ソリューションの危険性に応じてゲートウェイの順位を求める際、代替的又は付加的に、自動化ソリューションに含まれる機能ユニット（アセット）の動作状態が考慮される。このようにして、例えば、特に潜在的に重要な１つの又は少なくとも１つの自動化ソリューションを有するゲートウェイの危険性を、例えば、動作中でない場合には引き下げることができる。動作状態を考慮することにより、本方法は、自動化ソリューション及び自動化ソリューションに含まれる機能ユニットのカテゴリー分けによって表される静的な状況だけでなく、現状、すなわち例えば、自動化ソリューションの状態（自動化ソリューション又は自動化ソリューションに含まれる機能ユニットが稼働しているか稼働していないか、又は別の理由（メンテナンス等）で動作していない）にも適合させることが可能である。
【００１９】
機能ユニットの動作状態に対するデータは、クラウドにおいて提供される更なるデータベース（アセット状態データベース）内で利用可能にされることが有利であり、したがって、ゲートウェイの順位を求めるためにクラウド内で、アセットメタデータベース内のデータと同様に利用可能である。
【００２０】
本方法の更なる一実施形態において、本方法は、一方では、評価サービス（重大性ランク付けサービス）及び更新サービス（ソフトウェア更新ロールアウトサービス）によって、それぞれクラウド内で実行される。評価サービス（重大性ランク付けサービス）によって、ゲートウェイの順位が求められる。更新サービス（ソフトウェア更新ロールアウトサービス）によって、ゲートウェイ又はゲートウェイの群の更新、更新の結果のチェック、及び先行の更新の結果に応じた更新の中止又は更新の継続が行われる。したがって、本明細書において提案される方法の本質的な機能は、互いに分離される。それにより、ソフトウェアにおける方法の実装、及びその結果であるコンピュータープログラムのメンテナンスが容易になる。
【００２１】
最初に述べた課題は、本明細書において以下に記載される方法を実行する手段を含むことで、クラウド内のノードコンピューターとして機能する処理ユニット等によっても解決される。本発明は、ソフトウェアに実装されることが好ましい。したがって、本発明は、一方では、処理ユニットの形態のコンピューターによって実行可能なプログラムコード命令を有するコンピュータープログラム、他方では、そのようなコンピュータープログラムを備える記憶媒体、すなわち、プログラムコード手段を備えるコンピュータープログラム製品、また最後に、本方法及びその形態を実行する手段としてそのようなコンピュータープログラムをメモリにロードされた又はロード可能な処理ユニットである。
【００２２】
更なる記載では、無用な繰返しを避けるために、複数のクラウドゲートウェイのソフトウェアアップデートを行う方法及び可能な形態に関して記載した、特徴及び詳細は、当然ながら、その方法を実行するために所定の及び確立された処理ユニットに伴って及びそれに関しても当てはまり、また逆もしかりである。それにより、処理ユニットが方法を実行する手段を含むことで、処理ユニットは、個々の又は複数の方法の特徴にも対応して開発することができる。
【００２３】
複数のクラウドゲートウェイのソフトウェアアップデートを行う以下に記載の方法は、コンピュータープログラムの形態、場合によっては分散コンピュータープログラムの形態で自動的に実行されるように実装される。コンピュータープログラムは、例えば、クラウド内のノードコンピューターとして機能する処理ユニットによって実行されるように意図される。方法ステップ又は方法ステップシーケンスが以下に記載される場合、それらは、ユーザーの介入なしに自動的に、コンピュータープログラムに基づいて又はコンピュータープログラムの制御下で行われる動作に関する。「自動的」という用語が使用される場合、少なくとも、関連する動作が、コンピュータープログラムに基づいて又はコンピュータープログラムの制御下で行われることを意味する。
【００２４】
当業者であれば、本明細書において提案される方法をソフトウェアに実装する代わりに、同様に、ファームウェア、又はファームウェア及びソフトウェア、又はファームウェア及びハードウェアにおいて実装することも可能であることが自明である。したがって、本明細書に提示される記載は、ソフトウェアという用語又はコンピュータープログラムという用語が、別の実装可能性、すなわち、特に、ファームウェア、又はファームウェア及びソフトウェア、又はファームウェア及びハードウェアにおける実装も含むように意図される。
【００２５】
以下、本発明の実施例を、図面に基づいてより詳細に説明する。互いに対応する対象物又は要素は、全ての図において同じ参照符号が付されている。
【００２６】
実施例は、本発明を限定するものとして理解すべきではない。むしろ、本開示の枠組内で、拡張形態及び変更形態も完全に可能であり、特に、それらは、当業者であれば、例えば、課題の解決のために、全般的な又は特定の記載部分に関して記載される並びに特許請求の範囲及び／又は図面に含まれる個々の特徴又は方法ステップの組合せ又は変更によって導き出すことができ、また、組合せ可能な特徴によって新たな主題又は新たな方法ステップ若しくは方法ステップシーケンスをもたらす。
【図面の簡単な説明】
【００２７】
【図１】いわゆるクラウドと、クラウドに接続されるクラウドゲートウェイと、同じくクラウドに接続されるとともに、クラウドゲートウェイを介してクラウドに、及び例えば、クラウドにおいて提供されるＩＩｏＴサービスを有するクラウドプラットフォームに接続される自動化ソリューションとを示す図である。
【図２】本明細書において提案される、クラウドゲートウェイの群のソフトウェアアップデートを行う方法を説明する基礎としての概略的に簡略化された図である。
【図３】本明細書において提案される方法が実装されたコンピュータープログラムの基礎としてのフロー図の形態を概略的に簡略化された図である。
【発明を実施するための形態】
【００２８】
図１における図は、問題を概略的に簡略化された形態で例示するために、ＩＩｏＴサービス（IIoT Services）を有するクラウド１０と、技術的プロセスの制御及び／又は監視を行う接続された自動化ソリューション１２、１４、１６とを示している。自動化ソリューション１２〜１６は、様々な重要な自動化ソリューション１２〜１６とすることができる。このために、図１の図において、概略的に簡略化された例が示されている。これによれば、第１の自動化ソリューション１２は、重要なタービンを備えるエネルギー発生設備（パワープラント）のための自動化ソリューションであり、第２の自動化ソリューション１４は、油又はガス採掘のいわゆる水圧破砕法（フラッキングプロセス）のための自動化ソリューションであり、第３の自動化ソリューション１６は、例えばＣＮＣ機械（工作機械）による製造プロセスのための自動化ソリューションである。各自動化ソリューション１２〜１６は、少なくとも１つの固有のクラウドゲートウェイ２０、２２、２４を介してクラウド１０に接続される。
【００２９】
これまでのところ、クラウドゲートウェイ２０〜２４（以下では短く単にゲートウェイ２０〜２４と称する）として機能するデバイスのシステムソフトウェアのアップデートは、それぞれ接続された自動化ソリューション１２〜１６を考慮することなく行われている。そのようなアップデート（以下では短く更新と称する）における障害の際、重要なタービンを備えるエネルギー発生設備（第１の自動化ソリューション１２）における影響よりも、製造プロセス（第３の自動化ソリューション１６）における影響の方が、基本的には重大性が低いことは容易に想像できる。これまでのように、ゲートウェイ２０〜２４の更新が利用可能である場合に、この更新が、クラウド１０に接続される全てのゲートウェイ２０〜２４又はクラウド１０に接続されるゲートウェイ２０〜２４の群において同時に行われるのであれば、障害時に、重要度の低い第３の自動化ソリューション１６だけでなく、特に重要な第１の自動化ソリューション１２においても不具合のおそれがある。
【００３０】
このことは、ゲートウェイ２０〜２４の群における個々のゲートウェイ２０〜２４の更新の際、ゲートウェイ２０〜２４にそれぞれ接続された自動化ソリューション１２〜１４の順位が求められ、かつ考慮される、本明細書に提示される手法によって、回避される。求められた順位は、それぞれの自動化ソリューション１２〜１６の故障又は不具合に伴う潜在的な危険（重大性）を表す。この順位を決定付ける評価基準は、以下では危険性（重大性）と称する。
【００３１】
危険性を確定するために、自動化ソリューション１２〜１６の枠組内でゲートウェイ２０〜２４に接続されるとともに、以下でアセットと称することもある機能ユニット、特に最初に述べたタイプの機能ユニットが、それぞれ一意の識別子（アセットＩＤ；例えば、Ａ１、Ａ２、Ａ３等）を有することを利用する。同様に、ゲートウェイ２０〜２２も、一意の識別子（ゲートウェイＩＤ；例えば、Ｇ１、Ｇ２、Ｇ３等）を有する。アセットメタデータベースとして機能するデータベース３０（図２）において、ゲートウェイ２０〜２４によってクラウド１０に接続される各機能ユニット（アセット）に対するデータが、クラウド１０内に記憶される。このデータは、それぞれの機能ユニット（アセット）に伴う危険性（重大性）のコード化を含み、これは、例えば、それぞれの機能ユニットのオペレーター又はその機能ユニットに含まれる自動化ソリューション１２〜１６の開発者によって推定値として与えられる。データは、任意にはそれぞれの機能ユニットの機能のコード化を更に含み、したがって、例えば、機能ユニットがセンサー、アクチュエーター、レギュレーター等のいずれとして機能するのかを自動的に検出可能にする。最後に、データは、任意に、機能ユニットの製造業者、モデル、及び／又は現在のソフトウェアバージョン等の表示を含む。これらのデータ（メタデータ）は、個々の機能ユニットの構成の際、それぞれのゲートウェイ２０〜２４への接続の際、又は自動化ソリューション１２〜１６のスタートアップの際に与えられ、クラウド１０内のデータベース３０において、それぞれのアセットＩＤのもとで呼出し可能な様式で保存される。
【００３２】
基本的に任意選択の、アセット状態データベース（アセット状態ＤＢ）として機能する更なるデータベース３２（図２）は、それぞれのアセットＩＤのもとで、それぞれの機能ユニットの動作状態のコード化を含む。これに関して検出される状態として、例えば、「稼働中」（running）、「待機中」（waiting）、「メンテナンス中」（under Maintenance）等の動作状態が考慮される。
【００３３】
データベース３０内のデータに基づいて、又は任意にはデータベース３０及び更なるデータベース３２内のデータに基づいて、個々の自動化ソリューション１２〜１６の危険性が評価され、ゲートウェイ２０〜２４の順位が求められる。これに関して、図２における図は、上述したデータベース３０、３２と、自動化ソリューション１２〜１６（図１）をクラウド１０に接続するゲートウェイ２０〜２４と、評価サービス３４（重大性ランク付けサービス）及び更新サービス（ソフトウェア更新ロールアウトサービス）３６とを示している。
【００３４】
クラウド１０において提供される評価サービス３４によって、ゲートウェイ２０〜２４の順位が求められる。このために、評価サービス３４は、データベース３０（アセットメタデータＤＢ）、又は任意にはデータベース３０（アセットメタデータＤＢ）及び更なるデータベース３２（アセット状態ＤＢ）にアクセスし、接続された全てのゲートウェイ２０〜２４に関し、同様にゲートウェイ２０〜２４に接続された機能ユニット（アセット）に関して、それぞれの自動化ソリューション１２〜１６の危険性を確定する。ここではまず、例えば、各ゲートウェイ２０〜２４に関して、ゲートウェイ２０〜２４に接続された個々の機能ユニット（アセット）のそれぞれの危険性（重大性スコア）を、少なくとも１つのデータ又はそれぞれの機能ユニットに関してデータベース３０（アセットメタデータＤＢ）内に保存された複数のデータの関数として求める。
重大性スコア（Ａ１）＝ｆ（ｄ１．．．ｄｎ）
ここで、ｄ１〜ｄｎは、データベース３０（アセットメタデータＤＢ）内で利用可能なデータ、例えば、機能ユニット（アセット）に伴う危険性に対する推定値（ベンダークリティカリティ推定値）を表す。更なるステップにおいて、そうして求められた、ゲートウェイ２０〜２４に接続された個々の機能ユニット（アセット）の危険性から、それぞれのゲートウェイ２０〜２４に接続された自動化ソリューション１２〜１６の危険性を確定する。それぞれ１つのゲートウェイ（ＣＧ１、ＣＧ２、ＣＧ３、．．．）２０〜２４の危険性を確定するために、ここでは、例えば、ゲートウェイに接続された機能ユニット（アセット）に関して求められた危険性を合計して形成したものを考慮する。
重大性スコア（ＣＧｘ）＝
重大性スコア（Ａ１（ＣＧｘ））＋重大性スコア（Ａ２（ＣＧｘ））＋．．．
【００３５】
したがって、個々のゲートウェイ２０〜２４のそれぞれの危険性の自動的に処理できる、特に数値的なコード化が利用可能である。これに基づいて、ゲートウェイ２０〜２４の順位が求められる。最終的に、この順位に基づいて、更新サービス３６によるゲートウェイ２０〜２４の更新が行われ、すなわち、更新は、求められた順位に応じて、まず、求められた最も低い危険性を有するゲートウェイ２０〜２４において行われ、そして最後に、求められた最も高い危険性を有するゲートウェイ２０〜２４において行われるようになっている。求められた最も低い危険性と求められた最も高い危険性との間にある危険性を有するゲートウェイ２０〜２４に関して、更新は、求められた危険性の順序で行われる。
【００３６】
必要に応じて、ゲートウェイ２０〜２４の順位を求める際、グループ化を行うことができ、例えば、特に低い危険性を有するゲートウェイ２０〜２４は第１の群に割り当てられ、中間の危険性を有するゲートウェイ２０〜２４は第２の群に割り当てられ、特に高い危険性を有するゲートウェイ２０〜２４は第３の群に割り当てられるようになっている。更新サービス３６による更新は、まず、第１の群のゲートウェイ２０〜２４に対して同時に又は略同時に行われ、その後、第２の群のゲートウェイ２０〜２４に対して同時又は略同時に行われ、更にその後、第３の群のゲートウェイ２０〜２４に対して同時に又は略同時に行われる。
【００３７】
更新サービス３６の機能は、１つ又は複数のゲートウェイ２０〜２４に対して更新のダウンロード及び適用を制限するだけでなく、特に、更新過程の制御も含む。すなわち、ゲートウェイ２０〜２４又はゲートウェイ２０〜２４の群に対する更新の後、更新が成功した場合にのみ、求められた順位に応じて更新が継続される。これにより、更新が失敗したか又は不完全な場合に、低い危険性及び対応する順位を有する１つ又は複数のゲートウェイ２０〜２４にしか影響を与えないことが保証される。より高い危険性を有するゲートウェイ２０〜２４には影響がなく、このゲートウェイを介してクラウド１０に接続される自動化ソリューション１２〜１６は、引き続き稼働する。
【００３８】
詳細には、自動化ソリューション１２〜１６がゲートウェイ２０〜２４を介していわゆるクラウド１０に接続される、特に、クラウド１０において提供されるクラウドプラットフォームに接続される、本明細書において提案されるクラウドゲートウェイ（ゲートウェイ）２０〜２４のソフトウェアアップデート（更新）を行う方法は、ソフトウェア（コンピュータープログラム４０）において方法を実装する、図３における図に例としてフロー図の形態で示される以下のステップを含む。
【００３９】
まず、第１のステップ４２において、ゲートウェイ２０〜２４の順位を、各ゲートウェイ２０〜２４に接続された上記又は各自動化ソリューション１２〜１６の危険性に応じて求める。これは、クラウド１０において提供される、特にそれぞれのクラウドプラットフォームに含まれる評価サービス３４によって行われる。この場合、評価サービス３４の機能は、例えば、上述の機能を含む。
【００４０】
第２のステップ４４では、第１のステップ４２から確立されたゲートウェイ２０〜２４の順位によって、最も低い危険性を有するゲートウェイ２０〜２４又はゲートウェイ２０〜２４の群の更新を試みる。
【００４１】
第３のステップ４６では（より正確には、第３のステップ４６の１度目の実行において）、先行の第２のステップ４４で行われた更新の結果がチェックされる。これは、例えば、プロトコルデータの自動的なチェック、及び／又は更新によって影響を受ける１つ若しくは各ゲートウェイ２０〜２４のバイタルサイン監視に基づいて行われる。第３のステップ４６におけるチェックの結果に応じて、更新が中止されるか又は第４のステップ４８に分岐する。第３のステップ４６におけるチェックにおいて、先行の更新（第２のステップ４４）が失敗なく行われなかったことが判明した場合、更新は中止される（プログラムの終了５０への分岐）。第３のステップ４６におけるチェックにおいて、先行の更新（第２のステップ４４）が失敗なく行われたことが判明した場合、更新は第４のステップ４８へと継続される。
【００４２】
第４のステップ４８において、更新は、先行の更新と比べてその次の高さの危険性を有するゲートウェイ２０〜２４又はゲートウェイ２０〜２４の群へと継続される。
【００４３】
その後、最も高い危険性を有するゲートウェイ２０〜２４又はゲートウェイ２０〜２４の群についても更新が行われるまで、第３のステップ４６に戻り、そこで、先行の更新（ステップ４８）が成功したか成功していないかをチェックする。
【００４４】
最も高い危険性を有するゲートウェイ２０〜２４又はゲートウェイ２０〜２４の群について更新が行われると、この方法は終了し（プログラムの終了５０）、ゲートウェイ２０〜２４に対するソフトウェアアップデートが完了する。この方法中、ゲートウェイ２０〜２４又はゲートウェイ２０〜２４の群における更新が成功しなかったことが確認された場合（第３のステップ４６）、この方法は即座に中止される。これまでに行われた１つ又は複数の更新によって影響を受けない上記又は各ゲートウェイ２０〜２４の機能性は、依然として与えられている。更新が予め求められた順位に応じて、ひいては各ゲートウェイ２０〜２４に対応する危険性に応じて行われることから、高い危険性を有するゲートウェイ２０〜２４は、より低い危険性を有する少なくとも１つのゲートウェイ２０〜２４に対する更新が既に正常に行われ、それにより、その後の全ての更新も正常に行われ得ることを想定することができる場合にのみ更新されることが保証される。
【００４５】
図３に概略的に簡略化されて示されているように、本明細書に提示される方法及び場合によっては個々の又は複数の実施形態が実装されたコンピュータープログラム４０は、処理ユニット５４、例えば、クラウド１０内のコンピューターノードとして機能する処理ユニット５４のメモリ５２にロードされ、複数のクラウドゲートウェイ２０〜２４のソフトウェアアップデート（更新）を行う処理ユニット５４の動作の際に実行される。
【００４６】
これまでは、各自動化ソリューション１２〜１６が、ちょうど１つの又は少なくとも１つの固有のクラウドゲートウェイ２０〜２４を介してクラウド１０に接続されることを前提としていた。本明細書において提案される手法を用いる場合、当然ながら、クラウドゲートウェイ２０〜２４を介して複数の自動化ソリューション１２〜１６がクラウド１０に接続されている状況にも対処可能である。例えば、関連するゲートウェイ２０〜２４に関して、そのゲートウェイ２０〜２４を介してクラウド１０に接続される個々の自動化ソリューション１２〜１６の危険性を求め、それぞれのゲートウェイ２０〜２４の順位を決定する際に、求められた最も高い危険性のみを考慮することが考えられる。
【００４７】
本発明を実施例によって比較的詳細に説明及び記載したが、本発明は、開示している例に限定されず、当業者であれば、本発明の保護範囲から逸脱することなく、本発明から別の変形形態を導き出すことができる。
【００４８】
したがって、本明細書に提示された記載の個々の重要な態様は、以下に短く要約することができる。自動化ソリューション１２〜１６がクラウドゲートウェイ２０〜２４を介してクラウド１０に接続される、複数のクラウドゲートウェイ２０〜２４のソフトウェアアップデート（更新）を行う方法が提供される。本方法は、接続された自動化ソリューション１２〜１６の危険性に応じて、クラウドゲートウェイ２０〜２４の順位を求めることに基づく。この順位から、更新の順序が得られる。その後、最も低い危険性を有するクラウドゲートウェイ２０〜２４又はクラウドゲートウェイ２０〜２４の群から更新を開始する。続いて、更新を継続する前に、先行のステップで行われた更新の結果をチェックする。先行の更新の結果をチェックするステップにおいて、更新が失敗なく行われたことが確認された場合、更新は、その次の高さの危険性を有するクラウドゲートウェイ２０〜２４又はクラウドゲートウェイ２０〜２４の群へと継続される。先行の更新の結果をチェックするステップにおいて、更新が失敗なく行われなかったことが確認された場合、更新は全て中止される。更新が中止されなければ、先行の更新の結果をチェックするステップ及び更新を継続するステップは、最も高い危険性を有するクラウドゲートウェイ２０〜２４又はクラウドゲートウェイ２０〜２４の群についても更新が行われるまで繰り返される。
【図１】
0006741869.tif 000002
【図２】
0006741869.tif 000003
【図３】
0006741869.tif 000004