JP2021168184A - Aiを使用したソースコード売買システム - Google Patents
Aiを使用したソースコード売買システム Download PDFInfo
- Publication number
- JP2021168184A JP2021168184A JP2021115840A JP2021115840A JP2021168184A JP 2021168184 A JP2021168184 A JP 2021168184A JP 2021115840 A JP2021115840 A JP 2021115840A JP 2021115840 A JP2021115840 A JP 2021115840A JP 2021168184 A JP2021168184 A JP 2021168184A
- Authority
- JP
- Japan
- Prior art keywords
- source code
- price
- information
- trading system
- selling
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims abstract description 37
- 238000003860 storage Methods 0.000 claims abstract description 31
- 238000009826 distribution Methods 0.000 claims abstract description 13
- 238000004364 calculation method Methods 0.000 claims description 12
- 238000011156 evaluation Methods 0.000 claims description 9
- 238000000611 regression analysis Methods 0.000 claims description 7
- 230000007246 mechanism Effects 0.000 abstract description 7
- 230000006870 function Effects 0.000 description 32
- 230000001186 cumulative effect Effects 0.000 description 16
- 238000012545 processing Methods 0.000 description 14
- 238000007726 management method Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 9
- 238000004422 calculation algorithm Methods 0.000 description 8
- 238000013461 design Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 238000007790 scraping Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
そこで、本発明は、ソースコードの類似度に基づく売買利益の配分の仕組みや、外部ソースの情報を活用したダイナミックプライシング(変動価格)の仕組みを提供する。
本願は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、ソフトウェアのソースコードを売買するためのソースコード売買システムであって、ソースコードを記憶する記憶手段と、前記ソースコードの内容、売買情報又は書誌情報の少なくとも一つに基づいて、前記ソースコードの第1の販売価格を算出する価格決定手段と、前記ソースコード売買システムの外部にある外部サービスサーバから情報を取得する外部情報取得手段と、前記第1の販売価格を、前記外部サービスサーバから取得した情報に基づいて調整し、第2の販売価格を算出する価格調整手段と、算出された前記第2の販売価格を表示する売買仲介手段と、を有することを特徴とする。
図1は、ソースコード売買システムの構成を示す図である。ソースコード売買システム1は、1又は2以上の販売者端末21及び購入者端末22と、ネットワークを介して接続されている。ソースコード売買システム1は、商品登録部11を介して販売者端末21から登録されたソースコードデータ12を、売買仲介部13を介して購入者端末22のユーザにダウンロード販売する。なお、販売形式はダウンロード販売でなくともよい。
図4は、ソースコード売買システム1を含む全体システム400の構成例である。
全体システム400は、複数のソースコード販売者端末21と複数のソースコード購入者端末22と複数の外部サービスサーバ23とソースコード売買システム1を有し、それぞれの端末やサーバがネットワークを介してソースコード売買システム1に接続されている。なお、ネットワークは有線、無線を問わない。
販売者端末21は、例えばソフトウェア開発会社、システム構築会社、大学等教育機関、個人プログラマー等が使用するコンピュータやタブレットなどの端末であり、自らが作成したソフトウェアもしくは他のソフトウェアを改良したソフトウェア等のソースコードを提供及び販売する。
ソースコード売買システム1は、販売者端末21と購入者端末22間をつなぎ、適切な価格でソースコードを販売する仲介を行う。
外部サービスサーバ23は、例えば本ソースコード売買システム1と同様にソースコードを売買するコード売買サイトや、検索エンジンサイトや、ニュースや株価を提供するニュースサイト等である。ソースコード売買システム1は、これらの外部サービスサーバ23から、ソースコードに関する販売価格情報や、ソースコードに関連したニュースの記事情報や株価情報などの外部情報を取得する。
補助記憶装置には、各種データベース(DB)が記憶されている。「データベース」とは、プロセッサまたは外部のコンピュータからの任意のデータ操作(例えば、抽出、追加、削除、上書きなど)に対応できるようにデータ集合を記憶する機能要素(記憶部)である。データベースの実装方法は限定されず、例えばデータベース管理システムでもよいし、表計算ソフトウェアでもよいし、XMLなどのテキストファイルでもよい。
ソースコード売買システム1は、例えばクラウド上に配置されたサーバで構成される。
主記憶装置501には、商品登録部11、売買仲介部13、価格決定部15、類否判定部16、ソースコード要望提示部17、外部情報取得部31、価格調整部32等のプログラムやアプリケーションが記憶されており、これらのプログラムやアプリケーションをプロセッサ503が実行することでソースコード売買システム1の各機能要素が実現される。
また、本実施例ではさらに、新たにソースコードが登録される場合に、すでに登録されているソースコードの情報に基づいて機械学習による分析を行うことで、ソースコードの販売予想価格を算出し、販売価格を決定する。
類否判定部16は、ソースコード同士の類似度を文字列の差分検出アルゴリズム等に基づき算出する。
価格調整部32は、価格決定部15で決定された価格を外部情報に基づき定期的にもしくは任意のタイミングで更新する。
ソースコードデータ12は、販売者端末21から送信されたソースコードを登録、記憶する。
価格決定データ14は、価格決定部15が価格決定を行うための基礎となる情報を登録しており、例えば図2に示すような情報を記憶する。また、外部情報取得部31により取得された外部情報が、処理、整形されて記憶されている。
価格データ18は、販売者が希望する希望価格や、価格決定部15が出した予想価格、価格調整部32により調整された最終価格、類似度に基づく参照先ソースコードへの配分率等の価格に関する情報を記憶する。
外部情報取得部31は、外部サービスサーバ23とネットワークを介して接続しており、各種外部情報を取得する。外部情報取得部31は取得した情報を処理、整形、評価等することにより、価格決定部15及び価格調整部32が処理できる形の情報にして、価格決定データ14に記憶する。
価格調整部32は、価格決定データ14に記憶された外部情報に基づく情報に従って、価格決定データ14に基づいて価格決定部15が決定した価格を、定期的にもしくは任意のタイミングで調整する。
価格データ18は、ID701、プロダクトID702、希望価格703、予想価格704、最終価格705、アルゴリズムタイプ706、参照先707、売上配分率708、参照先配分率709、更新日時710を有する。
ID701、はソースコードに対する価格を決定する際にシーケンシャルに生成される情報である。
プロダクトIDは実際のソースコードを含む「商品」を特定する情報であり、図示しないプロダクト情報のプロダクトIDを参照する。プロダクト情報には、ソースコードと対応付けて商品に関する情報が記載されており、例えばユーザID、ユーザ名、ステータス、価格履歴、プロダクト詳細、デザイン詳細、使用方法、限定事項、プロダクトイメージ、プレビューURL、プロダクトビデオURL、ユーザガイド、初期価格(希望価格)等の情報が記憶されている。
予想価格704は、販売実績やソースコードの書誌情報(例えば作成者、プログラム言語、評価、カテゴリ等)に基づくソースコードの予測販売価格や、すでに登録されている他のソースコードの情報に基づいて機械学習による分析を行い算出された予想販売価格を記憶する。
最終価格705は、希望価格703や予想価格704や、外部情報による調整に基づき算出された最終的な価格である。
アルゴリズムタイプ706はどのアルゴリズムに基づいて最終的な価格が決定されたのかを示す。autoは、販売実績やソースコードの書誌情報(例えば作成者、プログラム言語、評価、カテゴリ等)に基づくソースコードの予測販売価格や、すでに登録されている他のソースコードの情報に基づいて機械学習による分析を行い算出されたことを示す。
参照先707は、ソースコードが他のソースコードをコピーして、もしくは他のコードから改変して作成されている場合に、その他のソースコードを参照する情報である。プロダクト情報のプロダクトIDを参照する。
参照先配分率709は、他のソースコードを参照している場合に、その参照先のソースコードの販売者に対しても売り上げの一部を分配するための配分率を規定する。例えばソースコードのうちの30%を他のソースコードから流用している場合には、売り上げの30%を他のソースコードの販売者に配分する。
更新日時710は、情報が更新された日時を記憶する。
類否判定部16は、ソースコードデータ12から取得したソースコードのプログラム言語を判別する(810)。書誌情報(書誌事項)14dの言語14d2に基づいて判別してもよいし、ソースコードの構文を解析することにより判別してもよい。
類否判定部16は、判別したプログラム言語と同一のプログラム言語により記述された他のソースコードをソースコードデータ12から取得する(820)。なお、あらかじめ書誌情報に登録されているソースコードのカテゴリに従い、新規のソースコードと同一又は関連するカテゴリの中のみを検索することで検索効率を上げてもよい。
類否判定部16は、それらの類似度を文字列の差分検出アルゴリズムにより算出し(830)、これを出力・表示する(840)。
差分検出アルゴリズムとしては、レーベンシュタイン距離を用いて文字列間の距離を判別する方法や、Myers差分アルゴリズム(Myers Diff algorithm)を用いる方法などがある。
商品登録部11は、新規ソースコードの登録を受け付ける(910)。
類否判定部16は、新規ソースコードが過去にソースコードデータ12に記憶されているソースコードと類似しているかどうか類似度を算出する(920)。
類否判定部16は、類似している他のソースコードが存在する場合には、新規ソースコードにしめる他のソースコードに類似している部分の割合(類似部分の割合)を参照先配分率とする。例えば、新規ソースコードのうちの30%が他のソースコードに類似している場合には、30%を参照先配分率とする(940)。
参照が記載されている場合には、他のソースコードに依拠した旨を正当に開示したインセンティブとして、新規ソースコードに対する配分率を上げる。すなわち参照先配分率を例えば2%下げる(960)。
類否判定部16は、参照先配分率を価格データ18の参照先配分率709に記憶する(980)。
なお、参照記載へのインセンティブとして、配分率を調整することとしたが、このステップ950、960は設けない構成としてもよい。
また、インセンティブのつけ方として、参照先の配分率を下げ、新規ソースコードの配分率を上げる構成としたが、その代わりに、もしくはそれと並行して、売り上げに対する売上配分率708を上げることによりインセンティブをつける、という構成にしてもよい。
商品登録部11は、新規ソースコードの登録を受け付ける(1010)。
類否判定部16は、新規ソースコードを機能ブロックごとに分解する(1020)。ソースコードは通常いくつかの機能ごとに仕様が分かれている。例えばECサイトのソースコードであれば、顧客管理機能、決済機能、商品管理機能、販売インタフェース生成機能、受発注管理機能などである。ゲームのソースコードであれば、ログイン管理機能、ユーザ入力処理機能、画面生成機能、出力管理機能、3Dモデル処理機能などである。
それぞれのソースコードのカテゴリごとに、ソースコードの内容は異なっていても、機能としては同様のものを持っていることが多い。例えばECサイトであれば、デザインや商品の管理方法などは異なっていても、どのECサイトのソースコードであっても大抵は上記の各種機能を持ち合わせている。
類否判定部16は、書誌情報に基づき同一または関連するカテゴリごとにあらかじめ登録されている一般的な機能ブロックの構造の情報に基づいて、新規ソースコードを解析し機能ブロックごとにソースコードを分解する。ソースコードの中に記載されているコメント欄に記載された説明を検索・解析したり、よく使われる関数やモジュールを検索・解析したりすることで、ソースコードの機能の区切り部分を特定し、機能ブロックを分解することができる。
なお、登録のたびに人手によって機能の区切り部分を特定して機能ブロックを特定する構成としてもよい。
類否判定部16は、分解された機能ブロックごとに過去にソースコードデータ12に記憶されているソースコードと類似しているか類似度を算出する(1030)。
類否判定部16は、類似している他のソースコードが存在する場合には、機能ブロックごとに新規ソースコードにしめる他のソースコードに類似している部分の割合(類似部分の割合)を求め、これに各機能ブロックの重み係数を乗算し、すべてを合計することで参照先配分率を決定する(1050)。
結果、このソースコードがトータルで他のソースコードに依拠する度合いは、これらの合計の48%となり、この数値を参照先配分率とする。
参照が記載されている場合には、他のソースコードに依拠した旨を正当に開示したインセンティブとして、新規ソースコードに対する配分率を上げる。すなわち参照先配分率を例えば2%下げる(1070)。
類否判定部16は、参照先配分率を価格データ18の参照先配分率709に記憶する(1090)。
本実施例では、このようにしてソースコードの類似度を用いて、参照先のソースコードにも売り上げを分配することができ、ソースコード販売者のインセンティブを高めることができる。
価格決定部15は、販売者端末21が入力した希望価格703を価格データ18から取得する(1110)。
価格決定部15は、価格決定データ14に記載された情報に基づいて、ソースコードの予想価格(予想販売価格)を算出する(1120)。
希望価格から予想価格が50%以上ずれている場合には(1130)予想価格と希望価格の中間の値を最終価格とする(1140)。50%以上のずれが無い場合には、希望価格を最終価格とする(1150)。
なお、逆に希望価格よりも予想価格が低い場合には、同様に希望価格よりも低い額の最終価格を設定してもよいし、販売者端末21の意向を尊重し、最終価格を希望価格として値段は下げない、という構成としてもよい。
価格を下げる場合には、例えば希望価格が1000円で予想価格が600円であった場合には、最終価格は中間の800円となる。なお、予想価格と希望価格の中間の値ではなく、希望価格から予想価格と希望価格の差分の25%の位置にしたり(先の例であれば最終価格900円)、予想価格を最終価格としてもよい(最終価格600円)。
この予想価格算出処理1120は比較的短期間(例えば一日1回)繰り返し算出され、最終価格が調整される。2回目以降の算出では、希望価格の代わりに、現在の最終価格が使用され、最終価格が順次更新されることとなる。
例えば、外部情報取得部31が、ソースコード提供サイトから、商品(プロダクト)の一覧を取得する。自システムの特定のソースコードと同じプログラミング言語の商品のうち、ソースコード提供サイトに新たに投入された(更新された)商品に関連するものの割合が所定の値(例えば5%)を超えている場合に、予想価格算出処理を実行する。
例えばこの場合に、自システムのそのプログラミング言語に関連するすべての商品の予想価格算出を行う構成としてもよい。
その結果修正された最終価格を、価格データ18の最終価格705に記憶する(1180)。
商品登録部11は、新規ソースコードの登録を受け付ける(1210)。
価格決定部15は、ソースコードを処理できる形に整形し(1220)、マルチクラス分類器によるソースコードの分類を実行し、ソースコードを分類する(1230)。
価格決定部15は、分類されたソースコードに対して機械学習による回帰分析を行うことで、ソースコードに対する予想価格を算出する(1240)。例えば、回帰分析の方法として勾配ブースティング回帰分析が用いられるが、これに限定されるものではなく他の価格算出アルゴリズムを用いてもよい。
価格決定部15は、算出された予想価格に価格ポリシーを適用し(1250)、ポリシーに従った適切な価格になっているかどうかを確認する。
価格決定部15は、算出された予想価格を価格データ18に記憶する(1260)。
価格決定部15は、トレーニングデータを取得(1310)。
価格決定部15は、ソースコードのプログラム言語とカテゴリ(機能)などの書誌情報に基づいてクラス分けを行い、重複を排除することで、ソースコードの分類を行う(1320)。
価格決定部15は、さらに分類されたソースコードに対応するプロダクト情報のプロダクト詳細に記載されたソースコードの詳細に対して、分類を実施し、関連用語を取得する(1330)。分類の方法としては例えば、Bag-of-words分類が利用できる。
価格決定部15は、関連用語を用いてテキスト分類を実施する(1340)。分類としては例えば単純ベイズ分類が利用できる。例えば1310で取得したトレーニングデータと1330で取得した関連用語とに基づいて、データをトレーニングし、分類モデルを適用することで単純ベイズ分類を実行する。
価格決定部15は、ベイズスコア等のテキスト分類スコアを出力する(1350)。
価格決定部15は、得られたテキスト分類スコアに基づいて、ソースコードの分類を実施する。
図11で説明したように、価格決定部15はソースコードの内容、売買情報又は書誌情報の少なくとも一つに基づいて、毎日1度など比較的短い頻度でソースコードの販売価格を算出する。一方価格調整部32は、毎月1度など価格調整部32の価格決定期間よりは長い頻度で価格決定部15の決めた販売価格を外部サービスサーバ23から取得された情報に基づいて調整する。
このようにして順次変動される(ダイナミックプライシング:Dynamic Pricing)変動価格(ダイナミックプライス:DynamicPrice)は売買仲介部13により表示される。
外部情報取得部31が、ソースコード提供サイトの製品情報から、ソースコードを特定する情報及びこのソースコードの販売価格(ソースコード提供サイト価格)を取得する。例えば、ソースコード提供サイトの新製品発表のページにアクセスし、ここに順次掲載されるソースコードの詳細情報や販売価格情報をスクレイピングすることによって、それぞれのソースコードを特定する情報(例えばソースコード名や作成者、販売会社、型番、バージョン名、プログラム言語等の情報の一つ、またはいくつかの組み合わせ等ソースコードを特定できればよい)を取得し、整形した後に、価格決定データ14の中に順次格納していく。
価格調整部32は、ソースコード提供サイトに掲載されていたソースコードを特定する情報に対応する自システムが持つソースコードの情報を取得し、この販売価格をソースコード提供サイト価格に基づいて調整する。
例えば、ソースコード提供サイトに掲載されているAというソースコードのソースコード提供サイト価格が2000円で、ソースコード売買システム1の現在のAに対応するソースコードの販売価格が1000円であった場合、最終販売価格を中間の1500円に調整する。
なお、逆に現在の価格よりもソースコード提供サイト価格が低い場合には、同様に販売価格よりも低い額の最終販売価格に下げてもよいし、販売者の意向を尊重し、最終販売価格を据え置き、現在の販売価格のままとする構成としてもよい。
価格を下げる場合には、例えばソースコード提供サイト価格が600円で現在の販売価格が1000円であった場合には、最終販売価格は中間の800円となる。なお、ソースコード提供サイト価格と現在の販売価格の中間の値ではなく、ソースコード提供サイト価格からソースコード提供サイト価格と現在の販売価格の差分の25%の位置にしたり(先の例であれば最終販売価格900円)、ソースコード提供サイト価格を最終販売価格としてもよい(最終販売価格600円)。
例えば、外部情報取得部31は、ソースコード提供サイトから、商品(プロダクト)の一覧を取得する。自システムのソースコードと同じプログラミング言語の商品のうち、ソースコード提供サイトに新たに投入された商品に関連するものの割合が所定の値(例えば5%)を超えている場合に、価格調整を実施する。
この場合に、この同じプログラミング言語の全商品の情報を取得し、分類及び価格算出の処理に利用してもよい。
価格決定データ14は、ソースコードデータ12に記憶されているソースコードに対応する複数の検索用語を記憶している。外部情報取得部31は、検索サイトから、記憶されているソースコードに対応するソースコードに関する情報を検索用語に基づいて検索する。例えば、ソースコードのカテゴリやタグや詳細情報などに記載されるような情報が検索用語として記憶されている。
検索により、対応するソースコードを特定する情報及びこのソースコードの価格情報(検索サイト価格)を取得する。
前記価格調整部32は、このソースコードを特定する情報に対応する自システムのソースコードの販売価格を、検索サイト価格に基づいて調整する。
例えば、検索により見つかったBというソースコードの検索サイト価格が2000円で、ソースコード売買システム1の現在のBに対応するソースコードの販売価格が1000円であった場合、最終販売価格を中間の1500円に調整する。
なお、逆に現在の価格よりも検索サイト価格が低い場合には、同様に販売価格よりも低い額の最終販売価格に下げてもよいし、販売者の意向を尊重し、最終販売価格を据え置き、現在の販売価格のままとする構成としてもよい。
価格を下げる場合には、例えば検索サイト価格が600円で現在の販売価格が1000円であった場合には、最終販売価格は中間の800円となる。なお、検索サイト価格と現在の販売価格の中間の値ではなく、検索サイト価格から検索サイト価格と現在の販売価格の差分の25%の位置にしたり(先の例であれば最終販売価格900円)、検索サイト価格を最終販売価格としてもよい(最終販売価格600円)。
価格調整部32は、ニュースサイトの情報に基づく価格の調整を実施する(1430)。詳細は図15で説明する。
また、これらは1つの外部情報の取得に応じてすぐに価格を調整するのではなく、複数の外部情報を例えば1月分蓄積し、これらの情報を解析したうえで統合化や平均化等したうえで1月に1度実行すればよい。
価格決定データ14は、ソースコードデータ12に記憶されているソースコードに対応する複数の検索用語を記憶している。
外部情報取得部31は、ニュースを配信するニュースサイトにアクセスし(1510)、ニュースサイトから、記憶されているソースコードに対応するソースコードを特定する情報(例えばソースコード名や作成者、販売会社、型番、バージョン名、プログラム言語等の情報の一つ、またはいくつかの組み合わせ等ソースコードを特定できればよい)及び関連する記事情報を取得する(1520、1530)。
外部情報取得部31は、取得した記事情報の内容が肯定的か中立か否定的かを評価する(1540)。なお、この処理は価格調整部32が実行してもよい。
例えば、記事情報の内容の評価が肯定的である場合に販売価格を上げる。記事情報の内容が否定的である場合には販売価格を下げてもよいし、販売者の意向を尊重し現状価格を維持してもよい。
例えば、外部情報取得部31は、記事情報に含まれる肯定的な記事用語の数が所定の数や割合(例えば1000語当たり10個以上や1%)以上ある場合や、又は記事情報に含まれる肯定的な記事用語の数が否定的な内容を示す記事用語の数よりも多い場合に、記事情報の内容が肯定的であると評価する。
価格調整部32は、調査対象として価格決定データ14に記憶されているすべてのニュースサイトに対して検索調査が終了した場合に処理を終了する(1560)。
価格決定部15はソースコードの内容、売買情報又は書誌情報の少なくとも一つに基づいて、毎日1度など比較的短い頻度でソースコードの販売価格を算出する。一方価格調整部32は、毎月1度など価格調整部32の価格決定期間よりは長い頻度で価格決定部15の決めた販売価格を外部サービスサーバ23から取得された情報に基づいて調整する。
これは、外部サーバから取得する外部情報が常に発生するわけではなく断片的であり、ある程度蓄積してから価格調整を行った方が価格の変動が安定するという理由と、外部情報の解析処理は計算機資源を消費する重い処理であり、高頻度で実施すると負荷が高いという理由によるものである。
しかしながら、特定のイベントが発生する場合には外部情報による価格調整をもっと高頻度で実施したほうが適切にソースコードの価格を反映できる場合がある。
外部情報取得部31は、これらの外部情報からソースコードを特定する(1620)。
このような構成にすることで、通常は計算機の価格調整負荷を月一程度におさえつつ、特定のソースコードに関する世の中の関心が上がってきた場合には、より高い頻度で価格を調整し、より世の中のニーズに近い販売価格を提示することができる。
例えば、外部情報取得部31は、外部サービスサーバ23(例えばソースコード提供サイトや、検索サイト、ニュースサイト等)から、商品(プロダクト)の一覧を取得する。
外部情報取得部31は、特定したソースコードと同じプログラミング言語の商品の全数における特定したソースコードに関する外部情報の数が、所定の値(例えば5%)を超えている場合に、価格調整の実行頻度を高くする、または、価格調整を実行する。
例えば、外部情報取得部31は、外部サービスサーバ23(例えばソースコード提供サイトや、検索サイト、ニュースサイト等)から、商品(プロダクト)の一覧を取得する。
外部情報取得部31は、特定したソースコードと同じまたは関連する外部サービスサーバのソースコードの価格の更新頻度(変動)が所定の値(例えば週に1回)を超えている場合に、価格調整の実行頻度を高くする。
売買仲介部13は、購入者端末22に対してソースコードを販売するためのWeb画面1700を表示する。Web画面1700は、ソースコードのタイトル1710と、詳細情報1740と、プログラム言語や作成者、カテゴリやタブなどの書誌情報1720と、価格表示1730と、購入のためのカート追加ボタン1750とを有する。
図11の価格決定フローに基づき毎日1度かそれ以上の頻度で価格の見直しが行われ、価格表示1730の価格が更新される。また月の最初に外部情報による価格調整が実施され、外部情報の内容や量に応じて、価格表示1730の価格が更新される。
スマートフォン画面1800は、ソースコードのタイトル1810と、書誌情報1820と、価格表示1830を有する。タイトル等をタップすることで、ソースコードの詳細情報を表示する画面に遷移する。
スマートフォン画面においても毎日1度かそれ以上の頻度で価格の見直しが行われ、価格表示1830の価格が更新される。また月の最初に外部情報による価格調整が実施され、外部上の内容や量に応じて、価格表示1830の価格が更新される。
なお、ソースコードが他のソースコードを一部使用している場合には、参照先コード707や参照先配分率709(又は参照先コードの使用率)を図17や図18に表示してもよい。
Claims (27)
- ソフトウェアのソースコードを売買するためのソースコード売買システムであって、
ソースコードを記憶する記憶手段と、
前記ソースコードの内容、売買情報又は書誌情報の少なくとも一つに基づいて、前記ソースコードの第1の販売価格を算出する価格決定手段と、
前記ソースコード売買システムの外部にある外部サービスサーバから情報を取得する外部情報取得手段と、
前記第1の販売価格を、前記外部サービスサーバから取得した情報に基づいて調整し、第2の販売価格を算出する価格調整手段と、
算出された前記第2の販売価格を表示する売買仲介手段と、
を有する
ことを特徴とするソースコード売買システム。 - 請求項1に記載のソースコード売買システムであって、
前記外部情報取得手段は、前記外部サービスサーバの一つであるソースコード提供サイトの製品情報から、第2のソースコードを特定する情報と前記第2のソースコードの販売価格を示すソースコード提供サイト価格に関する情報とを取得し、
前記価格調整手段は、前記第2のソースコードを特定する情報に対応する前記記憶手段に記憶された前記ソースコードの前記第1の販売価格を、前記ソースコード提供サイト価格に関する情報に基づいて調整することにより、前記第2の販売価格を算出する
ことを特徴とするソースコード売買システム。 - 請求項2に記載のソースコード売買システムであって、
前記価格調整手段は、前記ソースコード提供サイト価格の方が前記第1の販売価格よりも高い場合に、前記第1の販売価格よりも高い前記第2の販売価格を設定する
ことを特徴とするソースコード売買システム。 - 請求項2に記載のソースコード売買システムであって、
前記価格調整手段は、前記ソースコード提供サイト価格の方が前記第1の販売価格よりも高い場合に、前記第2の販売価格を、前記ソースコード提供サイト価格と同価格、又は前記ソースコード提供サイト価格と前記第1の販売価格との間の価格、のいずれかに設定する
ことを特徴とするソースコード売買システム。 - 請求項2〜4のいずれか1項に記載のソースコード売買システムであって、
前記記憶手段に記憶されている特定のプログラミング言語のソースコードの数に対する、外部情報取得手段がソースコード提供サイトから取得した前記特定のプログラミング言語に関する更新されたソースコードの数が所定の割合を超えていた場合に、前記第1の販売価格の調整による前記第2の販売価格の算出を実行する
ことを特徴とするソースコード売買システム。 - 請求項1〜5のいずれか1項に記載のソースコード売買システムであって、
前記記憶手段は、前記ソースコードに対応する複数の検索用語を記憶しており、
前記外部情報取得手段は、前記外部サービスサーバの一つである検索サイトから、前記複数の検索用語に基づいて検索された第3のソースコードを特定する情報と前記第3のソースコードに対応する価格を示す検索サイト価格に関する情報とを取得し、
前記価格調整手段は、前記第3のソースコードを特定する情報に対応する前記記憶手段に記憶された前記ソースコードの前記第1の販売価格を、前記検索サイト価格に関する情報に基づいて調整することにより、前記第2の販売価格を算出する
ことを特徴とするソースコード売買システム。 - 請求項6に記載のソースコード売買システムであって、
前記価格調整手段は、前記検索サイト価格の方が前記第1の販売価格よりも高い場合に、前記第1の販売価格よりも高い前記第2の販売価格を設定する
ことを特徴とするソースコード売買システム。 - 請求項6に記載のソースコード売買システムであって、
前記価格調整手段は、前記検索サイト価格の方が前記第1の販売価格よりも高い場合に、前記第2の販売価格を、前記検索サイト価格と同価格、又は前記検索サイト価格と前記第1の販売価格との間の価格、のいずれかに設定する
ことを特徴とするソースコード売買システム。 - 請求項1〜8のいずれか1項に記載のソースコード売買システムであって、
前記記憶手段は、前記ソースコードに対応する第2の複数の検索用語を記憶しており、
前記外部情報取得手段は、前記外部サービスサーバの一つでありニュースを配信するニュースサイトから、前記第2の複数の検索用語に基づいて検索された第4のソースコードを特定する情報と記事情報とを取得し、前記記事情報の内容が肯定的かどうかを評価し、
前記価格調整手段は、前記第4のソースコードを特定する情報に対応する前記記憶手段に記憶された前記ソースコードの前記第1の販売価格を、前記記事情報の内容の評価に基づいて調整することにより、前記第2の販売価格を算出する
ことを特徴とするソースコード売買システム。 - 請求項9に記載のソースコード売買システムであって、
前記記事情報の内容の評価が肯定的である場合に、前記第1の販売価格よりも高い前記第2の販売価格を設定する
ことを特徴とするソースコード売買システム。 - 請求項9又は10に記載のソースコード売買システムであって、
前記記憶手段は、肯定的な内容を示す複数の記事用語を記憶しており、
前記外部情報取得手段は、前記記事情報に含まれる前記記事用語に基づいて前記記事情報の内容が肯定的であることを評価する
ことを特徴とするソースコード売買システム。 - 請求項11に記載のソースコード売買システムであって、
前記外部情報取得手段は、前記記事情報に含まれる前記記事用語の数が、前記記事情報に含まれる否定的な内容を示す複数の記事用語の数よりも多い場合に、前記記事情報の内容が肯定的であると評価する
ことを特徴とするソースコード売買システム。 - 請求項9〜12のいずれか1項に記載のソースコード売買システムであって、
前記外部情報取得手段は、前記第4のソースコードを特定する情報に関する前記記事情報の配信頻度が所定の値を超えている場合に、前記価格調整手段による前記第2の販売価格の算出の頻度を高める
ことを特徴とするソースコード売買システム。 - 請求項1〜13のいずれか1項に記載のソースコード売買システムであって、
ソースコードの類似度を判定する類否判定手段を有し、
前記類否判定手段は、前記記憶手段に記憶される新たなソースコードに類似する類似ソースコードが前記記憶手段に記憶されている場合に、前記新たなソースコードに対する前記類似ソースコードの使用割合を算出し、
前記価格決定手段は、前記使用割合に基づいて前記新たなソースコードの売上代金の分配割合を決定する
ことを特徴とするソースコード売買システム。 - 請求項14に記載のソースコード売買システムであって、
前記類否判定手段は、前記新たなソースコードを複数の機能ブロックに分割し、それぞれの機能ブロックごとに前記記憶手段に記憶されているソースコードとの類似度を判定する
ことを特徴とするソースコード売買システム。 - 請求項15に記載のソースコード売買システムであって、
前記類否判定手段は、前記新たなソースコードの前記機能ブロックごとの重要度を算出し、
前記価格決定手段は、前記機能ブロックごとの類似度と前記機能ブロックごとの重要度とに基づいて、前記新たなソースコードの売上代金の分配割合を決定する
ことを特徴とするソースコード売買システム。 - 請求項14〜16のいずれか1項に記載のソースコード売買システムであって、
前記価格決定手段は、前記新たなソースコードに類似する前記類似ソースコードが前記記憶手段に記憶されている場合であって、前記類似ソースコードへの参照情報が前記新たなソースコードに記載されている場合には、前記新たなソースコードに対する売上代金の分配割合を増加させる
ことを特徴とするソースコード売買システム。 - 請求項1〜17のいずれか1項に記載のソースコード売買システムであって、
前記価格決定手段は、前記ソースコードの前記内容に対し、マルチクラス分類器を用いてカテゴリの分類を行い、当該分類されたソースコードに対して回帰分析を行うことで、前記第1の販売価格を算出する
ことを特徴とするソースコード売買システム。 - 請求項18に記載のソースコード売買システムであって、
前記マルチクラス分類器は、単純ベイズ分類器又はBag−of−words分類器の少なくとも一つである
ことを特徴とするソースコード売買システム。 - 請求項18又は19に記載のソースコード売買システムであって、
前記回帰分析は、勾配ブースティング回帰分析である
ことを特徴とするソースコード売買システム。 - ソースコード売買システムにおけるソフトウェアのソースコードの販売方法であって
販売するソースコードを記憶し、
前記ソースコードの内容、売買情報又は書誌情報の少なくとも一つに基づいて、前記ソースコードの第1の販売価格を算出し、
前記第1の販売価格を、前記ソースコード売買システムの外部にある前記外部サービスサーバから取得した情報に基づいて調整し、第2の販売価格を算出し、
算出された前記第2の販売価格を表示する
ことを特徴とするソースコードの販売方法。 - 請求項21に記載のソースコードの販売方法であって、
前記外部サービスサーバの一つであるソースコード提供サイトの製品情報から、第2のソースコードを特定する情報と前記第2のソースコードの販売価格を示すソースコード提供サイト価格に関する情報とを取得し、
前記第2のソースコードを特定する情報に対応する記憶手段に記憶された前記ソースコードの前記第1の販売価格を、前記ソースコード提供サイト価格に関する情報に基づいて調整することにより、前記第2の販売価格を算出する
ことを特徴とするソースコードの販売方法。 - 請求項21又は22に記載のソースコードの販売方法であって、
記憶手段は、前記ソースコードに対応する複数の検索用語を記憶しており、
前記外部サービスサーバの一つである検索サイトから、前記検索用語に基づいて検索された第3のソースコードを特定する情報と前記第3のソースコードに対応する価格を示す検索サイト価格に関する情報とを取得し、
前記第3のソースコードを特定する情報に対応する前記記憶手段に記憶された前記ソースコードの前記第1の販売価格を、検索サイト価格に関する情報に基づいて調整することにより、前記第2の販売価格を算出する
ことを特徴とするソースコードの販売方法。 - 請求項21〜23のいずれか1項に記載のソースコード販売方法であって、
記憶手段は、前記ソースコードに対応する第2の複数の検索用語を記憶しており、
前記外部サービスサーバの一つでありニュースを配信するニュースサイトから、前記第2の検索用語に基づいて検索された第4のソースコードを特定する情報と記事情報とを取得し、前記記事情報の内容が肯定的かどうかを評価し、
前記第4のソースコードを特定する情報に対応する前記記憶手段に記憶された前記ソースコードの前記第1の販売価格を、前記記事情報の内容の評価に基づいて調整することにより、前記第2の販売価格を算出する
ことを特徴とするソースコードの販売方法。 - 請求項21〜24のいずれか1項に記載のソースコード販売方法であって、
前記記憶手段に記憶される新たなソースコードに類似する類似ソースコードが前記記憶手段に記憶されている場合に、前記新たなソースコードに対する前記類似ソースコードの使用割合を算出し、
前記使用割合に基づいて前記新たなソースコードの売上代金の分配割合を決定する
ことを特徴とするソースコードの販売方法。 - 請求項25に記載のソースコード販売方法であって、
前記新たなソースコードに類似する前記類似ソースコードが前記記憶手段に記憶されている場合であって、前記類似ソースコードへの参照情報が前記新たなソースコードに記載されている場合には、前記新たなソースコードに対する売上代金の分配割合を増加させる
ことを特徴とするソースコードの販売方法。 - 請求項21〜26のいずれか1項に記載のソースコード販売方法であって、
前記ソースコードの前記内容に対し、マルチクラス分類器を用いてカテゴリの分類を行い、当該分類されたソースコードに対して回帰分析を行うことで、前記第1の販売価格を算出する
ことを特徴とするソースコードの販売方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021115840A JP7345203B2 (ja) | 2020-07-22 | 2021-07-13 | Aiを使用したソースコード売買システム |
JP2023139150A JP2023159414A (ja) | 2020-07-22 | 2023-08-29 | Aiを使用したソースコード売買システム |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020124859A JP6971501B2 (ja) | 2018-12-10 | 2020-07-22 | Aiを使用したソースコード売買システム |
JP2021115840A JP7345203B2 (ja) | 2020-07-22 | 2021-07-13 | Aiを使用したソースコード売買システム |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020124859A Division JP6971501B2 (ja) | 2018-12-10 | 2020-07-22 | Aiを使用したソースコード売買システム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023139150A Division JP2023159414A (ja) | 2020-07-22 | 2023-08-29 | Aiを使用したソースコード売買システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021168184A true JP2021168184A (ja) | 2021-10-21 |
JP7345203B2 JP7345203B2 (ja) | 2023-09-15 |
Family
ID=72747094
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020124859A Active JP6971501B2 (ja) | 2018-12-10 | 2020-07-22 | Aiを使用したソースコード売買システム |
JP2021115840A Active JP7345203B2 (ja) | 2020-07-22 | 2021-07-13 | Aiを使用したソースコード売買システム |
JP2023139150A Pending JP2023159414A (ja) | 2020-07-22 | 2023-08-29 | Aiを使用したソースコード売買システム |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020124859A Active JP6971501B2 (ja) | 2018-12-10 | 2020-07-22 | Aiを使用したソースコード売買システム |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023139150A Pending JP2023159414A (ja) | 2020-07-22 | 2023-08-29 | Aiを使用したソースコード売買システム |
Country Status (1)
Country | Link |
---|---|
JP (3) | JP6971501B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102479096B1 (ko) * | 2022-09-05 | 2022-12-19 | 주식회사 로보그램 | 블록코드 거래 및 라이브러리 등록 방법 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002189866A (ja) * | 2000-12-20 | 2002-07-05 | Ricoh Co Ltd | ソフトウェア部品売買システム、ソフトウェア部品売買方法およびソフトウェア部品売買プログラムが記憶された記憶媒体 |
JP2004206586A (ja) * | 2002-12-26 | 2004-07-22 | Toshiba Corp | ソフトウェア部品流通支援方法、その方法を実現するためのソフトウェア部品流通支援システムおよびプログラム |
JPWO2003069466A1 (ja) * | 2002-02-18 | 2005-06-09 | 独立行政法人科学技術振興機構 | ソフトウェア部品の重要性評価システム |
JP2006106948A (ja) * | 2004-10-01 | 2006-04-20 | Hitachi Ltd | アプリケーションプログラム開発支援方法及びシステム |
US20100235265A1 (en) * | 2006-11-10 | 2010-09-16 | Media Patents, S.L. | Process for the on-line sale of a software product |
JP2011043970A (ja) * | 2009-08-20 | 2011-03-03 | Nifty Corp | 価格推定装置、方法及びプログラム |
US20110055042A1 (en) * | 2001-02-27 | 2011-03-03 | Accenture Llp | System for procuring business in an e-commerce environment |
JP2013149012A (ja) * | 2012-01-18 | 2013-08-01 | Toppan Printing Co Ltd | コンテンツ流通サーバ |
JP2013536535A (ja) * | 2010-08-26 | 2013-09-19 | マッシブリー パラレル テクノロジーズ, インコーポレイテッド | 並列処理開発環境および関連する方法 |
JP2017116977A (ja) * | 2015-12-21 | 2017-06-29 | ヤフー株式会社 | 予測装置、予測方法、及び予測プログラム |
JP2018081612A (ja) * | 2016-11-18 | 2018-05-24 | 株式会社Nttぷらら | 販売価格決定システム及び販売価格決定方法 |
-
2020
- 2020-07-22 JP JP2020124859A patent/JP6971501B2/ja active Active
-
2021
- 2021-07-13 JP JP2021115840A patent/JP7345203B2/ja active Active
-
2023
- 2023-08-29 JP JP2023139150A patent/JP2023159414A/ja active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002189866A (ja) * | 2000-12-20 | 2002-07-05 | Ricoh Co Ltd | ソフトウェア部品売買システム、ソフトウェア部品売買方法およびソフトウェア部品売買プログラムが記憶された記憶媒体 |
US20110055042A1 (en) * | 2001-02-27 | 2011-03-03 | Accenture Llp | System for procuring business in an e-commerce environment |
JPWO2003069466A1 (ja) * | 2002-02-18 | 2005-06-09 | 独立行政法人科学技術振興機構 | ソフトウェア部品の重要性評価システム |
JP2004206586A (ja) * | 2002-12-26 | 2004-07-22 | Toshiba Corp | ソフトウェア部品流通支援方法、その方法を実現するためのソフトウェア部品流通支援システムおよびプログラム |
JP2006106948A (ja) * | 2004-10-01 | 2006-04-20 | Hitachi Ltd | アプリケーションプログラム開発支援方法及びシステム |
US20100235265A1 (en) * | 2006-11-10 | 2010-09-16 | Media Patents, S.L. | Process for the on-line sale of a software product |
JP2011043970A (ja) * | 2009-08-20 | 2011-03-03 | Nifty Corp | 価格推定装置、方法及びプログラム |
JP2013536535A (ja) * | 2010-08-26 | 2013-09-19 | マッシブリー パラレル テクノロジーズ, インコーポレイテッド | 並列処理開発環境および関連する方法 |
JP2013149012A (ja) * | 2012-01-18 | 2013-08-01 | Toppan Printing Co Ltd | コンテンツ流通サーバ |
JP2017116977A (ja) * | 2015-12-21 | 2017-06-29 | ヤフー株式会社 | 予測装置、予測方法、及び予測プログラム |
JP2018081612A (ja) * | 2016-11-18 | 2018-05-24 | 株式会社Nttぷらら | 販売価格決定システム及び販売価格決定方法 |
Non-Patent Citations (1)
Title |
---|
仁ノ平 将人,三川 健太,後藤 正幸: "混合回帰モデルに基づく中古ファッションアイテムの販売価格予測モデルの提案", 第40回情報理論とその応用シンポジウム(SITA2017)予稿集 [USB], JPN6020007090, 1 December 2017 (2017-12-01), JP, pages 505 - 510, ISSN: 0005001034 * |
Also Published As
Publication number | Publication date |
---|---|
JP2020170570A (ja) | 2020-10-15 |
JP7345203B2 (ja) | 2023-09-15 |
JP2023159414A (ja) | 2023-10-31 |
JP6971501B2 (ja) | 2021-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5960887B1 (ja) | 算出装置、算出方法及び算出プログラム | |
US20090076899A1 (en) | Method for analyzing, searching for, and trading targeted advertisement spaces | |
US20120197750A1 (en) | Methods, systems and devices for recommending products and services | |
CA2923600A1 (en) | Review sentiment analysis | |
US20120290330A1 (en) | System and method for web-based industrial classification | |
US10614516B2 (en) | Method and system for auction information management | |
US10678877B2 (en) | System and methods for creating automatically updatable website metadata catalog for search engine optimization | |
US20120029965A1 (en) | Selecting a project portfolio | |
US11341558B2 (en) | Systems and methods for recommending a product based on an image of a scene | |
KR102453535B1 (ko) | 온라인 쇼핑 플랫폼을 제공하는 방법 및 장치 | |
CN110689402A (zh) | 推荐商家的方法、装置、电子设备及可读存储介质 | |
JP2023159414A (ja) | Aiを使用したソースコード売買システム | |
US20210090105A1 (en) | Technology opportunity mapping | |
JP6892053B2 (ja) | Aiを使用したソースコード売買システム | |
US20220036376A1 (en) | Methods and systems for suggesting alternative phrases for text-based web content | |
US20230139339A1 (en) | Method and system for adaptive product categorization | |
US11379929B2 (en) | Advice engine | |
JP6602820B2 (ja) | ソースコード売買システム | |
CN114168628A (zh) | 筛选目的数据的方法及系统 | |
JP6152215B2 (ja) | 算出装置、算出方法及び算出プログラム | |
JP6067169B2 (ja) | 算出装置、算出方法及び算出プログラム | |
JP6699084B2 (ja) | 情報処理装置、制御方法及びプログラム | |
CN113159972B (zh) | 组合确定方法、装置、电子设备及计算机可读存储介质 | |
US20230078260A1 (en) | Systems and methods for providing recommendations of computer applications based on similarity | |
US20230410187A1 (en) | Systems and methods for dynamically controlling display of search results |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211209 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211209 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230228 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230428 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20230428 |
|
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: 20230801 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230829 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7345203 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |