IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ビジョナル・インキュベーション株式会社の特許一覧

<>
  • 特許-処理装置及び処理方法 図1
  • 特許-処理装置及び処理方法 図2
  • 特許-処理装置及び処理方法 図3
  • 特許-処理装置及び処理方法 図4
  • 特許-処理装置及び処理方法 図5
  • 特許-処理装置及び処理方法 図6
  • 特許-処理装置及び処理方法 図7
  • 特許-処理装置及び処理方法 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2022-04-07
(45)【発行日】2022-04-15
(54)【発明の名称】処理装置及び処理方法
(51)【国際特許分類】
   G06Q 50/10 20120101AFI20220408BHJP
   G06F 21/10 20130101ALI20220408BHJP
【FI】
G06Q50/10
G06F21/10 350
【請求項の数】 10
(21)【出願番号】P 2021135970
(22)【出願日】2021-08-24
【審査請求日】2021-08-26
【早期審査対象出願】
(73)【特許権者】
【識別番号】521541734
【氏名又は名称】ビジョナル・インキュベーション株式会社
(74)【代理人】
【識別番号】110002815
【氏名又は名称】IPTech特許業務法人
(72)【発明者】
【氏名】鈴木 康弘
【審査官】関 博文
(56)【参考文献】
【文献】欧州特許出願公開第03584728(EP,A1)
【文献】米国特許出願公開第2020/0026512(US,A1)
【文献】前田 博史,オープンソースソフトウェアに潜む法的リスクの低減に向けた取り組み,技報 UNISYS TECHNOLOGY REVIEW Vol.27 No.3 ,日本ユニシス株式会社,2007年11月30日,第27巻, 第3号,pp.132-146
【文献】浦田 敏 ,新たな時代のSI技術 マルチベンダ製品とOSSの利用リスクに対する取組み,FUJITSU Vol.63 No.2 ,富士通株式会社,2012年03月09日,第63巻, 第2号,pp.212-217
【文献】ソフトウェアライセンス管理ツール Black Duck Protex ソフトウェアライセンスのコンプライアンスは大丈夫ですか! 製品でのOSS流用を検出し、適切な利用を支援します。,C&Cユーザーフォーラム&iEXPO2009 ,2009年11月05日
【文献】ホワイトソース WhiteSource OSSセキュリティ&コンプライアンス管理ソリューション,日経 xTECH EXPO 2018 ,2018年10月17日
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
G06F 21/10
(57)【特許請求の範囲】
【請求項1】
プロジェクトに埋め込まれた2以上の公開ソフトウェアのライセンスを取得する取得部と、
前記2以上の公開ソフトウェアのライセンス及び前記プロジェクトの利用態様に基づいて、前記2以上の公開ソフトウェアについて対策が求められる優先順位を設定する制御部と、を備える、処理装置。
【請求項2】
前記制御部は、前記2以上の公開ソフトウェアのライセンスよりも前記プロジェクトの利用態様を優先して、前記優先順位を設定する、請求項1に記載の処理装置。
【請求項3】
前記プロジェクトの利用態様は、前記プロジェクトが頒布に該当するか否かに関する態様を含む、請求項1又は請求項2に記載の処理装置。
【請求項4】
前記ライセンスは、前記公開ソフトウェアのコードの開示義務に関する特定項目を含む、請求項1乃至請求項3のいずれか1項に記載の処理装置。
【請求項5】
前記特定項目は、前記公開ソフトウェアのコードの開示義務が課される範囲に関する項目を含む、請求項4に記載の処理装置。
【請求項6】
前記プロジェクトで使用することが許容された第1公開ソフトウェアの第1リストを管理する管理部を備え、
前記制御部は、前記第1リストで管理される前記第1公開ソフトウェア以外の対象公開ソフトウェアについて、前記2以上の公開ソフトウェアのライセンス及び前記プロジェクトの利用態様に基づいて前記優先順位を設定する、請求項1乃至請求項5のいずれか1項に記載された処理装置。
【請求項7】
前記制御部は、前記第1公開ソフトウェアの優先順位よりも高い優先順位を前記対象公開ソフトウェアに設定する、請求項6に記載の処理装置。
【請求項8】
前記プロジェクトで使用することが禁止された第2公開ソフトウェアの第2リストを管理する管理部を備え、
前記制御部は、前記第2リストで管理される前記第2公開ソフトウェア以外の対象公開ソフトウェアについて、前記2以上の公開ソフトウェアのライセンス及び前記プロジェクトの利用態様に基づいて前記優先順位を設定する、請求項1乃至請求項7のいずれか1項に記載された処理装置。
【請求項9】
前記制御部は、前記第2公開ソフトウェアの優先順位よりも低い優先順位を前記対象公開ソフトウェアに設定する、請求項8に記載の処理装置。
【請求項10】
処理装置が、プロジェクトに埋め込まれた2以上の公開ソフトウェアのライセンスを取得するステップと、
前記処理装置が、前記2以上の公開ソフトウェアのライセンス及び前記プロジェクトの利用態様に基づいて、前記2以上の公開ソフトウェアについて対策が求められる優先順位を設定するステップと、を備える、処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、処理装置及び処理方法に関する。
【背景技術】
【0002】
近年、複数の公開ソフトウェア(OSS; Open Source Software)を組み込んだプロジェジェクトを開発する利用シーンが増加している。
【0003】
このようなケースにおいて、プロジェクトに組み込まれたOSSについて、OSSのライセンスに関する分析結果を出力する技術が提案されている。具体的には、OSSの開示義務に関するライセンス(例えば、strong copyleft license, permissive license, weak license)に基づいてOSSを分類するとともに、ライセンスのタイプ(例えば、snippet、file、libraryなど)及びルールに基づいて、OSSの利用可否が出力される(例えば、特許文献1)。
【先行技術文献】
【特許文献】
【0004】
【文献】米国特許出願公開第2019/0005206号明細書
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、プロジェクトに組み込まれるOSSの数が増加しており、プロジェクトの開発者としては、全てのOSSを対象として一律にOSSのライセンスを確認する作業は極めて煩雑である。
【0006】
そこで、本発明は、上述した課題を解決するためになされたものであり、OSSのライセンスの観点で対策が求められるOSSの優先順位を適切に設定することを可能とする処理装置及び処理方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
第1の特徴は、処理装置は、プロジェクトに埋め込まれた2以上の公開ソフトウェアのライセンスを取得する取得部と、前記2以上の公開ソフトウェアのライセンス及び前記プロジェクトの利用態様に基づいて、前記2以上の公開ソフトウェアについて対策が求められる優先順位を設定する制御部と、を備える、ことを要旨とする。
【0008】
第2の特徴は、第1の特徴において、前記制御部は、前記2以上の公開ソフトウェアのライセンスよりも前記プロジェクトの利用態様を優先して、前記優先順位を設定する、ことを要旨とする。
【0009】
第3の特徴は、第1の特徴又は第2の特徴において、前記プロジェクトの利用態様は、前記プロジェクトが頒布に該当するか否かに関する態様を含む、ことを要旨とする。
【0010】
第4の特徴は、第1の特徴乃至第3の特徴のいずれかにおいて、前記ライセンスは、前記公開ソフトウェアのコードの開示義務に関する特定項目を含む、ことを要旨とする。
【0011】
第5の特徴は、第4の特徴において、前記特定項目は、前記公開ソフトウェアのコードの開示義務が課される範囲に関する項目を含む、ことを要旨とする。
【0012】
第6の特徴は、第1の特徴乃至第5の特徴のいずれかにおいて、前記処理装置は、前記プロジェクトで使用することが許容された第1公開ソフトウェアの第1リストを管理する管理部を備え、前記制御部は、前記第1リストで管理される前記第1公開ソフトウェア以外の対象公開ソフトウェアについて、前記2以上の公開ソフトウェアのライセンス及び前記プロジェクトの利用態様に基づいて前記優先順位を設定する、ことを要旨とする。
【0013】
第7の特徴は、第6の特徴において、前記制御部は、前記第1公開ソフトウェアの優先順位よりも高い優先順位を前記対象公開ソフトウェアに設定する、ことを要旨とする。
【0014】
第8の特徴は、第1の特徴乃至第7の特徴のいずれかにおいて、前記処理装置は、前記プロジェクトで使用することが禁止された第2公開ソフトウェアの第2リストを管理する管理部を備え、前記制御部は、前記第2リストで管理される前記第2公開ソフトウェア以外の対象公開ソフトウェアについて、前記2以上の公開ソフトウェアのライセンス及び前記プロジェクトの利用態様に基づいて前記優先順位を設定する、ことを要旨とする。
【0015】
第9の特徴は、第8の特徴において、前記制御部は、前記第2公開ソフトウェアの優先順位よりも低い優先順位を前記対象公開ソフトウェアに設定する、
第10の特徴は、処理方法は、プロジェクトに埋め込まれた2以上の公開ソフトウェアのライセンスを取得するステップと、前記2以上の公開ソフトウェアのライセンス及び前記プロジェクトの利用態様に基づいて、前記2以上の公開ソフトウェアについて対策が求められる優先順位を設定するステップと、を備える、ことを要旨とする。
【発明の効果】
【0016】
本発明によれば、OSSのライセンスの観点で対策が求められるOSSの優先順位を適切に設定することを可能とする処理装置及び処理方法を提供することができる。
【図面の簡単な説明】
【0017】
図1図1は、実施形態に係る処理システム100を示す図である。
図2図2は、実施形態に係る処理装置10を示す図である。
図3図3は、実施形態に係るプロジェクトの一例を示す図である。
図4図4は、実施形態に係るWhite Listの一例を示す図である。
図5図5は、実施形態に係るBlack Listの一例を示す図である。
図6図6は、実施形態に係る優先順位の一例を示す図である。
図7図7は、実施形態に係る処理方法を示す図である。
図8図8は、実施形態に係る優先順位の一例を示す図である。
【発明を実施するための形態】
【0018】
以下において、実施形態について図面を参照しながら説明する。なお、以下の図面の記載において、同一又は類似の部分には、同一又は類似の符号を付している。
【0019】
但し、図面は模式的なものであり、各寸法の比率などは現実のものとは異なる場合があることに留意すべきである。従って、具体的な寸法などは以下の説明を参酌して判断すべきである。また、図面相互間においても互いの寸法の関係又は比率が異なる部分が含まれている場合があることは勿論である。
【0020】
[開示の概要]
開示の概要に係る処理装置は、プロジェクトに埋め込まれた2以上の公開ソフトウェアのライセンスを取得する取得部と、前記2以上の公開ソフトウェアのライセンス及び前記プロジェクトの利用態様に基づいて、前記2以上の公開ソフトウェアについて対策が求められる優先順位を設定する制御部と、を備える。
【0021】
開示の概要に係る処理方法は、プロジェクトに埋め込まれた2以上の公開ソフトウェアのライセンスを取得するステップと、前記2以上の公開ソフトウェアのライセンス及び前記プロジェクトの利用態様に基づいて、前記2以上の公開ソフトウェアについて対策が求められる優先順位を設定するステップと、を備える。
【0022】
開示の概要では、2以上の公開ソフトウェアのライセンス及びプロジェクトの利用態様に基づいて、2以上の公開ソフトウェアについて対策が求められる優先順位が設定される。このような構成によれば、プロジェクトに組み込まれる公開ソフトウェアの数が多い場合であっても、公開ソフトウェアのライセンスを確認する優先順位の設定が実行されるため、公開ソフトウェアのライセンスを確認する作業を軽減することができる。
【0023】
ここで、公開ソフトウェアは、ソフトウェアのソースコードが公開され、改良及び再配布が許可されたソフトウェア(以下、OSS; Open Source Software)であってもよい。公開、改良及び再配布は無償で行われてもよい。優先順位は、OSSのライセンスについて対策すべき優先順位であってもよい。対策は、代替的なOSSへの変更を含んでもよく、OSSの利用に伴うリスクの把握であってもよい。
【0024】
また、プロジェクトは、ユーザに提供される製品であると考えてもよい。プロジェクトは、2以上のOSSが組み込まれたソフトウェアパッケージであると考えてもよく、2以上のOSSが組み込まれたシステムであると考えてもよい。OSSは、ソフトウェアコンポーネントであると考えてもよい。
【0025】
[実施形態]
(処理システム)
以下において、実施形態に係る処理システムについて説明する。図1は、実施形態に係る処理システム100を示す図である。
【0026】
図1に示すように、処理システム100は、処理装置10と、表示装置20と、提供装置30と、を有する。処理装置10、表示装置20及び提供装置30は、ネットワーク200によって通信可能に接続される。特に限定されるものではないが、ネットワーク200は、インターネットを含んでもよく、ローカルエリアネットワークを含んでもよく、移動体通信網を含んでもよい。ネットワーク200は、VPN(Virtual Private Network)を含んでもよい。
【0027】
処理装置10は、提供装置30によって提供されるプロジェクトに含まれるOSSについて対策が求められる優先順位を設定する。処理装置10は、2以上のサーバによって構成されてもよく、処理装置10の少なくとも一部は、クラウドコンピューティングサービスによって実現されてもよい。処理装置10の詳細については後述する(図2を参照)。
【0028】
表示装置20は、ディスプレイ21を有しており、処理装置10によって設定された優先順位を表示する。表示装置20は、プロジェクトの開発者によって利用される装置であってもよい。例えば、表示装置20は、パーソナルコンピュータであってもよく、スマートフォンであってもよく、タブレット端末であってもよい。例えば、ディスプレイ21は、液晶パネルであってもよく、有機ELパネルであってもよい。
【0029】
提供装置30は、2以上のOSSが組み込まれたプロジェクトを提供する。プロジェクトは、OSS以外のソフトウェアを含んでもよい。プロジェクトに含まれるOSSは改変されてもよい。提供装置30は、2以上のサーバによって構成されてもよく、提供装置30の少なくとも一部は、クラウドコンピューティングサービスによって実現されてもよい。
【0030】
(処理装置)
以下において、実施形態に係る処理装置について説明する。図2は、実施形態に係る処理装置10を示す図である。
【0031】
図2に示すように、処理装置10は、通信部11と、管理部12と、制御部13と、を有する。
【0032】
通信部11は、通信モジュールによって構成される。通信モジュールは、IEEE802.11a/b/g/n/ac/ax、LTE、5G、6Gなどの規格に準拠する無線通信モジュールであってもよく、IEEE802.3などの規格に準拠する有線通信モジュールであってもよい。
【0033】
通信部11は、プロジェクトに埋め込まれた2以上のOSSのライセンスを取得する取得部を構成してもよい。例えば、通信部11は、提供装置30へのアクセス権限を有しており、プロジェクトをスキャンすることによって、プロジェクトに含まれるOSSを自動的に特定してもよい。通信部11は、プロジェクトに含まれるOSSの一覧を表示装置20から受信することによって、プロジェクトに含まれるOSSを特定してもよい。OSSの一覧は、開発者によって手動で入力されてもよい。続いて、通信部11は、特定されたOSSに基づいて、OSSのライセンスを取得する。OSSのライセンスは、外部サーバで管理されており、外部サーバから取得されてもよい。OSSのライセンスは、処理装置10で管理されており、処理装置10内で取得されてもよい。
【0034】
ここで、OSSのライセンスは、OSSの複製に関する項目、OSSの改良に関する項目、OSSの再頒布に関する項目を含んでもよい。さらに、OSSのライセンスは、OSSのコードに関する開示義務に関する特定項目を含んでもよい。特定項目は、OSSの開示義務が課される範囲に関する項目であってもよい。例えば、特定項目は、コピーレフト型、準コピーレフト型、非コピーレフト型などの項目を含んでもよい。特定項目は、OSSの利用で課される条件に関する項目であると考えてもよい。
【0035】
コピーレフト型は、OSSが改良された場合に、改良されたOSSのコードの開示義務が引き継がれるタイプのライセンスであると考えてもよい。コピーレフト型は、OSSが他のソフトウェアと組み合わせた場合に、他のソフトウェアのコードの開示義務が引き継がれるタイプのライセンスであると考えてもよい。
【0036】
コピーレフト型のライセンスとしては、GPL(General Public License)、AGPL(Affero GPL)、EUPL(European Union Public License)などが挙げられる。
【0037】
準コピーレフト型は、OSSが改良された場合に、改良されたOSSのコードの開示義務が引き継がれるタイプのライセンスであると考えてもよい。準コピーレフト型は、OSSが他のソフトウェアと組み合わせた場合には、他のソフトウェアのコードの開示義務が引き継がれないタイプのライセンスであると考えてもよい。
【0038】
準コピーレフト型のライセスとしては、LGPL(Library GPL)、MPL(Mozilla Public License)、CPL(Common Public License)などが挙げられる。
【0039】
非コピーレフト型は、OSSが改良された場合に、改良されたOSSのコードの開示義務が引き継がれないタイプのライセンスであると考えてもよい。非コピーレフト型は、OSSが他のソフトウェアと組み合わせた場合に、他のソフトウェアのコードの開示義務が引き継がれないタイプのライセンスであると考えてもよい。
【0040】
非コピーレフト型のライセンスとしては、BSD(Berkeley Software Distribution) License、MIT(Massachusetts Institute of Technology) License、Apache Licenseなどが挙げられる。
【0041】
管理部12は、SSD(Solid State Drive)、HDD(Hard Disk Drive)などの記憶媒体によって構成されており、様々な情報を格納する。
【0042】
管理部12は、プロジェクトで使用することが許容された第1公開ソフトウェア(以下、第1OSS)の第1リスト(以下、White List)を管理してもよい。White Listは、プロジェクトの開発者によって設定されてもよい。
【0043】
管理部12は、プロジェクトで使用することが禁止された第2公開ソフトウェア(以下、第2OSS)の第2リスト(Black List)を管理してもよい。Black Listは、プロジェクトの開発者によって設定されてもよい。
【0044】
管理部12は、OSSとOSSのライセンスとを対応付ける一覧を管理してもよい。一覧は、外部サーバから取得されてもよく、手動で入力されてもよい。
【0045】
制御部13は、少なくとも1つのプロセッサを含んでもよい。少なくとも1つのプロセッサは、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)、1以上のIntegrated Circuit、1以上のDiscrete Circuit、及び、これらの組合せによって構成されてもよい。
【0046】
制御部13は、2以上のOSSのライセンス及びプロジェクトの利用態様に基づいて、2以上のOSSについて対策が求められる優先順位を設定する。
【0047】
ここで、プロジェクトの利用態様は、プロジェクトが頒布に該当するか否かに関する態様を含んでもよい。プロジェクトの利用態様は、プロジェクトの開発者によって設定されてもよい。頒布は、プロジェクトを利用するユーザの端末(以下、ユーザ端末)に対して、プロジェクトに関するコード又はプロジェクトの複製物(バイナリ)が提供されることを意味してもよい。例えば、ユーザ端末に対するプロジェクトのインストールは、プロジェクトの頒布を意味してもよい。ユーザ端末によるSaaS(Software as a Service)的なプロジェクトの利用は、プロジェクトの非頒布を意味してもよい。上述したように、ライセンスは、OSSのコードの開示義務に関する特定項目を含んでもよい。特定項目は、OSSのコードの開示義務が課される範囲に関する項目を含んでもよい。
【0048】
例えば、制御部13は、頒布されるプロジェクト(以下、頒布系PJ)に組み込まれるOSSの優先順位を、頒布されないプロジェクト(以下、非頒布系PJ)に組み込まれるOSSの優先順位よりも高く設定する。例えば、制御部13は、開示義務が課される範囲が広いOSSの優先順位を、開示義務が課される範囲が狭いOSSの優先順位よりも高く設定する。具体的には、制御部13は、コピーレフト型のライセンスを有するOSSの優先順位を最も高く設定しもよい。制御部13は、コピーレフト型のライセンスを有するOSSの優先順位よりも、準コピーレフト型のライセンスを有するOSSの優先順位を低く設定してもよい。制御部13は、準コピーレフト型のライセンスを有するOSSの優先順位よりも、非コピーレフト型のライセンスを有するOSSの優先順位を低く設定してもよい。
【0049】
このような前提下において、制御部13は、OSSのライセンスよりもプロジェクトの利用態様を優先して、優先順位を設定してもよい。具体的には、制御部13は、OSSのライセンスによらずに、頒布系PJに組み込まれるOSSの優先順位を非頒布系PJに組み込まれるOSSの優先順位よりも高く設定してもよい。その上で、制御部13は、頒布系PJに組み込まれるOSSを対象として、OSSのライセンスに基づいて優先順位を設定してもよい。同様に、制御部13は、非頒布系PJに組み込まれるOSSを対象として、OSSのライセンスに基づいて優先順位を設定してもよい。
【0050】
さらに、制御部13は、White Listで管理される第1OSS以外の対象公開ソフトウェア(以下、対象OSS)について、2以上のOSSのライセンス及びプロジェクトの利用態様に基づいて優先順位を設定してもよい。制御部13は、第1OSSの優先順位よりも高い優先順位を対象OSSに設定してもよい。
【0051】
一方で、制御部13は、Black Listで管理される第2OSS以外の対象公開ソフトウェア(以下、対象OSS)について、2以上のOSSのライセンス及びプロジェクトの利用態様に基づいて優先順位を設定してもよい。制御部13は、第2OSSの優先順位よりも低い優先順位を対象OSSに設定してもよい。
【0052】
(プロジェクト)
以下において、実施形態に係るプロジェクトの一例について説明する。図3は、実施形態に係るプロジェクトの一例を示す図である。
【0053】
図3に示すように、処理装置10は、提供装置30によって提供されるプロジェクト及びプロジェクトに組み込まれるOSSを取得する。さらに、処理装置10は、OSSのライセンス(種類及び内容)を取得する。
【0054】
上述したように、プロジェクトは、頒布系PJ及び非頒布系PJを含んでもよい。“AAA”は、頒布系PJの一例であり、“BBB”は、非頒布系PJの一例である。上述したように、ライセンスは、コピーレフト型のライセンス(例えば、GPL)、準コピーレフト型のライセンス(例えば、LGPL)及び非コピーレフト型のライセンス(例えば、BSD、MIT License、Apache License)を含んでもよい。
【0055】
(White List)
以下において、実施形態に係るWhite Listの一例について説明する。図4は、実施形態に係るWhite Listの一例を示す図である。White Listは管理部12によって管理される。
【0056】
White Listは、プロジェクトで使用することが許容された第1OSSの一覧である。“bbb”及び“ppp”は、第1OSSの一例である。特に限定されるものではないが、第1OSSは、非コピーレフト型のライセンス(例えば、MIT License、BSD)を有するOSSであってもよい。第1OSSは、プロジェクトの開発者によって設定されてもよい。
【0057】
(Black List)
以下において、実施形態に係るBlack Listの一例について説明する。図5は、実施形態に係るBlack Listの一例を示す図である。Black Listは管理部12によって管理される。
【0058】
Black Listは、プロジェクトで使用することが禁止された第2OSSの一覧である。“aaa”及び“rrr”は、第2OSSの一例である。特に限定されるものではないが、第2OSSは、コピーレフト型のライセンス(例えば、GPL)を有するOSSであってもよい。第1OSSは、プロジェクトの開発者によって設定されてもよい。
【0059】
(優先順位)
以下において、実施形態に係る優先順位の一例について説明する。図6は、実施形態に係る優先順位の一例を示す図である。
【0060】
図6に示すように、処理装置10は、Black Listに含まれる第2OSSの優先順位を最も高く設定してもよい。処理装置10は、White Listに含まれる第1OSSの優先順位を最も低く設定してもよい。
【0061】
処理装置10は、第1OSS及び第2OSSを除いた対象OSSについて、頒布系PJに含まれるOSSの優先順位を、非頒布系PJに含まれるOSSの優先順位よりも高く設定してもよい。なお、処理装置10は、Black Listに含まれる第2OSSの優先順位よりも、頒布系PJに含まれるOSSの優先順位を低く設定してもよい。処理装置10は、White Listに含まれる第1OSSの優先順位よりも、非頒布系PJに含まれるOSSの優先順位を高く設定してもよい。
【0062】
さらに、処理装置10は、頒布系PJに含まれるOSSについて、OSSのライセンスに基づいて優先順位を設定してもよい。処理装置10は、コピーレフト型のライセンスを有するOSSの優先順位を最も高く設定しもよい。処理装置10は、コピーレフト型のライセンスを有するOSSの優先順位よりも、準コピーレフト型のライセンスを有するOSSの優先順位を低く設定してもよい。処理装置10は、準コピーレフト型のライセンスを有するOSSの優先順位よりも、非コピーレフト型のライセンスを有するOSSの優先順位を低く設定してもよい。
【0063】
同様に、処理装置10は、非頒布系PJに含まれるOSSについて、OSSのライセンスに基づいて優先順位を設定してもよい。処理装置10は、コピーレフト型のライセンスを有するOSSの優先順位を最も高く設定しもよい。処理装置10は、コピーレフト型のライセンスを有するOSSの優先順位よりも、準コピーレフト型のライセンスを有するOSSの優先順位を低く設定してもよい。処理装置10は、準コピーレフト型のライセンスを有するOSSの優先順位よりも、非コピーレフト型のライセンスを有するOSSの優先順位を低く設定してもよい。
【0064】
(処理方法)
以下において、実施形態に係る処理方法について説明する。図7は、実施形態に係る処理方法を示す図である。
【0065】
図7に示すように、ステップS10において、処理装置10は、提供装置30によって提供されるプロジェクト及びプロジェクトに組み込まれるOSSを取得する。さらに、処理装置10は、OSSのライセンス(種類及び内容)を取得する。
【0066】
ステップS12において、処理装置10は、White Listに含まれる第1OSSをトリアージの対象から除外する。S12では、トリアージは、OSSのライセンス及びプロジェクトの利用態様に基づいたトリアージの意味である。
【0067】
ステップS14において、処理装置10は、Black Listに含まれる第2OSSをトリアージの対象から除外する。S14では、トリアージは、OSSのライセンス及びプロジェクトの利用態様に基づいたトリアージの意味である。
【0068】
ステップS16において、処理装置10は、プロジェクトの利用態様に基づいて、OSSのトリアージを実行する。利用態様は、プロジェクトが頒布されるか否かである。例えば、処理装置10は、頒布系PJに含まれるOSSの優先順位を、非頒布系PJに含まれるOSSの優先順位よりも高く設定してもよい。
【0069】
ステップS18において、処理装置10は、OSSのライセンスに基づいて、OSSのトリアージを実行する。例えば、ライセンスは、コピーレフト型、準コピーレフト型及び非コピーレフト型などのライセンスである。例えば、処理装置10は、コピーレフト型のライセンスを有するOSSの優先順位を最も高く設定しもよい。処理装置10は、コピーレフト型のライセンスを有するOSSの優先順位よりも、準コピーレフト型のライセンスを有するOSSの優先順位を低く設定してもよい。処理装置10は、準コピーレフト型のライセンスを有するOSSの優先順位よりも、非コピーレフト型のライセンスを有するOSSの優先順位を低く設定してもよい。
【0070】
ステップS20において、処理装置10は、トリアージの結果を表示装置30に出力する。特に限定されるものではないが、トリアージの結果は、優先順位が高い順に選択された所定数のOSSを含んでもよい。トリアージの結果は、所定閾値よりも高い優先順位を有するOSSを含んでもよい。トリアージの結果は、White Listに含まれる第1OSSを含まずに、他のOSSの優先順位を含んでもよい。トリアージの結果は、White Listに含まれる第1OSS及び非頒布系PJに組み込まれるOSSを含まずに、他のOSSの優先順位を含んでもよい。トリアージの結果は、非コピーレフト型のライセンスを有するOSSを含まずに、他のラインセスを有するOSSの優先順位を含んでもよい。
【0071】
なお、トリアージの結果にどのようなOSSを含めるのかについては、表示装置30(例えば、開発者)によって任意に設定可能であってもよい。
【0072】
(作用及び効果)
実施形態では、処理装置10は、2以上のOSSのライセンス及びプロジェクトの利用態様に基づいて、2以上のOSSについて対策が求められる優先順位を設定する。このような構成によれば、プロジェクトに組み込まれるOSSの数が多い場合であっても、OSSのライセンスを確認する優先順位の設定が実行されるため、OSSのライセンスを確認する作業を軽減することができる。
【0073】
例えば、非頒布系PJに含まれるOSSの優先順位は、頒布系PJに含まれるOSSの優先順位よりも低く設定されてもよい。このような構成によれば、非頒布系PJに含まれるOSSのライセンスを確認する作業を軽減することができる。
【0074】
例えば、非コピーレフト型のライセンスを有するOSSの優先順位は、コピーレフト型又は準コピーレフト型のライセンスを有するOSSの優先順位よりも低く設定されてもよい。このような構成によれば、非コピーレフト型のライセンスを有するOSSのライセンスを確認する作業を軽減することができる。
【0075】
[変更例1]
以下において、実施形態の変更例1について説明する。以下においては、上述した実施形態に対する差異について主として説明する。
【0076】
変更例1では、コピーレフト型として、第1タイプ及び第2タイプが存在するケースについて説明する。
【0077】
コピーレフト型(第1タイプ)は、ネットワーク200を介してOSSが組み込まれたソフトウェアを提供するケースにおいて、OSSが改良された場合に、改良されたOSSのコードの開示義務が引き継がれるタイプのライセンスであってもよい。コピーレフト型(第1タイプ)は、ネットワーク200を介してOSSが組み込まれたソフトウェアを提供するケースにおいて、OSSが他のソフトウェアと組み合わせた場合に、他のソフトウェアのコードの開示義務が引き継がれるタイプのライセンスであると考えてもよい。例えば、コピーレフト型(第1タイプ)のライセンスとしては、AGPLが挙げられる。
【0078】
コピーレフト型(第2タイプ)は、ネットワーク200を介してOSSが組み込まれたソフトウェアを提供するケースにおいて、OSSが改良された場合に、改良されたOSSのコードの開示義務が引き継がれないタイプのライセンスであってもよい。コピーレフト型(第2タイプ)は、ネットワーク200を介してOSSが組み込まれたソフトウェアを提供するケースにおいて、OSSが他のソフトウェアと組み合わせた場合に、他のソフトウェアのコードの開示義務が引き継がれないタイプのライセンスであると考えてもよい。例えば、コピーレフト型(第2タイプ)のライセンスとしては、GPLが挙げられる。
【0079】
なお、準コピーレフト型についても、第1タイプ及び第2タイプが存在してもよい。準コピーレフト型(第1タイプ)は、ネットワーク200を介してOSSが組み込まれたソフトウェアを提供するケースにおいて、準コピーレフト型のライセンスが引き継がれるタイプのライセンスであってもよい。準コピーレフト型(第2タイプ)は、ネットワーク200を介してOSSが組み込まれたソフトウェアを提供するケースにおいて、準コピーレフト型のライセンスが引き継がれないタイプのライセンスであってもよい。例えば、準コピーレフト型(第2タイプ)のライセンスとしては、LGPLが挙げられる。
【0080】
以下において、変更例1に係る優先順位の一例について説明する。図8は、変更例1に係る優先順位の一例を示す図である。ここでは、上述した図6に対する差異について主として説明する。
【0081】
図8に示すように、処理装置10は、コピーレフト型(第1タイプ)のOSSについては、OSSが頒布系PJであるか非頒布系PJであるかによらずに、頒布系PJに含まれるコピーレフト型(第2タイプ)のOSSの優先順位よりも高い優先順位を設定する。このようなケースにおいて、コピーレフト型(第1タイプ)のOSSの優先順位は、Black Listに含まれるOSSの優先順位と同レベルで扱われてもよい。
【0082】
すなわち、処理装置10は、OSSのライセンスが特定ライセンス(例えば、コピーレフト型(第1タイプ))である場合には、OSSが頒布系PJであるか非頒布系PJであるかによらずに、特定ライセンスを有するOSSの優先順位を設定してもよい。
【0083】
特に限定されるものではないが、ネットワーク200を介したソフトウェアの提供は、ユーザ端末によるSaaS的なプロジェクトの利用と同義であってもよい。言い換えると、ネットワーク200を介したソフトウェアの提供は、プロジェクトの頒布と同義であってもよい。
【0084】
[その他の実施形態]
本発明は上述した実施形態によって説明したが、この開示の一部をなす論述及び図面は、この発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施形態、実施例及び運用技術が明らかとなろう。
【0085】
上述した開示では、プロジェクトの利用態様は、プロジェクトの開発者によって設定される。しかしながら、上述した開示はこれに限定されるものではない。プロジェクトの利用態様は、処理装置10によるプロジェクトの解析によって設定されてもよい。例えば、JavaScriptで記述されたプロジェクトについては、デフォルトで頒布PJであると設定されてもよい。
【0086】
上述した開示では特に触れていないが、処理装置10は、ライセンスを特定することができないOSS(以下、未特定OSS)の優先順位を設定してもよい。例えば、処理装置10は、未特定OSSの優先順位を頒布系PJのコピーレフト型のOSSの優先順位よりも低く設定してもよい。処理装置10は、未特定OSSの優先順位を、頒布系PJの準コピーレフト型のOSSの優先順位よりも高く設定してもよく、頒布系PJの準コピーレフト型のOSSの優先順位よりも低く設定してもよい。処理装置10は、未特定OSSの優先順位を、頒布系PJの非コピーレフト型のOSSの優先順位よりも高く設定してもよく、頒布系PJの非コピーレフト型のOSSの優先順位よりも低く設定してもよい。処理装置10は、未特定OSSの優先順位を非頒布系PJのOSSの優先順位よりも高く設定してもよい。
【0087】
上述した開示では特に触れていないが、処理装置10は、White Listに含まれる第1OSSについて、優先順位付けの対象から除外してもよい。このようなケースにおいて、処理装置10は、第1OSSが頒布系PJに含まれるか否かを判定する処理を省略してもよく、第1OSSのライセンスを判定する処理を省略してもよい。処理装置10は、非頒布系PJに含まれるOSSについて、優先順位付けの対象から除外してもよい。このようなケースにおいて、処理装置10は、非頒布系PJに含まれるOSSのラインセンスを判定する処理を省略してもよい。このような構成によれば、処理装置10の処理負荷を軽減することができる。
【0088】
上述した開示では、処理装置10は、White List及びBlack Listを管理するケースについて例示した。しかしながら、上述した開示はこれに限定されるものではない。処理装置10は、White Listを管理していなくてもよく、Black Listを管理していなくてもよく、White List及びBlack Listの双方を管理していなくてもよい。
【0089】
上述した開示では特に触れていないが、優先順位は、トリアージレベルと称されてもよい。
【0090】
実施形態では、処理装置10が1つの装置であるケースを例示した。しかしながら、実施形態はこれに限定されるものではない。処理装置10が有する機能は、2以上のエンティティによって実現されてもよい。2以上のエンティティは、クラウドコンピューティングサービスを提供するエンティティを含んでもよい。また、管理部12は、処理装置10とは別に設けられるクラウド上のデータベースであってもよい。
【0091】
実施形態では特に触れていないが、処理装置10が行う各処理をコンピュータに実行させるプログラムが提供されてもよい。また、プログラムは、コンピュータ読取り可能媒体に記録されていてもよい。コンピュータ読取り可能媒体を用いれば、コンピュータにプログラムをインストールすることが可能である。ここで、プログラムが記録されたコンピュータ読取り可能媒体は、非一過性の記録媒体であってもよい。非一過性の記録媒体は、特に限定されるものではないが、例えば、CD-ROMやDVD-ROM等の記録媒体であってもよい。
【0092】
或いは、処理装置10が行う各処理を実行するためのプログラムを記憶するメモリ及びメモリに記憶されたプログラムを実行するプロセッサによって構成されるチップが提供されてもよい。
【符号の説明】
【0093】
10…処理装置、11…通信部、12…管理部、13…制御部、20…表示装置、21…ディスプレイ、30…提供装置、100…処理システム
【要約】
【課題】 OSSのライセンスの観点で対策が求められるOSSの優先順位を適切に設定することを可能とする処理装置及び処理方法を提供する。
【解決手段】 処理装置は、プロジェクトに埋め込まれた2以上の公開ソフトウェアのライセンスを取得する取得部と、前記2以上の公開ソフトウェアのライセンス及び前記プロジェクトの利用態様に基づいて、前記2以上の公開ソフトウェアについて対策が求められる優先順位を設定する制御部と、を備える。
【選択図】 図2

図1
図2
図3
図4
図5
図6
図7
図8