JP6545932B2 - エンタープライズ・システムにおけるソフトウェアの展開 - Google Patents

エンタープライズ・システムにおけるソフトウェアの展開 Download PDF

Info

Publication number
JP6545932B2
JP6545932B2 JP2014107787A JP2014107787A JP6545932B2 JP 6545932 B2 JP6545932 B2 JP 6545932B2 JP 2014107787 A JP2014107787 A JP 2014107787A JP 2014107787 A JP2014107787 A JP 2014107787A JP 6545932 B2 JP6545932 B2 JP 6545932B2
Authority
JP
Japan
Prior art keywords
package
file
files
extension
new
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2014107787A
Other languages
English (en)
Other versions
JP2014235738A (ja
JP2014235738A5 (ja
Inventor
ケネス トッド マリー,
ケネス トッド マリー,
ミロスラフ ヨルダノフ スパソフ,
ミロスラフ ヨルダノフ スパソフ,
アレグザンダー ジェームズ ミッチェル,
アレグザンダー ジェームズ ミッチェル,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Boeing Co
Original Assignee
Boeing Co
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 Boeing Co filed Critical Boeing Co
Publication of JP2014235738A publication Critical patent/JP2014235738A/ja
Publication of JP2014235738A5 publication Critical patent/JP2014235738A5/ja
Application granted granted Critical
Publication of JP6545932B2 publication Critical patent/JP6545932B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

航空宇宙、自動車及び造船産業の会社は、概念化、設計、製造、及びエンジニアリングを含む製品開発の複数の段階において、市販のCAD/CAMソフトウェアを使用する。エンタープライズ・システムにおける何千ものエンドユーザが製品開発に貢献している。
民間のベンダーは、CAD/CAMソフトウェアをベースパッケージとして提供する。ベースパッケージをインストールすることによって、各エンドユーザのコンピュータにソフトウェアのベースコンフィギュレーションがインストールされる。
拡張パッケージをインストールすることによって、その後ベースコンフィギュレーションに新たな機能性が追加される。通常、各拡張パッケージは、前のパッケージのすべてのファイルと、その上に追加のファイルを含む。ベースコンフィギュレーションは、第1拡張パッケージをインストールすることによってアップグレードされる。その後、アップグレードされたコンフィギュレーションは、第2拡張パッケージをインストールすることなどによってさらにアップグレードされる。
各拡張パッケージにより、前のすべてのファイルが置き換えられる。再コンフィギュレーションと認証には時間がかかる場合がある。エラーが発生しうる。適切に機能していた前のコンフィギュレーションが適切に機能しなくなる可能性がある。何千ものエンドユーザがいるエンタープライズ・システムでは、再コンフィギュレーションと認証は高くつく可能性がある。
より良い方法が望まれる。
本明細書の実施形態によれば、本方法において、エンタープライズ・システムにおいて展開されるソフトウェアが作成される。このソフトウェアには、ベースパッケージと拡張パッケージが含まれ、拡張パッケージには、ベースパッケージに対する重複ファイル及び新たなファイルが含まれる。この方法は、コンピュータを使用して、各ベースパッケージ及び拡張パッケージに対してファイルの特性を識別するインデックスを作成し、インデックスに記載されたファイルの特性を比較して、拡張パッケージの重複ファイル及び新たなファイルを識別し、新たなファイルのみを含む展開パッケージを作成することを含む。この方法はさらに、サイズによってパッケージを分類するステップを含むことが好ましく、展開パッケージを作成する前に、新たなファイルからユーザ固有情報を除去することによって、エンドユーザが、展開パッケージをインストールした後で、ユーザ固有情報を追加することができるようになるステップを含むことがさらに好ましい。上述の方法においては、展開パッケージはリンクされておらず、ソフトウェアは、各パッケージが少なくとも10万個のファイルを有するCAD/CAMソフトウェアであり、展開パッケージを作成することが、圧縮ファイルごとに数およびファイルサイズ要件を満たしながら圧縮ファイルを作成することを含む。
本明細書の別の実施形態によれば、システムは、拡張ソフトウェアパッケージ及び前のパッケージのファイルの特性を識別する、ファイルのインデックスを作成するようにプログラミングされたコンピュータを備える。拡張パッケージは、前のパッケージと、その上に加わった新たなファイルのすべてのファイルを含む。このコンピュータはさらに、インデックスに記載されたファイルの特性を比較して、拡張パッケージの重複ファイルと新たなファイルを識別し、拡張パッケージの新たなファイルのみを含む展開パッケージを作成するようにプログラミングされている。
本発明の別の実施形態によれば、製品は、コンピュータに拡張ソフトウェアパッケージのすべてのファイルの特性を識別させ、ファイルの特性を比較して拡張パッケージにおけるすべての重複ファイルを識別させ、また拡張パッケージの新たなファイルのみを含む展開パッケージを作成させる、データでコード化されたコンピュータ可読メモリを含み、拡張パッケージは、前のパッケージと、その上に加わった新たなファイルのすべてのファイルを含む。
これらの特徴および機能は、種々の実施形態において単独で達成することも、他の実施形態において組み合わせることもできる。実施形態のさらなる詳細は、下記の説明及び図面を参照することによって理解することができる。
ソフトウェアインテグレータ(120)と、エンドユーザのコンピュータを含む、エンタープライズ・システムの図である。 ベースパッケージと、いくつかの拡張パッケージの図である。 エンタープライズ・システムにおいて展開されるソフトウェアを作製する方法の図である。 エンタープライズ・システムにおいて展開されるソフトウェアを作製する方法の図である。 エンタープライズ・システムにおいて展開されるソフトウェアを作製するコンピュータの図である。
図1を参照する。図1は、ネットワーク140を介して複数のエンドユーザのコンピュータ130と通信するソフトウェアインテグレータ120と呼ばれるコンピュータシステムを含むエンタープライズ・システム110を示すものである。エンタープライズ・システム110には、何千ものエンドユーザのコンピュータ130がある。一実施例では、ソフトウェアインテグレータ120により、市販のCAD/CAMソフトウェアがエンドユーザのコンピュータ130に分配される。エンドユーザのコンピュータ130は、市販のCAD/CAMソフトウェアを製品開発に利用する。
ソフトウェアは最初にベースパッケージとして展開され、ベースパッケージは各エンドユーザのコンピュータ130にインストールされる。時間が経過すると、ソフトウェアインテグレータ120により、このエンドユーザの幾つかの、あるいは全てのコンピュータ130にアップグレードソフトウェアが提供される。アップグレードは拡張パッケージの形態で提供される。
ソフトウェアの種々のパッケージを示す図2をさらに参照する。パッケージは、ベースパッケージ210、第1拡張パッケージ220、第2拡張パッケージ230、及び第3拡張パッケージ240を含む。この3つの拡張パッケージ220〜240は、実施例としてのみ示すものである。実際には、ベースパッケージ210と、一又は複数の拡張パッケージが含まれる。
ベースパッケージ210には、ファイルのオリジナルセット212が格納される。第1拡張パッケージ220には、ファイルのオリジナルセット212、及び新たなファイルの第1セット222が格納される。第2拡張パッケージ230には、オリジナルセット212と第1セット222、及び新たなファイルの第2セット232が格納される。第3拡張パッケージ240には、オリジナルセット212、第1セット222と第2セット232、及び新たなファイルの第3セット242が格納される。
アップグレードを実施するためには、管理コンピュータは、拡張パッケージをエンドユーザのコンピュータ130へ送らない。代わりに、管理コンピュータは新たなファイルのみを含む展開パッケージを送る。エンドユーザのコンピュータ上のソフトウェアは、新たなファイルをインストールするだけで改善される(例:新しい機能性が追加される)。
ここで図3を参照する。図3は、ベースパッケージと拡張パッケージから展開パッケージを作成する方法を示す。この方法は、ソフトウェアインテグレータ120によって行われる。
ブロック310において、比較のためにパッケージがサイズによって分類される。この分類は、ベースパッケージと、拡張パッケージの順序付けを識別するために行われる。ベースパッケージが最も小さく、次のパッケージはそれぞれ前のパッケージよりも大きくなる。
ブロック320において、ベースパッケージと拡張パッケージそれぞれに対しファイルのインデックスが作成される。各インデックスは、パッケージのファイルの特性を識別するものである。特性の例には、非限定的に、ファイル名とファイルサイズが含まれる。
別の特性は、固有の識別子である。例えば、各ファイルに対して暗号化ハッシュ関数が算出される。各ファイルは、固有の暗号化ハッシュ関数を有する。例えば、MD5メッセージ・ダイジェストアルゴリズム(チェックサム)等の暗号化ハッシュ関数が算出される。ファイルのMD5ハッシュは、ファイルのコンテンツを128ビットの指紋にコード化することによって算出される。
ブロック330において、インデックスに記載されるファイルの特性が比較され、拡張パッケージの重複ファイルと新たなファイルが識別される。例えば、暗号化ハッシュ関数が比較され、新たなファイルと拡張ファイルが識別される。
ブロック340において、新たなファイルのみを含む展開パッケージが作成される。ブロック350において、エンタープライズ・システムのエンドユーザのコンピュータへ展開パッケージが送られる。エンドユーザのコンピュータは、新たな拡張パッケージをインストールする代わりに、新たなファイルのみをインストールすることによってアップグレードを実施する。
図2に示すソフトウェアを考察する。ベースパッケージ210が展開されインストールされた後、新たなアプリケーションと新たな機能性が開発される。ソフトウェアベンダーは、第1拡張パッケージ220の新たなファイル222においてこれらの新たなアプリケーション及び機能性を利用可能にする。図3の方法は、ベースパッケージ210及び拡張パッケージ220において行われ、第1展開パッケージが作られる。第1展開パッケージには、新たなファイル222のみが格納されている。
後に、ソフトウェアベンダーによって第2拡張パッケージ230が利用可能になる。図3の方法は、第1拡張パッケージ220及び第2拡張パッケージ230において実施されて第2展開パッケージが作られる。第2展開パッケージには、第2拡張パッケージ230の新たなファイルのみが格納されている。
後に、ソフトウェアベンダーによって第3拡張パッケージ240が利用可能になる。図3の方法は、第2拡張パッケージ230及び第3拡張パッケージ240において実施され、第3展開パッケージが作られる。第3展開パッケージには、第3拡張パッケージ240の新たなファイルのみが格納されている。
この結果、新たなアプリケーション及び機能性を提供するために増分パッケージが追加される、アップグレードへの階層化アプローチが可能になる。各エンドユーザが拡張パッケージをインストールする代わりに、エンドユーザのコンピュータは、前のパッケージに格納されていなかったファイルのみをインストールする。完全なコンフィギュレーションがインストールされないため、再コンフィギュレーションエラーが回避され、認証時間が短縮される。以前のコンフィギュレーションが機能している場合、そのコンフィギュレーションのファイルが置き換えられていないために、機能が継続する。新たなファイルのみがインストールされる。その他の利点には、ネットワークトラフィックを減らす、エンドユーザのコンピュータのハードディスクのスペースを節約する、複数のコンフィギュレーションを保存するのに要するサーバのスペースを節約することが含まれる。このような節約は、単独のエンドユーザのコンピュータにとってはささいなものに見えるかもしれないが、何百万ものファイルを含むパッケージ、また何千ものエンドユーザのコンピュータを有するエンタープライズ・システムにとっては重大である。
展開パッケージが作られる際に、大幅な時間及びリソースもまた節約される。本明細書の方法は、市販のソフトウェアを使って数ギガバイトのデータを処理して何百万ものファイルが格納されたパッケージのファイルを手動で比較し、その後で重複していないファイルのみを分配するよりも迅速でエラーが起きにくい。
ブロック310における分類を使用して、「リンクされていない」展開パッケージが作成される。「リンクされていない」とは、展開パッケージの任意の組み合わせをインストールすることができるという意味である。対照的に、拡張パッケージはリンクされているため、各拡張パッケージはベースファイルを含む必要があり、最新の拡張パッケージをインストールする前に、以前のパッケージをすべてインストールしなければならない。
通常、各エンドユーザのコンピュータのソフトウェアは、第1展開パッケージをインストールした後に、第2展開パッケージをインストールし、その後、第3パッケージをインストールする等によってアップデートされる。しかしながら、本明細書に記載の方法はそれほど限定されていない。ある場合には、エンドユーザのコンピュータは一又は複数の拡張パッケージを省略することができる。例えば、ベースコンフィギュレーションは第1展開パッケージ、そして次に第3展開パッケージでアップグレードされるが、第2展開パッケージではアップグレードされない。
本明細書に記載の方法は、特定の種類のソフトウェア成果物に限定されない。ある実施例では、ソフトウェアはCAD/CAMソフトウェアである。航空機のような複雑な製品の設計においては、各パッケージに何十万ものファイルが格納されており、何千ものエンドユーザが使用する。
別の実施例では、本明細書に記載の方法を使用して、ドキュメンテーションがアップデートされる。ベースパッケージがインストールされた後で、任意の拡張パッケージのファイルが次にインストールされる。すべてのファイルをインストールする必要はない。例えば、ベースパッケージのオリジナルファイルと、第2拡張パッケージの新たなファイルがインストールされるが、第1拡張パッケージの新たなファイルはインストールされない。
さらに別の実施例では、本明細書に記載の方法を使用して、コンピュータのオペレーティングシステムがアップデートされる。新たなファイルのみが追加される。
ここで図4を参照する。図4は、エンタープライズ・システムにおいて展開されるソフトウェアを作製する方法のさらに詳細な実施例を示す。ブロック410において、現在のパッケージと前のパッケージのファイルのインデックスが作成される。各ファイルのMD5メッセージが算出される。したがって、MD5メッセージによって各インデックスの各ファイルが識別される。インデックスはXMLファイル、テキストファイル等の形態であってよい。ブロック420では、サイズによってパッケージが分類される。
ブロック430では、現在の拡張パッケージのインデックスにおいて重複ファイルを識別するために再帰的反復が行われる。ブロック430のコンテンツは、再帰的アルゴリズムの一例を提供するものである。
ブロック440において、ユーザ固有情報が新たなファイルから除去される。これにより、展開パッケージがインストールされた後で、エンドユーザがユーザ固有情報を追加することが可能になる。これによりインストール時間が短縮されることが確認されている。
ブロック450において、新たなファイルから展開パッケージが作成される。このステップは、ネットワーク制約、及び分配媒体の制約にしたがって、圧縮ファイルごとの数及びファイルサイズ要件を満たしながら、圧縮ファイルを作成することを含む。ある実施形態では、展開パッケージのサイズはユーザによって定義される。
圧縮ファイルは、自己解凍型である。自己解凍型ファイルにより、エンドユーザのコンピュータにおいてアップグレードを完全に自動化することが可能になる。
ブロック460において、展開パッケージに認証ファイルが含められる。認証ファイルは、パッケージのソフトウェアベンダーによって最初に作製された第1認証ファイルを含む。第1認証ファイルは、パッケージとともに含まれるべきすべてのファイルを識別する。対応する展開パッケージがインストールされた後で、エンドユーザのコンピュータはインストールされたコンフィギュレーションの第2ファイルを作成し、第1ファイルと第2ファイルを比較する。2つのファイルが同一である場合、インストールは完了である。ソフトウェアインテグレータによる認証の監視は必要ない。
図5は、エンタープライズ・システムにおいて展開されるソフトウェアを作製するコンピュータ510の図である。コンピュータ510は、プロセッサ520と、コード540でコード化されたコンピュータ可読メモリ530を含む。コード540が実行されると、コンピュータ510はベースパッケージ、及び拡張パッケージそれぞれに対してファイルのインデックスを作成し、このインデックスを使用して各拡張パッケージの重複ファイルと新たなファイルを識別し、新たなファイルのみを含む一又は複数の展開パッケージを作成する。図1のソフトウェアインテグレータ120は、一又は複数のこのようなコンピュータ510を含む。
110 エンタープライズシステム
120 ソフトウェアインテグレータ
130 エンドユーザのコンピュータ
140 ネットワーク
210 ベースパッケージ
212 オリジナルファイルセット
220 拡張パッケージ1
212 オリジナルファイルセット
222 第1ファイルセット
230 拡張パッケージ2
232 第2ファイルセット
240 拡張パッケージ3
242 第3ファイルセット
510 コンピュータ
520 プロセッサ
530 メモリ
540 コード

Claims (12)

  1. エンタープライズ・システムにおいて展開されるソフトウェアを作製する方法であって、前記ソフトウェアはベースパッケージと拡張パッケージとを含み、前記拡張パッケージは、前記ベースパッケージに対する重複ファイル及び新たなファイルを含み、前記方法はコンピュータを使用して、
    前記ベースパッケージ及び前記拡張パッケージの各々のファイルのインデックスを作成することと、
    前記ベースパッケージ及び前記拡張パッケージの各々の前記インデックス内の前記ファイルの各々の指紋を生成するために、前記ファイルの各々のハッシュを算出することと、
    前記重複ファイルを識別するために前記ベースパッケージ及び前記拡張パッケージの前記インデックスを反復処理することであって、前記拡張パッケージ内の前記重複ファイル及び前記新たなファイルを識別するために前記指紋が比較される、反復処理することと、
    前記エンタープライズ・システム内のエンドユーザコンピュータへのインストールのための前記新たなファイルのみを含む展開パッケージを前記コンピュータにおいて作成することであって、前記展開パッケージは前記エンドユーザコンピュータへインストールされるべき全てのファイルを識別する第1認証ファイルをも含む、作成することとを含み、
    前記方法はさらに、前記展開パッケージをインストールし、前記エンドユーザコンピュータへ実際にインストールされたファイルを識別する第2認証ファイルを作成し、前記第1認証ファイルと前記第2認証ファイルを比較するために、前記エンドユーザコンピュータを使用することを含み、前記第1認証ファイルと前記第2認証ファイルが同一である場合にインストールは成功であり、
    前記展開パッケージの作成の前に、前記新たなファイルからユーザ固有情報が除去され、エンドユーザは前記展開パッケージのインストール後にユーザ固有情報を追加することができる、方法。
  2. 前記ベースパッケージ及び前記拡張パッケージをサイズによってソートすることをさらに含む、請求項1に記載の方法。
  3. 前記展開パッケージを、前記エンタープライズ・システムの複数のエンドユーザのコンピュータに送ることをさらに含む、請求項1に記載の方法。
  4. 新たな拡張パッケージが入手可能になった場合、前記新たな拡張パッケージに対して新たなファイルのインデックスが作成され、前記新たなファイルのインデックスが前の拡張パッケージのファイルのインデックスと比較されて前記新たな拡張パッケージにおいて新たなファイルが識別され、新たな展開パッケージは、前記新たな拡張パッケージの前記新たなファイルのみから作成される、請求項1に記載の方法。
  5. 前記展開パッケージがリンクされていない、請求項4に記載の方法。
  6. 前記重複ファイルを識別することが、各拡張パッケージをその直前のパッケージとのみ比較することを含む、請求項4に記載の方法。
  7. 前記ソフトウェアがCAD/CAMソフトウェアである、請求項1に記載の方法。
  8. 前記展開パッケージの作成は、圧縮ファイルごとのファイルサイズの要件を満たしながら、圧縮ファイルを作成することを含む、請求項1に記載の方法。
  9. 第1コンピュータ及びエンドユーザコンピュータを備えるシステムであって、前記第1コンピュータが、
    拡張ソフトウェアパッケージと前のパッケージのファイルのインデックスを作成することであって、前記インデックスにより前記拡張ソフトウェアパッケージと前記前のパッケージの各々の前記ファイルの特性が識別され、前記拡張ソフトウェアパッケージは前記前のパッケージ、及びその上に加わった新たなファイルのすべてのファイルを含む、作成することと、
    前記インデックス内に記載される前記ファイルの特性を比較して、前記拡張ソフトウェアパッケージ内の重複ファイルと前記拡張ソフトウェアパッケージ内の前記新たなファイルを識別することと、
    前記エンドユーザコンピュータへのインストールのための前記拡張ソフトウェアパッケージ内の前記新たなファイルのみを含み、前記エンドユーザコンピュータへインストールされるべき全てのファイルを識別する第1認証ファイルをも含む展開パッケージを前記第1コンピュータにおいて作成することと
    を実施するようにプログラミングされ、
    前記エンドユーザコンピュータが、前記展開パッケージをインストールすること、前記エンドユーザコンピュータへ実際にインストールされたファイルを識別する第2認証ファイルを作成すること、及び前記第1認証ファイルと前記第2認証ファイルを比較することを実施するようにプログラミングされ、前記第1認証ファイルと前記第2認証ファイルが同一である場合にインストールは成功であり、
    前記展開パッケージの作成の前に、前記新たなファイルからユーザ固有情報が除去され、エンドユーザは前記展開パッケージのインストール後にユーザ固有情報を追加することができる、システム。
  10. 前記第1コンピュータが、各ファイルの暗号化ハッシュ関数を作成するようにプログラミングされ、前記第1コンピュータが、前記暗号化ハッシュ関数を比較することによって前記ファイルを比較するようにプログラミングされている、請求項9に記載のシステム。
  11. 前記第1コンピュータが、前記展開パッケージをエンタープライズ・システムの前記エンドユーザコンピュータ及び他のエンドユーザコンピュータへ送るようにさらにプログラミングされている、請求項9に記載のシステム。
  12. 前記重複ファイルを識別することが、
    前記インデックス内の前記ファイルの各々の指紋を生成するために、前記ファイルの各々のハッシュを算出することと、
    前記重複ファイルを識別するために前記前のパッケージ及び前記拡張ソフトウェアパッケージの前記インデックスを反復処理することであって、前記拡張ソフトウェアパッケージ内の前記重複ファイル及び前記新たなファイルを識別するために前記指紋が比較される、反復処理することと、を含む、請求項9に記載のシステム。
JP2014107787A 2013-05-30 2014-05-26 エンタープライズ・システムにおけるソフトウェアの展開 Active JP6545932B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/905,475 US9720669B2 (en) 2013-05-30 2013-05-30 Deployment of software across an enterprise system
US13/905,475 2013-05-30

Publications (3)

Publication Number Publication Date
JP2014235738A JP2014235738A (ja) 2014-12-15
JP2014235738A5 JP2014235738A5 (ja) 2017-06-29
JP6545932B2 true JP6545932B2 (ja) 2019-07-17

Family

ID=50624400

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014107787A Active JP6545932B2 (ja) 2013-05-30 2014-05-26 エンタープライズ・システムにおけるソフトウェアの展開

Country Status (6)

Country Link
US (1) US9720669B2 (ja)
EP (1) EP2808785A1 (ja)
JP (1) JP6545932B2 (ja)
CN (1) CN104216732B (ja)
BR (1) BR102014012866B1 (ja)
CA (1) CA2847393C (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106970811A (zh) * 2017-03-09 2017-07-21 腾讯科技(深圳)有限公司 一种补丁文件安装方法及其设备
CN107450923B (zh) * 2017-07-28 2021-07-02 郑州云海信息技术有限公司 一种定制基线分离的程序实现方法及装置
JP2019040400A (ja) * 2017-08-25 2019-03-14 富士通株式会社 インストール制御プログラム、インストール制御方法、および情報処理装置
US10776094B2 (en) * 2018-07-29 2020-09-15 ColorTokens, Inc. Computer implemented system and method for encoding configuration information in a filename
US20220244947A1 (en) * 2021-01-29 2022-08-04 Microsoft Technology Licensing, Llc Local sourcing of partial data for application updates

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5155847A (en) * 1988-08-03 1992-10-13 Minicom Data Corporation Method and apparatus for updating software at remote locations
US5832520A (en) * 1996-07-03 1998-11-03 Miller, Call, Plauck And Miller Automatic file differencing and updating system
US6075943A (en) * 1997-08-13 2000-06-13 International Business Machines Corporation System and method for client server software installation
US6535894B1 (en) * 2000-06-01 2003-03-18 Sun Microsystems, Inc. Apparatus and method for incremental updating of archive files
US7000230B1 (en) * 2000-06-21 2006-02-14 Microsoft Corporation Network-based software extensions
US6658423B1 (en) 2001-01-24 2003-12-02 Google, Inc. Detecting duplicate and near-duplicate files
CN1241136C (zh) * 2001-09-14 2006-02-08 北京瑞星科技股份有限公司 软件升级的方法
US7035867B2 (en) * 2001-11-28 2006-04-25 Aerocast.Com, Inc. Determining redundancies in content object directories
US6966058B2 (en) 2002-06-12 2005-11-15 Agami Systems, Inc. System and method for managing software upgrades in a distributed computing system
US7360212B2 (en) * 2003-10-09 2008-04-15 Dell Products L.P. Build automation and verification for modular servers
FR2862401A1 (fr) * 2003-11-13 2005-05-20 France Telecom Procede et systeme d'interrogation d'une base de donnees multimedia a partir d'un terminal de telecommunication.
US7814484B2 (en) * 2004-05-14 2010-10-12 Bea Systems, Inc. System and method for web application extensibility
US7530065B1 (en) * 2004-08-13 2009-05-05 Apple Inc. Mechanism for determining applicability of software packages for installation
US8607213B2 (en) * 2005-12-05 2013-12-10 International Business Machines Corporation SCORM manifest reconciliation
US7676803B2 (en) * 2005-12-06 2010-03-09 Dell Products L.P. Method of defining packaging applicability
US20070240151A1 (en) * 2006-01-29 2007-10-11 Microsoft Corporation Enhanced computer target groups
US9213542B2 (en) * 2006-03-30 2015-12-15 Microsoft Technology Licensing, Llc Creating templates of offline resources
US8302091B2 (en) * 2006-06-05 2012-10-30 International Business Machines Corporation Installation of a bootable image for modifying the operational environment of a computing system
US9372784B2 (en) * 2009-02-20 2016-06-21 International Business Machines Corporation Test system configuration method and system
US8438558B1 (en) * 2009-03-27 2013-05-07 Google Inc. System and method of updating programs and data
WO2012035575A1 (en) * 2010-09-14 2012-03-22 Hitachi, Ltd. Method and device for eliminating patch duplication
US20120131566A1 (en) * 2010-11-23 2012-05-24 Microsoft Corporation Efficient virtual application update
EP2485143A1 (en) * 2011-02-04 2012-08-08 Siemens Aktiengesellschaft Updating a web package within a manufacturing execution system
US20120260246A1 (en) * 2011-04-06 2012-10-11 International Business Machines Corporation Software application installation
US20130036103A1 (en) * 2011-08-04 2013-02-07 The Boeing Company Software Part Validation Using Hash Values
US9552201B2 (en) 2011-08-31 2017-01-24 Avaya Inc. System and method for incremental software installation
US8543543B2 (en) 2011-09-13 2013-09-24 Microsoft Corporation Hash-based file comparison
US8495612B2 (en) 2011-10-21 2013-07-23 International Business Machines Corporation Systems and methods for upgrading a version of software
US8799662B2 (en) * 2012-07-27 2014-08-05 Adobe Systems Incorporated Method and apparatus for validating the integrity of installer files prior to installation
US9372992B1 (en) * 2014-09-10 2016-06-21 The Boeing Company Ensuring integrity of a software package installer

Also Published As

Publication number Publication date
CN104216732A (zh) 2014-12-17
US20140359603A1 (en) 2014-12-04
US9720669B2 (en) 2017-08-01
CA2847393C (en) 2018-10-02
JP2014235738A (ja) 2014-12-15
BR102014012866A2 (pt) 2015-01-06
EP2808785A1 (en) 2014-12-03
BR102014012866B1 (pt) 2022-05-03
CA2847393A1 (en) 2014-09-30
CN104216732B (zh) 2019-04-12

Similar Documents

Publication Publication Date Title
JP6545932B2 (ja) エンタープライズ・システムにおけるソフトウェアの展開
KR102042723B1 (ko) 애플리케이션을 업데이트하는 방법
US10789062B1 (en) System and method for dynamic data deduplication for firmware updates
US10284433B2 (en) Data synchronization using redundancy detection
US9910906B2 (en) Data synchronization using redundancy detection
CN111527487A (zh) 用于内容项同步的唯一标识符的指配和再分配
US11327744B2 (en) Equivalency of revisions on modern version control systems
US9823915B1 (en) Software container format
US9892122B2 (en) Method and apparatus for determining a range of files to be migrated
JP5430574B2 (ja) アプリケーション管理システム及び方法
KR20060021367A (ko) 클러스터 컴퓨터들의 구성을 관리하는 방법, 제어기, 장치및 컴퓨터 프로그램
JP2007521528A (ja) ボリュームイメージを生成すること
US12093236B2 (en) Probalistic data structure for key management
US11194497B2 (en) Variable length deduplication of stored data
JP6218835B2 (ja) 効率的な仮想マシン展開方法
AU2021204593A1 (en) Methods and apparatuses for installing device application
WO2019169721A1 (zh) 应用多渠道打包方法、装置、计算机设备及存储介质
JP2014235738A5 (ja)
US20160283226A1 (en) Smart hashing to reduce server memory usage in a distributed system
CN113590181A (zh) 配置文件的校验方法、装置、设备及存储介质
US20180341475A1 (en) Just In Time Deployment with Package Managers
US20220197757A1 (en) Automatic update of network assets using gold images
CN108650320B (zh) 一种集群环境下同构级联设备配置文件同步方法
US10162626B2 (en) Ordered cache tiering for program build files
CN111400243A (zh) 基于流水线服务的研发管理系统以及文件存储方法、装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170519

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170519

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180424

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180508

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190424

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190611

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190620

R150 Certificate of patent or registration of utility model

Ref document number: 6545932

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250