JP2020135344A - ソフトウェア提供装置及びプログラム - Google Patents

ソフトウェア提供装置及びプログラム Download PDF

Info

Publication number
JP2020135344A
JP2020135344A JP2019027191A JP2019027191A JP2020135344A JP 2020135344 A JP2020135344 A JP 2020135344A JP 2019027191 A JP2019027191 A JP 2019027191A JP 2019027191 A JP2019027191 A JP 2019027191A JP 2020135344 A JP2020135344 A JP 2020135344A
Authority
JP
Japan
Prior art keywords
software
upper limit
user
download
update
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.)
Pending
Application number
JP2019027191A
Other languages
English (en)
Inventor
拓也 伊吹
Takuya Ibuki
拓也 伊吹
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2019027191A priority Critical patent/JP2020135344A/ja
Priority to US16/554,543 priority patent/US11099825B2/en
Publication of JP2020135344A publication Critical patent/JP2020135344A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】ソフトウェアの提供側がソフトウェアの利用先にかかるネットワーク負荷を考慮してソフトウェアを提供する。【解決手段】ソフトウェア管理サーバ10は、ライセンスを購入した企業、購入されたアプリケーション及びライセンス管理番号を含むライセンス情報マスタ22と、購入ライセンス数に応じた同時更新許可数が設定される上限数マスタ23と、更新確認処理部11がユーザからの更新情報の確認要求を受信すると、ライセンス情報マスタ22及び上限数マスタ23を参照して確認要求をしたユーザが所属する企業において同時にダウンロードが可能なユーザの上限数を決定する上限数決定部12と、当該企業において現在ダウンロード中のユーザ数が上限数に満たない場合に確認要求をしたユーザに更新モジュールのダウンロードを許可する判定部13と、を有する。【選択図】図1

Description

