(57)【要約】【課題】成果物の説明文章の記述と該成果物において使用されている機能の情報との紐付けを行う。【解決手段】成果物の説明文章を解析して１以上の記述を抽出する第１の解析部と、前記成果物のソースコードを解析して使用されている機能の情報を抽出する第２の解析部と、複数の機能の説明文章を解析して１以上の記述を抽出する第３の解析部と、前記第２の解析部により抽出された機能の情報に対応する前記第３の解析部により抽出された１以上の記述を特定し、該記述を前記第１の解析部により抽出された１以上の記述と照合して、類似する場合に該類似する両者を紐付ける照合部と、前記照合部により紐付けられた前記第１の解析部により抽出された１以上の記述と前記第３の解析部により抽出された１以上の記述とに基づいて、前記成果物の説明文章に前記第３の解析部により抽出された１以上の記述に対応する外部情報への参照手段を付加する編集部と、を備える。【選択図】図２
2018097709.tif 000002
【特許請求の範囲】
【請求項１】
成果物の説明文章を解析して１以上の記述を抽出する第１の解析部と、
前記成果物のソースコードを解析して使用されている機能の情報を抽出する第２の解析部と、
複数の機能の説明文章を解析して１以上の記述を抽出する第３の解析部と、
前記第２の解析部により抽出された機能の情報に対応する前記第３の解析部により抽出された１以上の記述を特定し、該記述を前記第１の解析部により抽出された１以上の記述と照合して、類似する場合に該類似する両者を紐付ける照合部と、
前記照合部により紐付けられた前記第１の解析部により抽出された１以上の記述と前記第３の解析部により抽出された１以上の記述とに基づいて、前記成果物の説明文章に前記第３の解析部により抽出された１以上の記述に対応する外部情報への参照手段を付加する編集部と、
を備えたことを特徴とする情報処理装置。
【請求項２】
前記参照手段は、前記第１の解析部により抽出された１以上の記述に付加された、前記第３の解析部により抽出された１以上の記述に対応する外部情報へのリンクである、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記編集部は、前記成果物の説明文章に前記第２の解析部により抽出された機能の情報に対応する外部情報のタグを更に付加する、
ことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記第１の解析部は、前記成果物の説明文章を形態素解析し、機能に関連しない単語を除去し、類語を付加し、
前記第３の解析部は、前記複数の機能の説明文章を解析し、機能に関連しない単語を除去し、類語を付加する、
ことを特徴とする請求項１乃至３のいずれか一項に記載の情報処理装置。
【請求項５】
前記第２の解析部は、前記成果物のソースコードから、入出力データの情報を更に抽出し、
前記照合部は、前記第２の解析部により抽出された入出力データの情報に対応する前記第３の解析部により抽出された１以上の記述を特定し、該記述を前記第１の解析部により抽出された１以上の記述と照合して、類似する場合に該類似する両者を紐付ける、
ことを特徴とする請求項１乃至４のいずれか一項に記載の情報処理装置。
【請求項６】
前記機能の人気度または新しさにより前記機能を順位付ける処理部を更に備え、
前記編集部は、参照先の機能の順位により前記参照手段の表示態様を変更する、
ことを特徴とする請求項１乃至５のいずれか一項に記載の情報処理装置。
【請求項７】
前記機能の利用頻度により前記機能を順位付けて表示する処理部
を更に備えたことを特徴とする請求項１乃至５のいずれか一項に記載の情報処理装置。
【請求項８】
前記機能の利用数により前記成果物を順位付けて表示する処理部
を更に備えたことを特徴とする請求項１乃至５のいずれか一項に記載の情報処理装置。
【請求項９】
前記機能の人気度または新しさ、および、前記機能の利用頻度により前記成果物を順位付けて表示する処理部
を更に備えたことを特徴とする請求項１乃至５のいずれか一項に記載の情報処理装置。
【請求項１０】
成果物の説明文章を解析して１以上の記述を抽出する第１の解析処理と、
前記成果物のソースコードを解析して使用されている機能の情報を抽出する第２の解析処理と、
複数の機能の説明文章を解析して１以上の記述を抽出する第３の解析処理と、
前記第２の解析処理により抽出された機能の情報に対応する前記第３の解析処理により抽出された１以上の記述を特定し、該記述を前記第１の解析処理により抽出された１以上の記述と照合して、類似する場合に該類似する両者を紐付ける照合処理と、
前記照合処理により紐付けられた前記第１の解析処理により抽出された１以上の記述と前記第３の解析処理により抽出された１以上の記述とに基づいて、前記成果物の説明文章に前記第３の解析処理により抽出された１以上の記述に対応する外部情報への参照手段を付加する編集処理と、
をコンピュータが実行することを特徴とする情報処理方法。
【請求項１１】
成果物の説明文章を解析して１以上の記述を抽出する第１の解析処理と、
前記成果物のソースコードを解析して使用されている機能の情報を抽出する第２の解析処理と、
複数の機能の説明文章を解析して１以上の記述を抽出する第３の解析処理と、
前記第２の解析処理により抽出された機能の情報に対応する前記第３の解析処理により抽出された１以上の記述を特定し、該記述を前記第１の解析処理により抽出された１以上の記述と照合して、類似する場合に該類似する両者を紐付ける照合処理と、
前記照合処理により紐付けられた前記第１の解析処理により抽出された１以上の記述と前記第３の解析処理により抽出された１以上の記述とに基づいて、前記成果物の説明文章に前記第３の解析処理により抽出された１以上の記述に対応する外部情報への参照手段を付加する編集処理と、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【０００２】
近年、「共創」や「オープンイノベーション」と呼ばれる活動が流行ってきており、様々な背景の人（エンジニア、デザイナー、企画者等）が集まって、アイデアを出し合ったり、システムを開発したりしている（例えば、特許文献１等を参照）。
【０００３】
また、様々な企業が技術提供としてＡＰＩ（Application  Programming  Interface）やライブラリを公開しており、エンジニア等はそれらをマッシュアップ（加工、編集等）してシステム（アプリ）開発することが増えてきている。
【０００４】
また、ハッカソン等の共創の場で考案、開発されたシステム（プロジェクト）の内容を運営者がＷｅｂ上に公開することがあり、その情報共有により、システムのブラッシュアップを行わせたり、他者にアイデアを参考用に提供したりして、共創を促進させている。例えば、「Hacklog」（株式会社リクルートホールディングス、http://hacklog.jp/）等が知られている。
【０００５】
共創の場では、プロトタイピングで、素早くプロトタイプのシステムが開発され、そのシステムの価値検証が行われる傾向がある。そのため、様々なＡＰＩ、ライブラリ、ＯＳＳ（Open-source  software）が機能部品として利用され、効率良くプロトタイピングが行われる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１５−２１５８７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上述のハッカソン等の共創の場での成果物のシステム共有サイト（例：Hacklog）が参考にされて共創が行われるときに、その共有サイト上のアイデアやシステムの説明文章だけでは、利用されている機能部品が理解されない場合がある。すなわち、どの機能の実装に、どのようなＡＰＩ、メソッド、ライブラリ、ＯＳＳが利用されて開発されたシステムであるかが理解されにくい。また、何のためにＡＰＩ等が利用されているのか理解されにくいことがあり、それにより、各立場の人は下記のような問題に直面し、共創の進捗が遅れるという問題がある。
【０００８】
エンジニア：エンジニアは、共有サイトに載っている成果物と同じような機能があるシステムを作るとき、その成果物が利用しているＡＰＩ等を使って素早く開発したいが、どのＡＰＩやメソッドが使われているのかわからない。そのため、ＡＰＩ等の調査が必要になったり、一からそのＡＰＩに相当する機能の開発が必要になったりして、開発に時間が掛かる。
【０００９】
非エンジニア：非エンジニアは、共有サイトに載っている成果物と同じような機能があるシステムアイデアが思いついても、それがＡＰＩ等を利用し、素早く実現可能かわからない。
【００１０】
成果物評価者（運営者）：成果物評価者は、ＡＰＩ等の利用が評価に関係する場合、どのＡＰＩが利用されているかわからないため、成果物の評価を正しく行えない。
【００１１】
ＡＰＩ等の技術提供者：ＡＰＩ等の技術提供者は、自分らの提供した技術が利用されたのかわからず、技術の貢献度や有効性を調査できない。
【００１２】
図１は共有サイトにおける成果物の説明画面の例を示しており、成果物のタイトル「簡単チップアプリ」と、説明文章「本アプリは、・・・」と、さらに、使用技術（ＡＰＩ等）のタグ「使用ＡＰＩ：金融ＡＰＩ」とが表示されている。これらの説明画面は、基本的に、システムの企画者や開発者らにより記入されたものである。
【００１３】
図示の例では、説明画面に使用技術のタグが付されているが、タグの示す技術群（ＡＰＩの集まり）の中のどの機能がどの説明の機能の部分で何のために使われているのかが理解されにくい。すなわち、この例の場合、「金融ＡＰＩ」の中の例えば「送金機能」が利用されているのか、それとも「請求書作成機能」が利用されているのかが理解されにくい。実際には説明文章の「送金」部分に「金融ＡＰＩ」が使われているが、説明文章からだけでは容易に理解されにくい。また、使用されている全ての技術（ＡＰＩ等）を記入者が書き出すのは手間であることから、全ての技術が記入されないこともある。また、機能開発者以外が説明ページを記入する場合があり、その場合、記入者は各開発担当者に話を聞かないと技術を洗い出しすることができず、手間である。
【００１４】
そこで、一側面では、成果物の説明文章の記述と該成果物において使用されている機能の情報との紐付けを行うことを目的とする。
【課題を解決するための手段】
【００１５】
一つの形態では、成果物の説明文章を解析して１以上の記述を抽出する第１の解析部と、前記成果物のソースコードを解析して使用されている機能の情報を抽出する第２の解析部と、複数の機能の説明文章を解析して１以上の記述を抽出する第３の解析部と、前記第２の解析部により抽出された機能の情報に対応する前記第３の解析部により抽出された１以上の記述を特定し、該記述を前記第１の解析部により抽出された１以上の記述と照合して、類似する場合に該類似する両者を紐付ける照合部と、前記照合部により紐付けられた前記第１の解析部により抽出された１以上の記述と前記第３の解析部により抽出された１以上の記述とに基づいて、前記成果物の説明文章に前記第３の解析部により抽出された１以上の記述に対応する外部情報への参照手段を付加する編集部と、を備える。
【発明の効果】
【００１６】
成果物の説明文章の記述と該成果物において使用されている機能の情報との紐付けを行うことができる。
【図面の簡単な説明】
【００１７】
【図１】成果物の説明画面の例を示す図である。
【図２】一実施形態にかかるシステムの構成例を示す図である。
【図３】共有サイト成果物データベースのデータ構造例を示す図である。
【図４】共有サイトのハードウェア構成例を示す図である。
【図５】実施形態の処理例を示すフローチャートである。
【図６】共有サイト説明文章の形態素解析および助詞等の取り除きの例を示す図である。
【図７】処理過程のデータ例を示す図（その１）である。
【図８】ソースコードの解析によるＡＰＩ部分の抽出の例を示す図である。
【図９】処理過程のデータ例を示す図（その２）である。
【図１０】技術情報説明文章の解析および抽出の例を示す図である。
【図１１】処理過程のデータ例を示す図（その３）である。
【図１２】処理過程のデータ例を示す図（その４）である。
【図１３】処理過程のデータ例を示す図（その５）である。
【図１４】単語の照合の処理例を示す図である。
【図１５】処理過程のデータ例を示す図（その６）である。
【図１６】共有サイト説明文章の例を示す図である。
【図１７】ＡＰＩ等の入出力データの記述の例を示す図である。
【図１８】ＡＰＩ等の入出力データについてもマッチングに使用する場合のデータ例を示す図である。
【図１９】ＡＰＩ等の入出力データについてもマッチングに使用した場合の共有サイト説明文章の例を示す図である。
【図２０】ＡＰＩ等の人気度や新しさに応じて表示を変える処理例を示すフローチャートである。
【図２１】ＡＰＩ等の人気度や新しさに応じて表示を変える場合のデータ例を示す図である。
【図２２】ＡＰＩ等の人気度や新しさに応じて表示を変えた場合の共有サイト説明文章の例を示す図である。
【図２３】多くのＡＰＩ等を利用しているプロジェクト毎のランキング表示を行う場合のデータ例および表示例を示す図である。
【図２４】ＡＰＩ等の利用頻度に応じたＡＰＩ等のランキング表示の例を示す図である。
【図２５】多くのＡＰＩ等を利用しているプロジェクト毎のランキング表示の処理例を示すフローチャートである。
【図２６】多くのＡＰＩ等を利用しているプロジェクト毎のランキング表示を行う場合のデータ例および表示例を示す図である。
【図２７】新しいまたは人気のＡＰＩ等の利用頻度等に応じたプロジェクト毎のランキング表示の処理例を示すフローチャートである。
【図２８】新しいまたは人気のＡＰＩ等の利用頻度等に応じたプロジェクト毎のランキング表示を行う場合のデータ例を示す図である。
【発明を実施するための形態】
【００１８】
以下、本発明の好適な実施形態につき説明する。
【００１９】
＜構成＞
図２は一実施形態にかかるシステムの構成例を示す図である。図２において、共有サイト１は、ハッカソン等の共創の場で考案、開発されたシステム（プロジェクト）の成果物の内容をＷｅｂ上に公開する基本的な機能を有した情報処理装置であり、インターネット等のネットワークＮに接続されている。成果物の開発に用いられるプログラミング言語に制約はない。また、システム開発に利用されるＡＰＩ等についての技術情報説明文章の内容をＷｅｂ上に公開する基本的な機能を有した技術情報提供サイト２もネットワークＮに接続されている。技術情報提供サイト２は共有サイト１の運営者の管理下にあるものでもよいし、一般に開放されたものでもよい。
【００２０】
なお、システムの内容をＷｅｂ上に公開する機能を有した共有サイト１内に解析・編集の機能を設けた場合について説明するが、共有サイト１とは別の情報処理装置に解析・編集の機能を設けるようにしてもよい。
【００２１】
図２において、共有サイト１は、考案、開発されたシステムの内容をＷｅｂ上に公開する基本的な機能に対応して、共有サイト成果物データベース１０１と共有部１０２とを備えている。共有サイト１は、情報の解析・編集の機能に対応して、共有サイト説明文章解析部１０３とソース解析部１０４と技術情報説明文章解析部１０５とシソーラスデータベース１０６と技術情報データベース１０７と照合部１０８と共有サイト文章編集部１０９とを備えている。また、共有サイト１は、付加機能に対応して、ランキング処理部１１０と集計データベース１１１とを備えている。
【００２２】
共有サイト成果物データベース１０１は、成果物のシステムについての説明文章とソースコードとを記憶するものであり、本実施形態では、更に解析の結果等を成果物のシステムに対応付けて記憶するようにしている。図３は共有サイト成果物データベース１０１のデータ構造例を示す図であり、解析が行われる前の初期状態を示している。図３において、共有サイト成果物データベース１０１は、「ＩＤ」「タイトル」「説明文章」「ソースコード」等の項目を有している。「ＩＤ」は、成果物を識別する情報である。「タイトル」は、成果物の名称を示す情報である。「説明文章」は、成果物の内容についての説明文を示す情報である。「ソースコード」は、成果物のソースコードを示す情報である。なお、共有サイト成果物データベース１０１内の各情報は、図示の情報をそのままの形で記憶される場合だけでなく、情報への参照のみが記憶され、情報そのものは別のデータベース等に記憶されるようにしてもよい。
【００２３】
図２に戻り、共有部１０２は、共有サイト成果物データベース１０１に記憶された成果物の情報を外部に公開する機能を有しており、例えば、Ｗｅｂサーバ機能により実現される。共有部１０２は、外部からのアクセスに対し、例えば、図１に示した成果物の説明画面を提供する。
【００２４】
図２に戻り、共有サイト説明文章解析部１０３は、共有サイト成果物データベース１０１から成果物の説明文章を取得し、成果物の説明文章を解析して機能に関する１以上の記述を抽出し、抽出した記述を共有サイト成果物データベース１０１に登録する機能を有している。なお、共有サイト説明文章解析部１０３は、例えば、成果物の説明文章を形態素解析し、機能に関連しない単語を除去し、シソーラスデータベース１０６を参照して類語を付加することで、成果物の説明文章から記述の抽出を行う。形態素解析は、文章を言語で意味を持つ最小単位である形態素に分割する処理である。機能に関連しない単語としては、助詞・助動詞、句読点、ストップワード（高頻出単語）、tf-idf値が低い単語等である。なお、tf-idf値は、tf（Term  Frequency、単語の出現頻度）とidf（Inverse  Document  Frequency、逆文書頻度）の二つの指標にもとづいて計算される、文章中の単語の重みを示す指標であり、tf-idf値が低い単語はどの文章にも多く出てくる単語である。また、類語を付加するのは、表現の揺らぎによる後述する照合におけるミスマッチを防ぐためであるが、必ずしも類語と紐付ける必要はなく、オプション的な処理である。
【００２５】
ソース解析部１０４は、共有サイト成果物データベース１０１から成果物のソースコードを取得し、ソースコードを解析して使用されている機能の情報を抽出し、抽出結果を共有サイト成果物データベース１０１に登録する機能を有している。
【００２６】
技術情報説明文章解析部１０５は、ネットワークＮを介して技術情報提供サイト２から複数の機能に対応する技術情報説明文章を取得し、その説明文章を解析して機能に関する１以上の記述を抽出し、抽出した記述を技術情報データベース１０７に登録する機能を有している。なお、技術情報説明文章解析部１０５は、例えば、技術情報説明文章を形態素解析し、機能に関連しない単語を除去し、シソーラスデータベース１０６を参照して類語を付加することで、技術情報説明文章から記述の抽出を行う。技術情報データベース１０７のデータ例については後述する。
【００２７】
技術情報説明文章としては、ＡＰＩの公式サイト等に掲載された、WSDL（Web  Services  Description  Language）やSwagger（言語に依存しないREST  APIのインターフェース仕様）等により標準化されたＡＰＩドキュメントを用いることができる。特に、それらのＡＰＩドキュメントのdescription等に記述された情報が用いられる。また、事前に、ＡＰＩ等の技術提供者がＡＰＩやメソッド等の説明を決まったフォーマットでデータベースに登録しておき、それを利用することもできる。
【００２８】
照合部１０８は、ソース解析部１０４により抽出された機能の情報に対応する技術情報説明文章解析部１０５により抽出された１以上の記述を特定し、該記述を共有サイト説明文章解析部１０３により抽出された１以上の記述と照合する機能を有している。照合部１０８は、照合の結果、類似する場合に該類似する両者を紐付け、紐付けの結果を共有サイト成果物データベース１０１に登録する。
【００２９】
共有サイト文章編集部１０９は、照合部１０８により紐付けられた記述に基づいて、成果物の説明文章に技術情報説明文章解析部１０５により抽出された１以上の記述に対応する外部情報への参照手段である例えばリンク等を付加する機能を有している。参照手段は、例えば、共有サイト成果物データベース１０１の説明文章に直接に付加されるものでもよいし、別途、説明文章に対応して参照手段の付加される説明文章中の記述の位置や参照手段の示す参照先の情報が管理されるものでもよい。
【００３０】
ランキング処理部１１０は、成果物において利用される機能の人気度や新しさや利用頻度により機能をランキング（順位付け）したり、成果物における機能の利用数や、機能の人気度や新しさや利用頻度により成果物をランキングしたりする機能を有している。集計データベース１１１は、ランキング処理部１１０による処理に際して途中経過を記憶するために用いられる記憶領域である。
【００３１】
図４は共有サイト１のハードウェア構成例を示す図であり、一般的な情報処理装置（コンピュータ）の構成を有している。図４において、共有サイト１は、バス1007を介して相互に接続されたＣＰＵ（Central  Processing  Unit）1001、ＲＯＭ（Read  Only  Memory）1002、ＲＡＭ（Random  Access  Memory）1003、ＨＤＤ（Hard  Disk  Drive）／ＳＳＤ（Solid  State  Drive）1004を備えている。また、共有サイト１は、接続Ｉ／Ｆ（Interface）1005、通信Ｉ／Ｆ1006を備えている。
【００３２】
ＣＰＵ1001は、ＲＡＭ1003をワークエリアとしてＲＯＭ1002またはＨＤＤ／ＳＳＤ1004等に格納されたプログラムを実行することで、共有サイト１の動作を統括的に制御する。接続Ｉ／Ｆ1005は、共有サイト１に接続される機器とのインタフェースである。通信Ｉ／Ｆ1006は、ネットワークを介して他の情報処理装置と通信を行うためのインタフェースである。
【００３３】
図２で説明した共有サイト１の機能は、ＣＰＵ1001において所定のプログラムが実行されることで実現される。プログラムは、記録媒体を経由して取得されるものでもよいし、ネットワークを経由して取得されるものでもよいし、ＲＯＭ組込でもよい。
【００３４】
＜動作＞
図５は上記の実施形態の処理例を示すフローチャートである。利用される機能として主にＡＰＩについて説明するが、ＡＰＩに代えてメソッドやライブラリであってもよい。
【００３５】
図５において、共有サイト１の共有サイト説明文章解析部１０３は、共有サイト成果物データベース１０１から成果物の説明文章（共有サイト説明文章）を取得し、形態素解析を行う（ステップＳ１０１）。次いで、共有サイト説明文章解析部１０３は、形態素解析の結果から、助詞・助動詞、句読点、ストップワード、ｔｆ−ｉｄｆ値が低い単語を取り除き、結果を共有サイト成果物データベース１０１に登録する（ステップＳ１０２）。
【００３６】
図６は共有サイト説明文章の形態素解析および助詞等の取り除きの例を示す図である。例えば、説明文章の「本アプリは、スマートフォン同士で、簡単にチップを送金できるアプリです。」の部分は、「本」「アプリ」「は」「、」「スマートフォン」「同士」「で」「簡単」「に」「チップ」「を」「送金」「できる」「アプリ」「です」のように形態素解析される。また、助詞・助動詞「は」「で」「に」「を」「できる」「です」と、句読点「、」「。」と、ストップワードやｔｆ−ｉｄｆ値が低い単語である「本」「アプリ」「スマートフォン」「同士」が取り除かれ、「簡単」「チップ」「送金」が得られる。図７（ａ）は、これらの結果が登録された状態の共有サイト成果物データベース１０１を示しており、「抽出単語」の欄に「簡単」「チップ」「送金」等が登録されている。
【００３７】
図５に戻り、次いで、共有サイト説明文章解析部１０３は、シソーラスデータベース１０６を参照し、助詞等が取り除かれた後の単語（主に名詞）に類語を紐付け、結果を共有サイト成果物データベース１０１に登録する（ステップＳ１０３）。図７（ｂ）は、これらの結果が登録された状態の共有サイト成果物データベース１０１を示しており、「抽出単語」の欄の「簡単」に類語「簡易」「単純」が、「チップ」に類語「心付け」が、「送金」に類語「振込」「支払い」等が登録されている。
【００３８】
図５に戻り、次いで、ソース解析部１０４による処理と技術情報説明文章解析部１０５による処理とが、並行して、または、一方を先にして行われる。なお、いずれの処理が先でもよい。
【００３９】
先ず、ソース解析部１０４は、共有サイト成果物データベース１０１から成果物のソースコードを取得し、ソースコードを解析して使用されている機能の情報としてＡＰＩ（Application  Program  Interface）やライブラリの記述を抽出する。そして、ソース解析部１０４は、抽出結果を共有サイト成果物データベース１０１に登録する（ステップＳ１０４）。解析手法としては、次のようなものがある。
【００４０】
・ソースコードが読み込んでいるモジュールやヘッダーファイルからの、システムが利用しているＡＰＩ等の判別
・メソッド名やＡＰＩのＵＲＬ（エンドポイント）からの、ＡＰＩの何の機能が利用されているかの判別
・ソースフォルダ内にあるライブラリファイル本体からの、システムが利用しているライブラリの判別（ライブラリファイル本体のファイル名またはファイルの中身のソースの最初辺りの行にコメントでＡＰＩの説明がテキストで書かれている場合が多い）
・モジュール読み込みの設定ファイルから利用モジュールを判別する。例えば、JavaScript（登録商標）（Node.js）の場合は、パッケージを管理する設定ファイルであるpackage.jsonファイルのdependenciesの項目に利用されているライブラリが記載されており、その記載から利用モジュールを得ることができる。
【００４１】
図８は、ソースコードの解析によるＡＰＩ部分の抽出の例を示している。すなわち、先頭行の「import  com.money」からソースコードが読み込んでいるモジュールやヘッダーファイルである「com.money」が抽出され、４行目からメソッド「money.transfer」が抽出され、「com.money.transfer」が取得されている。また、ソースコード中の他の箇所の記載や他の登録情報から、エンドポイント「"https://www.○○○.com/money/transfer"」が取得されている。図９は、ソースコードから抽出された結果が登録された状態の共有サイト成果物データベース１０１を示しており、「抽出ＡＰＩ」の欄にエンドポイント「"https://www.○○○.com/money/transfer"」等が登録されている。
【００４２】
図５に戻り、一方、技術情報説明文章解析部１０５は、技術情報提供サイト２から複数の機能に対応する技術情報説明文章（ＡＰＩ等の説明ドキュメント）を取得し、その技術情報説明文章を解析し、ＡＰＩごとに、コード部分と説明文章、タグを抽出する（ステップＳ１０５）。図１０は、技術情報説明文章から、エンドポイントと説明文章とタグとが抽出された状態を示している。
【００４３】
図５に戻り、次いで、技術情報説明文章解析部１０５は、ＡＰＩの説明文章を形態素解析し（ステップＳ１０６）、助詞・助動詞、句読点、ストップワード、ｔｆ−ｉｄｆ値が低い単語を取り除く（ステップＳ１０７）。また、技術情報説明文章解析部１０５は、シソーラスデータベース１０６を参照して類語をし、抽出した単語に類語を紐付け（ステップＳ１０８）、結果を技術情報データベース１０７に登録する。これらの処理は、対象となる文章と結果の登録先が異なるほかは、共有サイト説明文章解析部１０３における処理（ステップＳ１０１〜Ｓ１０３）と同様である。図１１は、技術情報説明文章から抽出された結果が登録された状態の技術情報データベース１０７を示しており、ＡＰＩを識別する「ＩＤ」、「ＡＰＩ名」、「機能別ＩＤ」、「機能名」、「説明文章」、「抽出単語」、「タグ」、「エンドポイント」が登録されている。
【００４４】
図５に戻り、次いで、照合部１０８は、ソース解析部１０４により抽出されたソースコードで利用されているＡＰＩと、技術情報説明文章解析部１０５により抽出された技術情報説明文章から得られた単語とを紐付ける。そして、照合部１０８は、紐付けの結果を共有サイト成果物データベース１０１に登録する（ステップＳ１０９）。図９に示された共有サイト成果物データベース１０１のレコードの「抽出ＡＰＩ」のエンドポイントと、図１１に示された技術情報データベース１０７のレコードの「エンドポイント」とは一致することから、両者は紐付けられる。図１２は、紐付けの結果が登録された状態の共有サイト成果物データベース１０１を示しており、「抽出ＡＰＩ」の欄に、技術情報データベース１０７のＩＤと機能別ＩＤが登録されている。
【００４５】
図５に戻り、次いで、照合部１０８は、上記の紐付けられた間で、共有サイト説明文章解析部１０３による共有サイト説明文章解析結果と、技術情報説明文章解析部１０５によるＡＰＩの技術文章解析結果の単語を照合し、類似するものを紐付ける（ステップＳ１１０）。図１３は共有サイト成果物データベース１０１の「抽出単語」の欄の単語「送金」に“API_ID”:  201,  “機能別ID”:  1が紐付けられた状態を示している。
【００４６】
照合部１０８における類似の判断の処理としては、例えば、図１４に示すような２つの手法がある。図１４（ａ）は単語の単純な頻出度を類似度とする場合の処理例であり、図１４（ｂ）はtf-idf値を類似度とする場合の処理例である。ここで、共有サイト説明文章解析部１０３により抽出されたある単語を「DW1」とし、技術情報説明文章解析部１０５で抽出されたあるＡＰＩの単語をM1W1〜MnWkとし、nは抽出されたＡＰＩの数、kはあるＡＰＩに対して抽出された単語の数とする。
【００４７】
図１４（ａ）において、照合部１０８は、処理を開始すると、単語DW1と単語M1W1〜MnWkが等しいかどうか判定し、ＡＰＩごとに対応した単語の数（頻出度）をカウントし、カウント値を共有サイト成果物データベース１０１に登録する（ステップＳ１２１）。図１５（ａ）は、共有サイト成果物データベース１０１の「抽出単語」の欄にカウント値が登録された状態を示している。
【００４８】
図１４（ａ）に戻り、次いで、照合部１０８は、単語DW1とマッチした単語の数が最も多かったＡＰＩを単語DW1と紐付いている（類似する）とし（ステップＳ１２２）、処理を終了する。
【００４９】
次に、図１４（ｂ）において、照合部１０８は、処理を開始すると、抽出されたＡＰＩの技術文章に対して、単語M1W1〜MnWkの各tf-idf値（または、tf値だけでも良い）を求め、tf-idf値を技術情報データベース１０７に登録する（ステップＳ１３１）。図１５（ｂ）は、技術情報データベース１０７の「抽出単語」の欄にtf-idf値が登録された状態を示している。
【００５０】
図１４（ｂ）に戻り、次いで、照合部１０８は、単語DW1と等しい、抽出された各ＡＰＩの技術文章中の単語のtf-idf値を見て、最もtf-idf値が高いＡＰＩを単語DW1と紐付いている（類似する）とし（ステップＳ１３２）、処理を終了する。
【００５１】
なお、類似度が同じＡＰＩがあった場合、照合部１０８は、一方のＡＰＩを単語DW1と紐付けして、他方のＡＰＩを候補として、共有サイト１の説明文章中の単語にリンク付け表示させることができる。どちらに紐付けを行うかは、ランダムに決めたり、名前順等で決めたりすることができる。また、共有サイト１の説明文章中の単語にＡＰＩへの説明ページがリンク付け表示されるとき、類似度が高い順にいくつか同時に出力されるようにすることもできる。
【００５２】
図５に戻り、次いで、共有サイト文章編集部１０９は、マッチングした共有サイト説明文章の単語に、対応するＡＰＩ等の説明ページへのリンクや印を付ける（ステップＳ１１１）。リンクは、参照先のＵＲＬ等が埋め込まれており、マウスでクリック等がされることで参照先の説明ページを表示することができるようになっている。リンクの上にマウスが移動した際にＡＰＩ名や説明等のポップアップが表示されるようにしてもよい。印は、文字色、文字背景色、字体等により目立たせるようにしたものである。共有サイト文章編集部１０９は、ソースコードで利用されているＡＰＩと、技術情報説明文章から得られた単語との紐付け（ステップＳ１０９）の結果に応じて、成果物で利用されているＡＰＩ名のタグを付けることもできる。タグは、情報の検索や分類を補助するための情報である。タグには、説明ページへのリンクを付加してもよい。リンクや印等は共有サイト成果物データベース１０１の説明文章に直接に付加されるものでもよいし、別途、説明文章に対応して参照手段の付加される説明文章中の記述の位置や参照手段の示す参照先の情報が管理されるものでもよい。図１６はリンクが付された説明文章の例を示しており、単語「送金」にリンクＩ１が付され、単語「グラフ」にリンクＩ２が付され、「金融ＡＰＩ」へのリンク（リンクボタン）Ｉ３と「グラフＡＰＩ」へのリンク（リンクボタン）Ｉ４が付されている。閲覧者は、リンクを選択することで、対応する技術情報のページへジャンプして詳細を閲覧することができる。
【００５３】
＜変形例＞
上述の実施形態では、ソースコードにおける機能に対応するＡＰＩ、メソッド、ライブラリ等を示す記述が照合に用いられる場合について説明したが、それに限らず、ソースコードにおけるＡＰＩ等の入出力データの記述についても照合に用いられるようにすることができる。
【００５４】
図１７はＡＰＩ等の入出力データの記述の例を示す図であり、ＡＰＩドキュメントのParameterやDescription部分が照合に利用される。すなわち、「Parameter」の「account_number」や、「Description」の「口座番号」や「Data  Type」の「number」が照合の対象とされる。これらは、機能の場合と同様に照合の対象となり、類似するもの同士が紐付けられる。
【００５５】
図１８（ａ）は、共有サイト成果物データベース１０１の「抽出単語」の欄に"出力ID":  1が登録された状態を示している。図１８（ｂ）の技術情報データベース１０７には「入力ＩＤ」「入力説明文章」「入力抽出単語」「出力ＩＤ」「出力説明文章」「出力抽出単語」の欄が設けられ、抽出した入出力データの情報が登録された状態を示している。この例では、共有サイト成果物データベース１０１の「抽出単語」の欄の"出力ID":  1により、技術情報データベース１０７の「出力ＩＤ」の「1」と紐付けられている。図１９は共有サイト説明文章の説明画面の例を示しており、「口座番号」や「チップ」にリンクＩ６、Ｉ７が付された状態を示している。ここでは、「口座番号」が金融ＡＰＩの送金機能のメソッドの入力データとして扱われていることで、リンクが付されている。
【００５６】
＜付加機能＃１＞
付加機能＃１は、説明文章中の言葉の印の付け方を、利用しているＡＰＩやライブラリの人気度や新しさによって変えるようにしたものである。人気度は、例えば、該当するＡＰＩ等が過去一定期間中において、共有サイト１でどのぐらい利用されたか、または、世界でどのぐらい利用されたかを示すものである。新しさは、例えば、どのぐらい最近にリリースされたかを示すものである。印のつけ方としては、例えば、文字や文字背景色を変えることにより行われる。これにより、成果物の説明画面を一目見ただけで、視覚情報から流行技術を使ったシステムか古臭いシステムなのかわかり、利用されているＡＰＩ等をそのまま使うかどうか判断する材料になる。
【００５７】
図２０はＡＰＩ等の人気度や新しさに応じて表示を変える処理例を示すフローチャートであり、図２０（ａ）はＡＰＩ等の人気度に応じた処理例、図２０（ｂ）はＡＰＩ等の新しさに応じた処理例である。
【００５８】
図２０（ａ）において、ランキング処理部１１０は、共有サイト１の全プロジェクト（成果物）に対して、抽出された利用ＡＰＩ等を集計し（ステップＳ２０１）、集計されたＡＰＩ等を利用頻度が高いものからランキング付けする。そして、ランキング処理部１１０は、ランキングの結果を集計データベース１１１に登録する（ステップＳ２０２）。図２１（ａ）は集計データベース１１１のデータ例を示しており、「ＩＤ」「ＡＰＩ名」「利用数」「ランキング」「機能別ＩＤ」「機能名」「利用数」「ランキング」の項目が含まれている。
【００５９】
図２０（ａ）に戻り、次いで、ランキング処理部１１０は、共有サイト１の説明文章内で、ＡＰＩ等と紐付けされた単語において、紐付けされたＡＰＩ等の利用頻度ランキングを参照する（ステップＳ２０３）。そして、ランキング処理部１１０は、ＡＰＩ等の利用頻度ランキングの順位に応じて、単語につける印の色を変更する（ステップＳ２０４）。図２１は成果物の説明画面の例を示しており、「送金」の部分Ｉ１１が人気度が高いことを示す赤色で表示され、「グラフ」の部分Ｉ１２が人気度が低いことを示す青色で表示されている。
【００６０】
図２０（ｂ）において、ランキング処理部１１０は、共有サイト１の説明文章内で、ＡＰＩ等と紐付けされた単語において、紐付けされたＡＰＩ等の更新日を技術情報ページ（更新日が書かれている前提）から取得する。そして、ランキング処理部１１０は、取得した更新日を技術情報データベース１０７に登録する（ステップＳ２１１）。図２１（ｂ）は技術情報データベース１０７のデータ例を示しており、「更新日」の欄に日付が登録されている。
【００６１】
図２０（ｂ）に戻り、次いで、ランキング処理部１１０は、ＡＰＩ等の更新日に応じて、単語に付ける印の色を変更する（ステップＳ２１２）。
【００６２】
＜付加機能＃２＞
付加機能＃２は、どのＡＰＩ等が利用されているかの解析結果（付加機能＃１の処理）を基に、共有サイト１において最も利用されているＡＰＩ等をランキング表示するようにしたものである。なお、ＡＰＩ等のカテゴリ別（例えば、お金関係、音楽関係、画像検索関係等）にランキング表示できるようにしてもよい。
【００６３】
図２３は多くのＡＰＩ等を利用しているプロジェクト毎のランキング表示を行う場合のデータ例および表示例を示す図である。図２３において、ランキング処理部１１０は、共有サイト１の全プロジェクト（成果物）に対して、抽出された利用ＡＰＩ等を集計する（ステップＳ２２１）。次いで、ランキング処理部１１０は、集計されたＡＰＩ等を利用頻度が高いものからランキング付けし（ステップＳ２２２）、ランキング付けされた結果を昇順（降順の場合もあり）に表示する（ステップＳ２２３）。図２４はＡＰＩ等の利用頻度に応じたＡＰＩ等のランキング表示の例を示す図であり、ランキングとＡＰＩ名とが列挙されている。
【００６４】
＜付加機能＃３＞
付加機能＃３は、どのＡＰＩ等が利用されているかの解析結果（付加機能＃１の処理）を基に、多くのＡＰＩ等を利用しているプロジェクト（成果物）をランキング表示するようにしたものである。なお、ＡＰＩ等のカテゴリ別の合計に応じてランキング表示できるようにしてもよい。
【００６５】
図２５は多くのＡＰＩ等を利用しているプロジェクト毎のランキング表示の処理例を示すフローチャートである。図２５において、ランキング処理部１１０は、共有サイト１の各プロジェクトに対して、抽出された利用ＡＰＩ等の数を各プロジェクトごとに集計し、集計結果を共有サイト成果物データベース１０１に登録する（ステップＳ２３１）。図２６（ａ）は、共有サイト成果物データベース１０１の「利用ＡＰＩ数」の欄に集計結果が登録された状態を示している。
【００６６】
図２５に戻り、次いで、ランキング処理部１１０は、利用ＡＰＩ等の合計が高いプロジェクトからランキング付けする（ステップＳ２３２）。そして、ランキング処理部１１０は、ランキング付けされた結果を昇順（降順の場合もあり）に表示する（ステップＳ２３３）。図２６（ｂ）は、ランキング表示の例を示しており、ランキングとプロジェクト名とが列挙されている。
【００６７】
＜付加機能＃４＞
付加機能＃４は、どのＡＰＩ等が利用されているかの解析結果（付加機能＃１の処理）を基に、最新のＡＰＩ等、または、人気のＡＰＩ等を利用している頻度が高いプロジェクト（アイデア）をランキング表示するようにしたものである。なお、過去一定期間内に更新されたＡＰＩ等のみを利用している、または、１つ以上利用しているプロジェクトのみを抽出できるようにしてもよい。
【００６８】
図２７は新しいまたは人気のＡＰＩ等の利用頻度等に応じたプロジェクト毎のランキング表示の処理例を示すフローチャートであり、図２７（ａ）は最新ＡＰＩ等の利用に基づくランキングの処理例、図２７（ｂ）は人気ＡＰＩ等の利用頻度に基づくランキングの処理例である。
【００６９】
図２７（ａ）において、ランキング処理部１１０は、共有サイト１の各プロジェクトに対して、説明文章内で、ＡＰＩ等と紐付けされた単語において、紐付けされたＡＰＩ等の更新日を技術情報ページ（更新日が書かれている前提）から取得する。そして、ランキング処理部１１０は、共有サイト成果物データベース１０１に登録する（ステップＳ２４１）。図２８（ａ）は共有サイト成果物データベース１０１の「ＡＰＩ平均更新日」の欄に日付が登録された状態を示している。
【００７０】
図２７（ａ）に戻り、次いで、ランキング処理部１１０は、各プロジェクトに対して、抽出されたＡＰＩ等の更新日の平均値を求める（ステップＳ２４２）。次いで、ランキング処理部１１０は、更新日の平均値が新しいプロジェクトからランキング付けし（ステップＳ２４３）、ランキング付けされた結果を昇順（降順の場合もあり）に表示する（ステップＳ２４４）。
【００７１】
図２７（ｂ）において、ランキング処理部１１０は、共有サイト１の全プロジェクトに対して、抽出された利用ＡＰＩ等を集計する（ステップＳ２５１）。次いで、ランキング処理部１１０は、集計されたＡＰＩ等を利用頻度が高いものからランキング付けする（ステップＳ２５２）。次いで、ランキング処理部１１０は、各プロジェクトに対して、説明文章内で、ＡＰＩ等と紐付けされた各単語において、紐付けされたＡＰＩ等の利用頻度ランキングを参照し、ランキングの平均値を求め、共有サイト成果物データベース１０１に登録する（ステップＳ２５３）。図２８（ｂ）は共有サイト成果物データベース１０１「ＡＰＩ平均利用頻度ランキング」の欄に値が登録された状態を示している。
【００７２】
図２７（ｂ）に戻り、次いで、ランキング処理部１１０は、利用頻度ランキングの平均値が小さいプロジェクトからランキング付けし（ステップＳ２５４）、ランキング付けされた結果を昇順（降順の場合もあり）に表示する（ステップＳ２５５）。
【００７３】
＜総括＞
以上説明したように、本実施形態によれば、成果物の説明文章の記述と該成果物において使用されている機能の情報との紐付けを行うことができる。
【００７４】
これにより、成果物が何の技術から構成されているか、または、どのような目的でそれらの技術が使用されているのか、手間をかけずに、効率良く理解されるようになる。その結果、プロトタイピングの速さの向上、アイデアの実現可能性の把握、ハッカソン等のイベント運営者の評価の手助け、ＡＰＩ等の技術提供者へのフィードバックが行えるようになる。
【００７５】
以上、好適な実施の形態により説明した。ここでは特定の具体例を示して説明したが、特許請求の範囲に定義された広範な趣旨および範囲から逸脱することなく、これら具体例に様々な修正および変更を加えることができることは明らかである。すなわち、具体例の詳細および添付の図面により限定されるものと解釈してはならない。
【００７６】
以上の説明に関し、更に以下の項を開示する。
（付記１）
成果物の説明文章を解析して１以上の記述を抽出する第１の解析部と、
前記成果物のソースコードを解析して使用されている機能の情報を抽出する第２の解析部と、
複数の機能の説明文章を解析して１以上の記述を抽出する第３の解析部と、
前記第２の解析部により抽出された機能の情報に対応する前記第３の解析部により抽出された１以上の記述を特定し、該記述を前記第１の解析部により抽出された１以上の記述と照合して、類似する場合に該類似する両者を紐付ける照合部と、
前記照合部により紐付けられた前記第１の解析部により抽出された１以上の記述と前記第３の解析部により抽出された１以上の記述とに基づいて、前記成果物の説明文章に前記第３の解析部により抽出された１以上の記述に対応する外部情報への参照手段を付加する編集部と、
を備えたことを特徴とする情報処理装置。
（付記２）
前記参照手段は、前記第１の解析部により抽出された１以上の記述に付加された、前記第３の解析部により抽出された１以上の記述に対応する外部情報へのリンクである、
ことを特徴とする付記１に記載の情報処理装置。
（付記３）
前記編集部は、前記成果物の説明文章に前記第２の解析部により抽出された機能の情報に対応する外部情報のタグを更に付加する、
ことを特徴とする付記１または２に記載の情報処理装置。
（付記４）
前記第１の解析部は、前記成果物の説明文章を形態素解析し、機能に関連しない単語を除去し、類語を付加し、
前記第３の解析部は、前記複数の機能の説明文章を解析し、機能に関連しない単語を除去し、類語を付加する、
ことを特徴とする付記１乃至３のいずれか一項に記載の情報処理装置。
（付記５）
前記第２の解析部は、前記成果物のソースコードから、入出力データの情報を更に抽出し、
前記照合部は、前記第２の解析部により抽出された入出力データの情報に対応する前記第３の解析部により抽出された１以上の記述を特定し、該記述を前記第１の解析部により抽出された１以上の記述と照合して、類似する場合に該類似する両者を紐付ける、
ことを特徴とする付記１乃至４のいずれか一項に記載の情報処理装置。
（付記６）
前記機能の人気度または新しさにより前記機能を順位付ける処理部を更に備え、
前記編集部は、参照先の機能の順位により前記参照手段の表示態様を変更する、
ことを特徴とする付記１乃至５のいずれか一項に記載の情報処理装置。
（付記７）
前記機能の利用頻度により前記機能を順位付けて表示する処理部
を更に備えたことを特徴とする付記１乃至５のいずれか一項に記載の情報処理装置。
（付記８）
前記機能の利用数により前記成果物を順位付けて表示する処理部
を更に備えたことを特徴とする付記１乃至５のいずれか一項に記載の情報処理装置。
（付記９）
前記機能の人気度または新しさ、および、前記機能の利用頻度により前記成果物を順位付けて表示する処理部
を更に備えたことを特徴とする付記１乃至５のいずれか一項に記載の情報処理装置。
（付記１０）
成果物の説明文章を解析して１以上の記述を抽出する第１の解析処理と、
前記成果物のソースコードを解析して使用されている機能の情報を抽出する第２の解析処理と、
複数の機能の説明文章を解析して１以上の記述を抽出する第３の解析処理と、
前記第２の解析処理により抽出された機能の情報に対応する前記第３の解析処理により抽出された１以上の記述を特定し、該記述を前記第１の解析処理により抽出された１以上の記述と照合して、類似する場合に該類似する両者を紐付ける照合処理と、
前記照合処理により紐付けられた前記第１の解析処理により抽出された１以上の記述と前記第３の解析処理により抽出された１以上の記述とに基づいて、前記成果物の説明文章に前記第３の解析処理により抽出された１以上の記述に対応する外部情報への参照手段を付加する編集処理と、
をコンピュータが実行することを特徴とする情報処理方法。
（付記１１）
前記参照手段は、前記第１の解析処理により抽出された１以上の記述に付加された、前記第３の解析処理により抽出された１以上の記述に対応する外部情報へのリンクである、
ことを特徴とする付記１０に記載の情報処理方法。
（付記１２）
前記編集処理は、前記成果物の説明文章に前記第２の解析処理により抽出された機能の情報に対応する外部情報のタグを更に付加する、
ことを特徴とする付記１０または１１に記載の情報処理方法。
（付記１３）
前記第１の解析処理は、前記成果物の説明文章を形態素解析し、機能に関連しない単語を除去し、類語を付加し、
前記第３の解析処理は、前記複数の機能の説明文章を解析し、機能に関連しない単語を除去し、類語を付加する、
ことを特徴とする付記１０乃至１２のいずれか一項に記載の情報処理方法。
（付記１４）
前記第２の解析処理は、前記成果物のソースコードから、入出力データの情報を更に抽出し、
前記照合処理は、前記第２の解析処理により抽出された入出力データの情報に対応する前記第３の解析処理により抽出された１以上の記述を特定し、該記述を前記第１の解析処理により抽出された１以上の記述と照合して、類似する場合に該類似する両者を紐付ける、
ことを特徴とする付記１０乃至１３のいずれか一項に記載の情報処理方法。
（付記１５）
前記機能の人気度または新しさにより前記機能を順位付ける処理を前記コンピュータが更に実行し、
前記編集処理は、参照先の機能の順位により前記参照手段の表示態様を変更する、
ことを特徴とする付記１０乃至１４のいずれか一項に記載の情報処理方法。
（付記１６）
前記機能の利用頻度により前記機能を順位付けて表示する処理を前記コンピュータが更に実行する、
ことを特徴とする付記１０乃至１４のいずれか一項に記載の情報処理方法。
（付記１７）
前記機能の利用数により前記成果物を順位付けて表示する処理を前記コンピュータが更に実行する、
ことを特徴とする付記１０乃至１４のいずれか一項に記載の情報処理方法。
（付記１８）
前記機能の人気度または新しさ、および、前記機能の利用頻度により前記成果物を順位付けて表示する処理を前記コンピュータが更に実行する、
ことを特徴とする付記１０乃至１４のいずれか一項に記載の情報処理方法。
（付記１９）
成果物の説明文章を解析して１以上の記述を抽出する第１の解析処理と、
前記成果物のソースコードを解析して使用されている機能の情報を抽出する第２の解析処理と、
複数の機能の説明文章を解析して１以上の記述を抽出する第３の解析処理と、
前記第２の解析処理により抽出された機能の情報に対応する前記第３の解析処理により抽出された１以上の記述を特定し、該記述を前記第１の解析処理により抽出された１以上の記述と照合して、類似する場合に該類似する両者を紐付ける照合処理と、
前記照合処理により紐付けられた前記第１の解析処理により抽出された１以上の記述と前記第３の解析処理により抽出された１以上の記述とに基づいて、前記成果物の説明文章に前記第３の解析処理により抽出された１以上の記述に対応する外部情報への参照手段を付加する編集処理と、
をコンピュータに実行させることを特徴とするプログラム。
（付記２０）
前記参照手段は、前記第１の解析処理により抽出された１以上の記述に付加された、前記第３の解析処理により抽出された１以上の記述に対応する外部情報へのリンクである、
ことを特徴とする付記１９に記載のプログラム。
（付記２１）
前記編集処理は、前記成果物の説明文章に前記第２の解析処理により抽出された機能の情報に対応する外部情報のタグを更に付加する、
ことを特徴とする付記１９または２０に記載のプログラム。
（付記２２）
前記第１の解析処理は、前記成果物の説明文章を形態素解析し、機能に関連しない単語を除去し、類語を付加し、
前記第３の解析処理は、前記複数の機能の説明文章を解析し、機能に関連しない単語を除去し、類語を付加する、
ことを特徴とする付記１９乃至２１のいずれか一項に記載のプログラム。
（付記２３）
前記第２の解析処理は、前記成果物のソースコードから、入出力データの情報を更に抽出し、
前記照合処理は、前記第２の解析処理により抽出された入出力データの情報に対応する前記第３の解析処理により抽出された１以上の記述を特定し、該記述を前記第１の解析処理により抽出された１以上の記述と照合して、類似する場合に該類似する両者を紐付ける、
ことを特徴とする付記１９乃至２２のいずれか一項に記載のプログラム。
（付記２４）
前記機能の人気度または新しさにより前記機能を順位付ける処理を前記コンピュータに更に実行させ、
前記編集処理は、参照先の機能の順位により前記参照手段の表示態様を変更する、
ことを特徴とする付記１９乃至２３のいずれか一項に記載のプログラム。
（付記２５）
前記機能の利用頻度により前記機能を順位付けて表示する処理を前記コンピュータに更に実行させる、
ことを特徴とする付記１９乃至２３のいずれか一項に記載のプログラム。
（付記２６）
前記機能の利用数により前記成果物を順位付けて表示する処理を前記コンピュータに更に実行させる、
ことを特徴とする付記１９乃至２３のいずれか一項に記載のプログラム。
（付記２７）
前記機能の人気度または新しさ、および、前記機能の利用頻度により前記成果物を順位付けて表示する処理を前記コンピュータに更に実行させる、
ことを特徴とする付記１９乃至２３のいずれか一項に記載のプログラム。
【００７７】
共有サイト説明文章解析部１０３は「第１の解析部」の一例である。ソース解析部１０４は「第２の解析部」の一例である。技術情報説明文章解析部１０５は「第３の解析部」の一例である。照合部１０８は「照合部」の一例である。共有サイト文章編集部１０９は「編集部」の一例である。
【符号の説明】
【００７８】
１          共有サイト
１０１      共有サイト成果物データベース
１０２      共有部
１０３      共有サイト説明文章解析部
１０４      ソース解析部
１０５      技術情報説明文章解析部
１０６      シソーラスデータベース
１０７      技術情報データベース
１０８      照合部
１０９      共有サイト文章編集部
１１０      ランキング処理部
１１１      集計データベース
２          技術情報提供サイト
Ｎ          ネットワーク
【図１】
2018097709.tif 000003
【図２】
2018097709.tif 000004
【図３】
2018097709.tif 000005
【図４】
2018097709.tif 000006
【図５】
2018097709.tif 000007
【図６】
2018097709.tif 000008
【図７】
2018097709.tif 000009
【図８】
2018097709.tif 000010
【図９】
2018097709.tif 000011
【図１０】
2018097709.tif 000012
【図１１】
2018097709.tif 000013
【図１２】
2018097709.tif 000014
【図１３】
2018097709.tif 000015
【図１４】
2018097709.tif 000016
【図１５】
2018097709.tif 000017
【図１６】
2018097709.tif 000018
【図１７】
2018097709.tif 000019
【図１８】
2018097709.tif 000020
【図１９】
2018097709.tif 000021
【図２０】
2018097709.tif 000022
【図２１】
2018097709.tif 000023
【図２２】
2018097709.tif 000024
【図２３】
2018097709.tif 000025
【図２４】
2018097709.tif 000026
【図２５】
2018097709.tif 000027
【図２６】
2018097709.tif 000028
【図２７】
2018097709.tif 000029
【図２８】
2018097709.tif 000030