本発明は、ソフトウェア提供装置及びプログラムに関する。
事業所においてソフトウェア提供事業者が提供するソフトウェアを所内の複数のユーザに利用させる場合がある。ソフトウェア提供事業者がソフトウェアをバージョンアップすると、バージョンアップした旨の通知を受けたユーザは、各自でソフトウェア提供事業者から更新モジュールをダウンロードしてソフトウェアをバージョンアップする。
従来では、ソフトウェア提供事業者のサーバと連携するローカルサーバを事業所内に設置し、所内の各ユーザは、更新モジュールがローカルサーバにあればローカルサーバから、ローカルサーバになければソフトウェア提供事業者のサーバから、それぞれダウンロードすることで、多くのユーザが同時並行して更新モジュールのダウンロードを行うことにより発生しうるスループットの低下を回避する技術が提案されている(例えば、特許文献1)。
特開2002−312312号公報 特開2005−234729号公報
従来においては、ソフトウェアが提供される側、換言するとソフトウェアを利用する側でローカルサーバを用意してネットワーク負荷を軽減させるようにしていた。
本発明は、ソフトウェアの提供側がソフトウェアの利用先にかかるネットワーク負荷を考慮してソフトウェアを提供することを目的とする。
本発明に係るソフトウェア提供装置は、複数のユーザがソフトウェアを利用する利用先のユーザからネットワークを介したダウンロードに関する要求を受けた場合に、当該利用先において同時にダウンロードが可能なユーザの上限数を決定する決定手段と、当該利用先におけるダウンロード中のユーザ数が、前記決定手段が決定した上限数に満たない場合に前記要求をしたユーザに対してソフトウェアのダウンロードを許可する許可手段と、を有することを特徴とする。
また、前記決定手段は、ソフトウェアのライセンス契約をユーザ毎にすることで当該ユーザが当該ソフトウェアを使用できる場合、前記利用先が契約しているソフトウェアのライセンス数に応じて前記上限数を決定することを特徴とする。
また、前記決定手段は、前記利用先に対する前記上限数を、当該利用先が契約しているソフトウェアのライセンス数より小さく設定することを特徴とする。
また、前記許可手段が許可したユーザに対してソフトウェアをダウンロードするダウンロード手段と、前記ダウンロード手段がソフトウェアをダウンロードしたときの転送速度を記録する記録手段と、を有し、前記決定手段は、前記記録手段が記録した転送速度を参照して前記利用先に対する上限数を決定することを特徴とする。
また、前記決定手段は、転送速度が下降傾向にある場合、前記上限数を減少させることを特徴とする。
また、前記決定手段は、転送速度に上昇傾向にある場合、前記ソフトウェアの上限数を増加させることを特徴とする。
また、前記ソフトウェアは、バージョンアップ用の更新モジュールであることを特徴とする。
本発明に係るプログラムは、コンピュータを、複数のユーザがソフトウェアを利用する利用先のユーザからネットワークを介したダウンロードに関する要求を受けた場合に、当該利用先において同時にダウンロードが可能なユーザの上限数を決定する決定手段、当該利用先におけるダウンロード中のユーザ数が、前記決定手段が決定した上限数に満たない場合に前記要求をしたユーザに対してソフトウェアのダウンロードを許可する許可手段、として機能させる。
請求項1に記載の発明によれば、ソフトウェアの提供側がソフトウェアの利用先にかかるネットワーク負荷を考慮してソフトウェアを提供することができる。
請求項2に記載の発明によれば、ソフトウェアの利用先に対する上限数を、当該利用先のライセンス数に依存させて設定することができる。
請求項3に記載の発明によれば、同時にダウンロード可能なユーザ数を制限することができる。
請求項4に記載の発明によれば、ネットワーク負荷の指標となる転送速度を参照してソフトウェアの利用先に対して同時にダウンロードが可能なユーザの上限数を決定することができる。
請求項5に記載の発明によれば、上昇傾向にあるネットワーク負荷の増加を防止することができる。
請求項6に記載の発明によれば、ソフトウェアの利用先において同時にダウンロードが可能なユーザ数を増やすことができる。
請求項7に記載の発明によれば、バージョンアップの場合に適用することができる。
請求項8に記載の発明によれば、ソフトウェアの提供側がソフトウェアの利用先にかかるネットワーク負荷を考慮してソフトウェアを提供することができる。
実施の形態1においてソフトウェアを提供する側と利用する側を含むネットワークシステムの構成図である。 実施の形態1におけるバージョン管理マスタに登録されているバージョン情報のデータ構成例を示す図である。 実施の形態1におけるライセンス情報マスタに登録されているライセンス情報のデータ構成例を示す図である。 実施の形態1における上限数マスタに登録されている上限数情報のデータ構成例を示す図である。 実施の形態1において、ユーザ端末にインストールされているアプリケーションをバージョンアップするときにユーザ端末で実施される処理を示すフローチャートである。 実施の形態1において、ユーザ端末にインストールされているアプリケーションをバージョンアップするときにソフトウェア管理サーバで実施される処理を示すフローチャートである。 実施の形態1における更新ログ情報記憶部に記憶されて更新ログ情報のデータ構成例を示す図である。 実施の形態2においてソフトウェアを提供する側と利用する側を含むネットワークシステムの構成図である。
以下、図面に基づいて、本発明の好適な実施の形態について説明する。
実施の形態1.
図1は、本実施の形態においてソフトウェアを提供する側と利用する側を含むネットワークシステムの構成図である。図1において、ソフトウェア管理サーバ10は、ソフトウェアを提供する事業者等に設置されるソフトウェア提供装置の一形態である。企業システム30は、ソフトウェア管理サーバ10が提供するソフトウェアの利用先となる企業内に構築されるシステムである。ソフトウェア管理サーバ10と企業システム30は共にインターネット2に接続され、インターネット2を介してデータ通信を行うことが可能である。なお、ソフトウェア管理サーバ10は、複数の企業とライセンス契約を締結するが、企業システム30は、各企業とも同様の構成を有し、バージョンアップに際しては同様に処理すればよいので、図1には、便宜的に一企業の企業システム30のみ図示した。
企業システム30は、企業内の従業員等(以下、「ユーザ」)がそれぞれ使用する複数のユーザ端末31と、各ユーザ端末31とソフトウェア管理サーバ10との間でデータ通信を可能にするルータ32と、をLAN33に接続して構築される。なお、本実施の形態の説明に用いない構成要素は図から省略している。ユーザ端末31は、企業内のユーザが使用する端末装置である。本実施の形態では、説明の便宜上、各ユーザが使用するユーザ端末31は決められている、つまり1対1の関係にあるものとして説明する。ユーザ端末31は、汎用的なパーソナルコンピュータ(PC)を想定して説明するが、ソフトウェアをインストールして使用する情報処理装置であれば、PCに限る必要はない。また、本実施の形態では、ユーザ端末31を有線のLAN33に接続して使用する例を示しているが、無線にて接続されるように構成してもよい。
ソフトウェア管理サーバ10は、コンピュータで動作可能な複数種類のソフトウェアを管理し、企業とのライセンス契約によりソフトウェアの利用が許諾されたユーザが使用するユーザ端末31にソフトウェアを提供する。以降の説明では、各ユーザ端末31には、ライセンス契約により利用が許諾されているソフトウェアがすでにインストールされているものとして説明する。但し、インストール済みのソフトウェアが最新バージョンであるとは限らない。最新バージョンでない場合、ユーザは、インストール済みのソフトウェアを更新しバージョンアップするためのソフトウェア(以下、「更新モジュール」という)をソフトウェア管理サーバ10からユーザ端末31にダウンロードすることで、ソフトウェアを最新バージョンに更新することが可能である。
なお、本実施の形態におけるソフトウェア管理サーバ10が管理するソフトウェアには、ライセンス契約によりユーザが使用するアプリケーションと、アプリケーションをバージョンアップするための更新モジュールとが含まれる。本実施の形態では、「ソフトウェア」というのは、狭義には「アプリケーション」を示す。そして、アプリケーションをバージョンアップするためのソフトウェアを前述したように「更新モジュール」と称することにしている。
ソフトウェア管理サーバ10は、汎用的なハードウェア構成のサーバコンピュータで形成される。すなわち、ソフトウェア管理サーバ10は、CPU、ROM、RAM、また
ハードディスクドライブ(HDD)等の記憶手段、通信手段としてのネットワークインタフェースを有する。また、後述するマスタデータの更新等のために、入力手段としてのマウスやキーボード、表示手段としてのディスプレイを持たせてもよい。
図1に示すように、ソフトウェア管理サーバ10は、更新確認処理部11、上限数決定部12、判定部13、ダウンロード処理部14、バージョン管理マスタ21、ライセンス情報マスタ22、上限数マスタ23、更新ログ情報記憶部24及び更新モジュールレポジトリ25を有する。なお、本実施の形態の説明に用いない構成要素については、図から省略している。
更新確認処理部11は、ユーザからの更新情報の確認要求を受信すると、バージョンアップの要否、またバージョンアップが必要な場合は更新モジュールのダウンロードの可否を含む更新情報を返信する。上限数決定部12は、更新確認処理部11がソフトウェアの利用先である企業のユーザからインターネット2を介してダウンロードに関する要求を受けた場合、ここではダウンロードに関する要求として更新情報の確認要求を受けた場合、当該企業において同時にダウンロードが可能なユーザの上限数(以下、単に「上限数」という)を決定する。本実施の形態における上限数決定部12は、ライセンス情報マスタ22から導出できる各企業のライセンス数に応じて上限数を企業毎に決定する。上限数決定部12は、更新情報の確認要求を発信したユーザがバージョンアップする必要がある場合に動作する。
後述するように、更新ログ情報記憶部24には、更新モジュールを現在ダウンロード中のユーザ(厳密には、当該ユーザのライセンス管理番号)が判別できるようなデータ構成にて更新ログ情報が登録されるが、判定部13は、当該企業におけるダウンロード中のユーザ数と上限数決定部12が決定した上限数とを比較し、ユーザ数が上限数に満たない場合に更新情報の確認要求を発信したユーザに対してソフトウェアのダウンロードを許可する。なお、本実施の形態では、説明の便宜上、一ユーザが同時並行して複数のダウンロードをしないことにする。つまり、ダウンロードを実行するユーザ数と、更新モジュールのダウンロード数とは、同値として説明する。ダウンロード処理部14は、判定部13によりダウンロード可と判定されたユーザが使用するユーザ端末31からのダウンロード要求に応じて、更新モジュールを送信(つまり、ダウンロード)する。
図2は、本実施の形態におけるバージョン管理マスタ21に登録されているバージョン情報のデータ構成例を示す図である。SW名は、ソフトウェア管理サーバ10にて管理しているソフトウェア、つまりアプリケーションの識別情報としてのアプリケーション名であるが、このSW名に、当該アプリケーションの最新バージョンが対応付けして設定される。
図3は、本実施の形態におけるライセンス情報マスタ22に登録されているライセンス情報のデータ構成例を示す図である。ライセンス情報は、ライセンスが付与されるユーザ毎に設定され、ライセンスを識別するライセンスID(図3では単に「ID」)に、SW名、ライセンス及び購入先が対応付けして設定される。SW名は、ライセンス契約対象のアプリケーションの識別情報としてのアプリケーション名である。ライセンスは、ライセンスの管理番号であり、ライセンスIDと同様、ライセンスの識別情報である。購入先は、当該ライセンスを購入した企業である。「購入先」は、前述したソフトウェアの「利用先」と同義である。企業内において、ライセンスの管理番号が各ユーザに割り振られ、ユーザは、管理番号が付与されることで当該アプリケーションが使用できることになる。図示していないが、企業システム30では、各ユーザが使用するユーザ端末31とライセンス管理番号とを対応付けして管理している。
図4は、本実施の形態における上限数マスタ23に登録されている上限数情報のデータ構成例を示す図である。「購入ライセンス数」は、各企業が購入したライセンスの数の範囲を示している。「同時更新許可数」は、対応するライセンス数の範囲にある企業に対して同時並行して更新モジュールをダウンロードしてよいユーザの延べ数である。なお、本実施の形態では、前述したように、一ユーザは同時並行して複数のダウンロードをしないので、ユーザの延べ数を単に「ユーザ数」と表現する。図4に示す数値例によると、例えば契約したライセンスの数が100以下の企業に対しては、50ユーザ数を上限として更新モジュールを同時並行してダウンロードしてよいことを示している。本実施の形態では、各購入ライセンス数に対し、同時更新許可数を各購入ライセンス数の最大値(100,1000,5000,10000)により小さく設定する。
更新ログ情報記憶部24は、動作の説明と合わせて説明する。更新モジュールレポジトリ25は、各アプリケーションを最新バージョンとするのに必要な更新モジュールが格納されている。
ソフトウェア管理サーバ10における各構成要素11〜14は、ソフトウェア管理サーバ10を形成するコンピュータと、コンピュータに搭載されたCPUで動作するプログラムとの協調動作により実現される。また、各記憶手段21〜25は、ソフトウェア管理サーバ10に搭載されたHDDにて実現される。あるいは、RAM又は外部にある記憶手段をネットワーク経由で利用してもよい。
また、本実施の形態で用いるプログラムは、通信手段により提供することはもちろん、CD−ROMやUSBメモリ等のコンピュータ読み取り可能な記録媒体に格納して提供することも可能である。通信手段や記録媒体から提供されたプログラムはコンピュータにインストールされ、コンピュータのCPUがプログラムを順次実行することで各種処理が実現される。
次に、ユーザ端末31にインストールされているアプリケーションをバージョンアップするときのユーザ端末31及びソフトウェア管理サーバ10で実施される処理について、図5,6に示すフローチャートを用いて説明する。
ユーザ端末31は、ユーザによる所定の操作を応じて、更新情報の確認要求をソフトウェア管理サーバ10へ送信する(ステップ101)。確認要求には、確認要求対象とするアプリケーションの識別情報(例えば、アプリケーション名)、当該ユーザ端末31にインストールされている当該アプリケーションのバージョン及び当該アプリケーションのライセンス管理番号が含まれる。
ソフトウェア管理サーバ10における更新確認処理部11は、ユーザ端末31から送信されてきた更新情報の確認要求を受信すると(ステップ121)、バージョン管理マスタ21を参照することで、確認要求に含まれているアプリケーションの最新バージョンを確認する。確認要求に含まれているアプリケーションのバージョンが最新バージョンと一致する場合(ステップ122でY)、当該ユーザ端末31にインストールされている当該アプリケーションは、すでに最新バージョンであることからバージョンアップする必要はない。この場合、更新確認処理部11は、更新情報にバージョンアップは不要という旨の情報を設定して確認要求送信元のユーザ端末31へ送信する(ステップ130)。
一方、確認要求に含まれているアプリケーションのバージョンが最新バージョンでない場合(ステップ122でN)、更新確認処理部11は、バージョンアップが必要と判断し、上限数決定部12に処理を移行する。
なお、以降の説明では、ユーザ端末31から取得した確認要求には、アプリケーション名として“アプリA”が、バージョンとして“V1.0.13”が、ライセンス管理番号として“AAA−000”が、それぞれ設定されている場合を例にして説明する。バージョン管理マスタ21の設定例を参照すると、ユーザのユーザ端末31には、最新バージョン“V1.0.19”のアプリケーション“アプリA“がまだインストールされていないことがわかる。
この場合、上限数決定部12は、ライセンス情報マスタ22を参照して、確認要求を発信したユーザが所属する企業のライセンス数を次のようにして取得する(ステップ123)。すなわち、確認要求に含まれているライセンス管理番号をライセンス情報マスタ22と照合することで、確認要求元のユーザが所属する企業を特定する。図3に示すライセンス情報の設定例によると、ライセンス管理番号“AAA−000”が付与されたユーザは、“X会社”に所属していることがわかる。これにより、上限数決定部12は、ライセンス情報マスタ22に登録されている、X会社のライセンス数を積算して、X会社が契約しているライセンス数を取得する。
続いて、上限数決定部12は、上限数マスタ23を参照して、上限数を決定する(ステップ124)。図3に示す上限数マスタ23の設定例によると、“X会社”のライセンス数が例えば40だとすると、X会社の同時更新許可数は50なので、上限数決定部12は、同時更新許可数50をそのままX会社の上限数と決定する。従って、本実施の形態の場合、上限数マスタ23に設定されている「同時更新許可数」と「上限数」は同義である。
続いて、判定部13は、更新ログ情報記憶部24を参照することで、現時点のダウンロードの実施状況を取得する(ステップ125)。
図7は、本実施の形態における更新ログ情報記憶部24に記憶されて更新ログ情報のデータ構成例を示す図である。更新ログ情報は、ダウンロード処理部14によって逐次登録及び更新される。更新ログ情報は、バージョンアップされている若しくはバージョンアップされたアプリケーションに対応するライセンスIDに、ダウンロード対象の当該アプリケーションの更新モジュールのバージョン及び更新状況が対応付けして登録される。なお、ライセンス情報を参照することで、ライセンスIDからどの企業と契約し、どのアプリケーションがバージョンアップ対象であるのかを特定できる。更新状況には、当該更新モジュールが現時点でダウンロード中である場合には“取得中”が設定される。そして、ダウンロードが終了すると“取得中”が“取得済”に更新される。なお、更新ログ情報記憶部24をログとして機能させるために、ダウンロードの実行日時等の情報を付加してもよいが、本実施の形態では、説明に用いない項目は省略している。
なお、本実施の形態では、更新ログ情報に更新状況という項目を設けて、ダウンロードが終了したときでもレコードを削除しないようにして、更新ログ情報記憶部24にログとしての機能を持たせた。ただ、更新状況という項目を設けずに、更新ログ情報記憶部24には、現在ダウンロード中の更新モジュールのみが記録され管理されるように構成してもよい。
判定部13は、更新ログ情報のライセンスIDとライセンス情報を参照し、現在ダウンロード中のX会社のユーザの数を求める。図3に示すライセンス情報と図7に示す更新ログ情報の設定例によると、ライセンスID“A111”が付与されたX会社のユーザが現在ダウンロード中であることがわかる。判定部13は、このようにしてX会社のダウンロード中のユーザ数を現時点のダウンロードの実施状況として求める。この求めたダウンロード中のユーザ数が、ステップ124で決定した上限数に達している場合、これ以上ダウンロードの実行開始を許可すると、X会社における企業システム30のネットワーク負荷が増大し、スループットが低下すると判断する。つまり、判定部13は、ネットワーク負荷を考慮すると、これ以上、ダウンロードを同時並行してさせるべきでないと判断する。この場合(ステップ126でN)、更新確認処理部11は、更新情報にバージョンアップは必要であるものの現時点でのダウンロードは不可という旨の情報を設定して確認要求送信元のユーザ端末31へ送信する(ステップ131)。この場合に送信する更新情報は、アプリケーションの更新禁止指示に相当する。
一方、現在ダウンロード中のユーザ数が、ステップ124で決定した上限数に満たないる場合、判定部13は、ネットワーク負荷の観点からしてダウンロードが可能と判断する。この場合(ステップ126でY)、更新確認処理部11は、更新情報にバージョンアップは必要であり、かつダウンロードを許可するために現在ダウンロードは可能という旨の情報を設定して確認要求送信元のユーザ端末31へ送信する(ステップ127)。この場合に送信する更新情報は、アプリケーションの更新指示に相当する。
なお、図6に示すフローチャートでは、更新情報の送信後、ユーザ端末31からのダウンロード要求が送信されてくるのを待機し、そして受信することになるが(ステップ128)、処理をいったん終了させて、ダウンロード要求を受信したときの処理を別途開始するようにしてもよい。
更新情報の確認要求を送信したユーザ端末31が、ソフトウェア管理サーバ10から送信されてきた更新情報を受信すると(ステップ102)、更新情報の設定内容を確認する。
更新情報にバージョンアップは不要という旨の情報が設定されている場合(ステップ103でY)、既に最新バージョンのアプリケーションがインストールされているので、バージョンアップを行う必要はなく、処理を終了させる。
更新情報にバージョンアップは必要であるものの現時点でのダウンロードは不可という旨の情報が設定されている場合(ステップ103でN、ステップ104でN)、現時点での更新モジュールのダウンロードは禁止されているので、バージョンアップをすることなく、処理を終了させる。この場合、バージョンアップをするためには、しばらく時間が経過してから処理を再度実行することになる。
更新情報にバージョンアップは必要であり、現在ダウンロードは可能という旨の情報が設定されている場合(ステップ104でY)、ユーザ端末31は、ユーザによる所定の操作に応じてダウンロード要求をソフトウェア管理サーバ10へ送信する(ステップ105)。ダウンロード要求には、バージョンアップ対象とするアプリケーションの識別情報(例えば、アプリケーション名)及び当該アプリケーションのライセンス管理番号が含まれる。
ソフトウェア管理サーバ10におけるダウンロード処理部14は、ユーザ端末31から送信されてきたダウンロード要求を受信すると(ステップ128)、ダウンロード要求に含まれているアプリケーション名に対応する更新モジュールを更新モジュールレポジトリ25から読み出し、ダウンロード要求元のユーザ端末31へ送信する(ステップ129)。
なお、バージョンアップは必要であるものの現時点でのダウンロードは不可という旨の情報が設定されている更新情報を受け取ったユーザは、アプリケーションのバージョンアップを単に禁止が指示されているだけである。従って、ダウンロードが可能の場合と同様にダウンロード要求を送信することは可能であるかもしれない。そこで、ソフトウェア管理サーバ10では、ダウンロード不可と判定したユーザのライセンス管理番号又はライセンスIDのリストを一時保持しておき、ダウンロード要求を受信したときにダウンロード要求に含まれているライセンス管理番号を一時保持して置いたリストと照合し、リストに合致するライセンス管理番号が存在する場合には、そのダウンロード要求には応じないようにしてもよい。この場合、応じない旨を返信するようにしてもよい。
ユーザ端末31は、ダウンロード要求に応じてソフトウェア管理サーバ10からダウンロードされてきた更新モジュールを取得すると(ステップ106)、ユーザによる所定の操作手続きに従ってバージョンアップを実行する(ステップ107)。そして、バージョンアップに成功すると、ユーザ端末31は、その更新モジュールのバージョン、通常であれば最新バージョンであるが、そのバージョンによって内部で保持管理しているアプリケーションのバージョン情報を更新する(ステップ108)。
以上説明したように、本実施の形態によれば、上限数情報を設け、この上限数情報に設定されている同時更新許可数(つまり、上限数)に従って同時並行して実行可能なダウンロードの数を企業毎に制限できるようにした。特に、契約したライセンス数が膨大であることから膨大な数のユーザによってダウンロードが同時並行して実施されると、他に支障を来すほどネットワーク負荷が増大してしまう可能性があるので、本実施の形態では、契約したライセンス数より小さい数を同時更新許可数に設定しておけば、同時並行して実施なダウンロード数を制限することができ、ネットワーク負荷の増大を回避することが可能となる。
なお、本実施の形態では、更新情報の確認要求に応じて要求元の企業が契約しているライセンス数を積算し、その積算したライセンス数に基づき同時更新許可数を求めるようにした。本実施の形態では、ライセンス情報を全企業に共通して設けているが、例えば、企業毎に同時更新許可数を設定してもよい。この場合、更新情報の確認要求に応じて要求元の企業を特定することで同時更新許可数を決定する。例えば、企業システム30のネットワーク性能を考慮した数を同時更新許可数に設定しておけば、企業毎にネットワーク負荷の増大をより効果的に解消することが可能となる。
また、本実施の形態においては、ソフトウェア管理サーバ10は、ダウンロードに関する要求の一例である更新情報の確認要求に応じて更新モジュールのダウンロードの可否をユーザ端末31へ返し、ダウンロードが可能の場合にユーザ端末31から別途送信されてくるダウンロードの要求に対応して更新モジュールをダウンロードするようにした。ただ、ダウンロードするまでの手順はこれに限る必要はなく、例えば、ダウンロードに関する要求として更新情報の確認要求ではなく、ユーザ端末31から送信されてくるダウンロードの要求に応じて更新モジュールのダウンロードの可否を判断し、ダウンロードが可の場合に更新モジュールをダウンロードするようにしてもよい。つまり、この場合は、更新モジュールをダウンロードする手順として更新情報の確認要求の送信が不要となる。
また、本実施の形態においては、アプリケーションはユーザ端末31にすでにインストールされており、このアプリケーションのバージョンアップのために更新モジュールをダウンロードする場合について説明した。ただ、アプリケーションがまだインストールされていないユーザ端末31に対してアプリケーションを新規にダウンロードする場合にも適用することは可能である。この場合、例えば、更新情報の確認要求に含めるべきアプリケーションのバージョンを空白にするなどして、新規インストール目的の確認要求であることをソフトウェア管理サーバ10に知らせるようにしてもよい。
実施の形態2.
図8は、本実施の形態においてソフトウェアを提供する側と利用する側を含むネットワークシステムの構成図であり、実施の形態1において用いた図1に対応する図である。本実施の形態におけるネットワークシステムは、実施の形態1の構成に、転送速度測定部15及び転送速度情報記憶部26を追加した構成を有している。転送速度測定部15は、ダウンロード処理部14がソフトウェアをダウンロードしたときの転送速度を測定し、測定した転送速度を含む転送速度情報を転送速度情報記憶部26に記録する。転送速度情報記憶部26に記録される転送速度情報には、転送速度の測定日時に転送速度が対応付けして設定される。転送速度測定部15は、ソフトウェア管理サーバ10を形成するコンピュータと、コンピュータに搭載されたCPUで動作するプログラムとの協調動作により実現される。また、転送速度情報記憶部26は、ソフトウェア管理サーバ10に搭載されたHDDにて実現される。あるいは、RAM又は外部にある記憶手段をネットワーク経由で利用してもよい。
以下、本実施の形態における動作について説明するが、基本的には図5及び図6に示すフローチャートを用いて説明した実施の形態1と同じでよい。本実施の形態は、転送速度を用いることに伴い処理が若干追加される。
まず、転送速度測定部15は、転送速度を測定し、転送速度情報を生成して転送速度情報記憶部26に記録する。この処理は、例えば、定周期的に実施すればよい。
実施の形態1において説明したように、ソフトウェア管理サーバ10において、ユーザ端末31から更新情報の確認要求が送られてくると、上限数決定部12は、ステップ124においてライセンス情報及び上限数情報を参照して当該企業に対する同時更新許可数(つまり、上限数)を決定する。本実施の形態では、この上限数を決定する際に転送速度を参照することになる。
転送速度は、ネットワークのスループットを推測可能な指標の一つであるが、この転送速度が低下するということは、ネットワーク負荷が増大し、スループットが低下していることを示している。従って、上限数決定部12は、転送速度情報記憶部26に記録されている転送速度情報を解析し、転送速度の遷移を得る。この転送速度の遷移に所定の下降傾向が現れると、上限数決定部12は、前述したように上限数情報から抽出して得た同時更新許可数を下方修正する。下方修正の程度は、所定の規則に従って決めればよい。例えば、転送速度の下降の程度に応じて上限数の数を減少させる、換言すると上限数の減少幅を調整すればよい。実施の形態1では、上限数情報から抽出して得た同時更新許可数をそのまま上限数として用いたが、本実施の形態では、以上説明したように上限数情報から抽出して得た同時更新許可数を下方修正して上限数を決定する。
なお、下方修正した上限数を保持しておき、これ以降に更新情報の確認要求を発したユーザに対しては、上限数情報に設定されている同時更新許可数ではなく、保持した上限数を用いて上限数を決定するようにしてもよい。
同時更新許可数を下方修正して上限数を決定することで、ステップ126においてダウンロードは可能と判定されにくくなり、ダウンロードを新規に始められるユーザ数を減らすことが可能となる。
実施の形態1では、上限数情報から抽出して得た同時更新許可数をそのまま上限数として用いたが、本実施の形態では、ネットワーク負荷が増大傾向にある場合、上限数を下方修正することでこれ以上のネットワーク負荷の増大を抑止することができる。その他の処理は、実施の形態1と同じでよいので説明を省略する。
なお、上記説明では、ネットワーク負荷の増大を抑止する場合について説明したが、例えば、転送速度の遷移に所定の上昇傾向が現れるとネットワーク負荷が減少傾向にあると考えられることから、上限数決定部12は、上限数を増加させるようにしてもよい。これにより、下方修正した上限数を元に戻すことも可能となる。
以上説明したように、本実施の形態によれば、転送速度という指標を用いて実際のネットワーク負荷の状況を監視することによって上限数を現実に適合した値に補正することができる。
2 インターネット、10 ソフトウェア管理サーバ、11 更新確認処理部、12 上限数決定部、13 判定部、14 ダウンロード処理部、15 転送速度測定部、21 バージョン管理マスタ、22 ライセンス情報マスタ、23 上限数マスタ、24 更新ログ情報記憶部、25 更新モジュールレポジトリ、26 転送速度情報記憶部、30 企業システム、31 ユーザ端末、32 ルータ。

Claims (8)

  1. 複数のユーザがソフトウェアを利用する利用先のユーザからネットワークを介したダウンロードに関する要求を受けた場合に、当該利用先において同時にダウンロードが可能なユーザの上限数を決定する決定手段と、
    当該利用先におけるダウンロード中のユーザ数が、前記決定手段が決定した上限数に満たない場合に前記要求をしたユーザに対してソフトウェアのダウンロードを許可する許可手段と、
    を有することを特徴とするソフトウェア提供装置。
  2. 前記決定手段は、ソフトウェアのライセンス契約をユーザ毎にすることで当該ユーザが当該ソフトウェアを使用できる場合、前記利用先が契約しているソフトウェアのライセンス数に応じて前記上限数を決定することを特徴とする請求項1に記載のソフトウェア提供装置。
  3. 前記決定手段は、前記利用先に対する前記上限数を、当該利用先が契約しているソフトウェアのライセンス数より小さく設定することを特徴とする請求項2に記載のソフトウェア提供装置。
  4. 前記許可手段が許可したユーザに対してソフトウェアをダウンロードするダウンロード手段と、
    前記ダウンロード手段がソフトウェアをダウンロードしたときの転送速度を記録する記録手段と、
    を有し、
    前記決定手段は、前記記録手段が記録した転送速度を参照して前記利用先に対する上限数を決定することを特徴とする請求項1に記載のソフトウェア提供装置。
  5. 前記決定手段は、転送速度が下降傾向にある場合、前記上限数を減少させることを特徴とする請求項4に記載のソフトウェア提供装置。
  6. 前記決定手段は、転送速度に上昇傾向にある場合、前記ソフトウェアの上限数を増加させることを特徴とする請求項4に記載のソフトウェア提供装置。
  7. 前記ソフトウェアは、バージョンアップ用の更新モジュールであることを特徴とする請求項1乃至6のいずれか1項に記載のソフトウェア提供装置。
  8. コンピュータを、
    複数のユーザがソフトウェアを利用する利用先のユーザからネットワークを介したダウンロードに関する要求を受けた場合に、当該利用先において同時にダウンロードが可能なユーザの上限数を決定する決定手段、
    当該利用先におけるダウンロード中のユーザ数が、前記決定手段が決定した上限数に満たない場合に前記要求をしたユーザに対してソフトウェアのダウンロードを許可する許可手段、
    として機能させるためのプログラム。
JP2019027191A 2019-02-19 2019-02-19 ソフトウェア提供装置及びプログラム Pending JP2020135344A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019027191A JP2020135344A (ja) 2019-02-19 2019-02-19 ソフトウェア提供装置及びプログラム
US16/554,543 US11099825B2 (en) 2019-02-19 2019-08-28 Software providing apparatus and non-transitory computer readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019027191A JP2020135344A (ja) 2019-02-19 2019-02-19 ソフトウェア提供装置及びプログラム

Publications (1)

Publication Number Publication Date
JP2020135344A true JP2020135344A (ja) 2020-08-31

Family

ID=72042149

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019027191A Pending JP2020135344A (ja) 2019-02-19 2019-02-19 ソフトウェア提供装置及びプログラム

Country Status (2)

Country Link
US (1) US11099825B2 (ja)
JP (1) JP2020135344A (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015088051A (ja) * 2013-10-31 2015-05-07 富士通株式会社 情報処理装置、方法、及びプログラム

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5390297A (en) * 1987-11-10 1995-02-14 Auto-Trol Technology Corporation System for controlling the number of concurrent copies of a program in a network based on the number of available licenses
JP3270102B2 (ja) * 1991-03-11 2002-04-02 ヒューレット・パッカード・カンパニー ライセンス付与方法及びシステム
US5671412A (en) * 1995-07-28 1997-09-23 Globetrotter Software, Incorporated License management system for software applications
US5758068A (en) * 1995-09-19 1998-05-26 International Business Machines Corporation Method and apparatus for software license management
GB2346989A (en) * 1999-02-19 2000-08-23 Ibm Software licence management system uses clustered licence servers
US6587881B1 (en) * 1999-04-09 2003-07-01 Microsoft Corporation Software server usage governor
JP2002312312A (ja) 2001-04-13 2002-10-25 Kit Asp:Kk 論理的階層構造のネットワーク構成を用いたアプリケーションサービス方法及びアプリケーションサーバシステム
JP2003140988A (ja) * 2001-10-30 2003-05-16 Ando Electric Co Ltd 動画配信サーバ負荷試験装置
CA2470734A1 (en) * 2002-01-22 2003-08-21 Siemens Medical Solutions Health Services Corporation System for estimating network traffic characteristics of executable software applications
US7707115B2 (en) * 2002-07-25 2010-04-27 Avaya Inc. Periodic software licensing system
US7353533B2 (en) * 2002-12-18 2008-04-01 Novell, Inc. Administration of protection of data accessible by a mobile device
US7526800B2 (en) * 2003-02-28 2009-04-28 Novell, Inc. Administration of protection of data accessible by a mobile device
US8020192B2 (en) * 2003-02-28 2011-09-13 Michael Wright Administration of protection of data accessible by a mobile device
US20080109679A1 (en) * 2003-02-28 2008-05-08 Michael Wright Administration of protection of data accessible by a mobile device
KR100468325B1 (ko) * 2003-03-28 2005-01-27 주식회사 프리챌 P2p서비스 방법
US7441041B2 (en) * 2003-11-29 2008-10-21 Microsoft Corporation Network download regulation method and system
JP2005234729A (ja) 2004-02-18 2005-09-02 Hitachi Omron Terminal Solutions Corp 不正アクセス防御システム及びその方法
US7895124B2 (en) * 2004-12-23 2011-02-22 International Business Machines Corporation Method for protecting sensitive data during execution
US8370514B2 (en) * 2005-04-28 2013-02-05 DISH Digital L.L.C. System and method of minimizing network bandwidth retrieved from an external network
WO2007044656A2 (en) * 2005-10-07 2007-04-19 Neoedge Networks, Inc. Advertisement identification, selection, and distribution involving a peer-to-peer network
US8620817B2 (en) * 2006-09-14 2013-12-31 Flexera Software, Inc. Method and system for creating license management in software applications
US8347286B2 (en) * 2007-07-16 2013-01-01 International Business Machines Corporation Method, system and program product for managing download requests received to download files from a server
JP2012508424A (ja) * 2008-11-07 2012-04-05 オパンガ ネットワークス インコーポレイテッド ホスト装置を利用してデータ転送を開始するポータブルデータ記憶装置
ES2856326T3 (es) * 2009-12-31 2021-09-27 Allot Ltd Dispositivo, sistema y método de optimización de entrega de multimedia
US8484340B2 (en) * 2010-06-14 2013-07-09 Microsoft Corporation Server array capacity management calculator
WO2015063936A1 (ja) * 2013-10-31 2015-05-07 株式会社島津製作所 ソフトウェアライセンス管理方法及びシステム
US20150186133A1 (en) * 2014-01-01 2015-07-02 Wipro Limited Systems and methods for enterprise application portfolio management
CN106331084B (zh) * 2016-08-22 2019-06-25 深圳Tcl新技术有限公司 软件后台自适应升级方法及装置
JP6763245B2 (ja) * 2016-09-13 2020-09-30 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
JP6880633B2 (ja) * 2016-10-06 2021-06-02 富士フイルムビジネスイノベーション株式会社 情報処理装置、情報処理システム及びプログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015088051A (ja) * 2013-10-31 2015-05-07 富士通株式会社 情報処理装置、方法、及びプログラム

Also Published As

Publication number Publication date
US20200264861A1 (en) 2020-08-20
US11099825B2 (en) 2021-08-24

Similar Documents

Publication Publication Date Title
US9600257B2 (en) Application installation system
JP6147731B2 (ja) デバイス機能へのアプリケーションの結び付け
US20160202963A1 (en) Software deployment over a network
JP4286798B2 (ja) ハードドライブにドライバファイルをインストールする方法、コンピュータ及びコンピュータ読取可能な記憶媒体
US8640190B1 (en) Parental control policy generation
KR20120017035A (ko) 상태와 데이터의 마이그레이션을 위한 상호작용 모델
JP4588755B2 (ja) 環境管理局の端末、評価値処理方法、評価値処理プログラム、ネットワーク事業者の端末、サービス要求処理方法、サービス要求処理プログラム、サービス提供者の端末、サービス提供処理方法、サービス提供処理プログラム、サービス利用者の端末、およびサービス提供を受けるための処理プログラム
KR101634571B1 (ko) 문서 동기화 방법 및 컴퓨터 프로그램, 그 기록매체
CN109981350B (zh) 一种云服务不间断的升级方法及系统
US20140282610A1 (en) Enterprise application management with enrollment tokens
US8640150B2 (en) Information processing terminal, information processing method, and program product
WO2020143199A1 (zh) 一种应用程序插件化的方法、系统以及相关装置
EP3654587B1 (en) Systems and methods for managing iot/eot devices
JP2016207111A (ja) 制御プログラム、情報処理端末、及び制御方法
KR101672962B1 (ko) 적응형 단말기 소프트웨어 관리 시스템 및 이에 의한 단말기 소프트웨어 관리 방법
JP2020135344A (ja) ソフトウェア提供装置及びプログラム
JP6065791B2 (ja) 制御プログラム及び情報処理端末
US20140133650A1 (en) License Administration Device and License Administration Method
JP5037545B2 (ja) 情報処理システムおよび制御プログラム
US20090151001A1 (en) Method and apparatus for operating rights
JP2005208935A (ja) ソフトウェア管理装置及びソフトウェア管理プログラム
JP5526663B2 (ja) 情報処理装置、ソフトウェア管理システム、及びソフトウェア管理方法
JP7120609B2 (ja) 資産管理装置及び資産管理プログラム
JP5264364B2 (ja) サーバシステム、インターネット接続管理方法及びインターネット接続管理プログラム
JP2010250714A (ja) クライアントサーバシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220119

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221031

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221108

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230425