Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4846483B2 - Software parts reuse support system - Google Patents
[go: Go Back, main page]

JP4846483B2 - Software parts reuse support system - Google Patents

Software parts reuse support system Download PDF

Info

Publication number
JP4846483B2
JP4846483B2 JP2006217157A JP2006217157A JP4846483B2 JP 4846483 B2 JP4846483 B2 JP 4846483B2 JP 2006217157 A JP2006217157 A JP 2006217157A JP 2006217157 A JP2006217157 A JP 2006217157A JP 4846483 B2 JP4846483 B2 JP 4846483B2
Authority
JP
Japan
Prior art keywords
component
information
software
developer
software component
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.)
Expired - Fee Related
Application number
JP2006217157A
Other languages
Japanese (ja)
Other versions
JP2008040969A (en
Inventor
誠 辻野
浩樹 渡邊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Solutions Ltd
Original Assignee
Hitachi Solutions 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 Hitachi Solutions Ltd filed Critical Hitachi Solutions Ltd
Priority to JP2006217157A priority Critical patent/JP4846483B2/en
Publication of JP2008040969A publication Critical patent/JP2008040969A/en
Application granted granted Critical
Publication of JP4846483B2 publication Critical patent/JP4846483B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Description

本発明は、開発者が要求するソフトウェア部品を開発者が作成したテストデータに基づいてソフトウェア部品が格納されている構成管理リポジトリから要求するソフトウェア部品を探し出して提案する機能を備えており、かつ開発者が管理するリポジトリに存在するソースコードからソフトウェア部品となるソースコード、仕様書、テストデータに関する情報を抽出する機能を備えているソフトウェア部品再利用支援システムに関するものである。   The present invention has a function for finding and proposing the requested software component from the configuration management repository storing the software component based on the test data created by the developer for the software component requested by the developer, and developing The present invention relates to a software component reuse support system having a function of extracting information on source code, specifications, and test data as software components from source code existing in a repository managed by a user.

システム開発を行う上で、ゼロからプログラムを作成してシステム開発を行うよりも、ソフトウェア部品を再利用してシステム開発を行うことによる開発効率の改善が必然的に要求されている。
特許文献1に記載された発明では、パターンマッチングによるオブジェクト検索の際に、モデリングデータを一定の法則のもとに特徴ベクトル空間上に位置付けるための特徴抽出を行うことにより、型や数を元にした形式的な構造、名称を元にした意味的な構造、複数クラス間の関連性から検索が実行されることで、要求するソフトウェア部品の検索をしている。
特開2004−287650号公報
In system development, rather than creating a program from scratch and developing a system, improvement in development efficiency is inevitably required by reusing a software component to perform system development.
In the invention described in Patent Document 1, when extracting an object by pattern matching, feature extraction for positioning modeling data on a feature vector space based on a certain rule is performed. The requested software component is searched by executing the search based on the formal structure, the semantic structure based on the name, and the relationship between the classes.
JP 2004-287650 A

しかしながら、特許文献1に記載された発明の場合、システムの学習機能により、使い込むほど検索結果の精度を高ることができるものの、システムを使い始めた時点においては、学習機能が十分に発揮されないために開発者が要求するソフトウェア部品を検索することは困難である。また、型や数を元にした形式的な構造、名称を元にした意味的な構造、複数クラス間の関連性から検索を行っているため、検索されたソフトウェア部品が開発者の要求する機能のソフトウェア部品であるとは限らない。仮に、開発者の要求するソフトウェア部品であったとしても、提案されたソースコードが開発者の要求するソフトウェア部品として適切であるか否かを判断することは容易ではない。そのため、開発者は検索されたソフトウェア部品が適切なものであるのか否かを判断することに手間がかかってしまう。   However, in the case of the invention described in Patent Document 1, the accuracy of the search result can be increased as the system is used by the learning function of the system, but the learning function is not sufficiently exhibited when the system is started to be used. It is difficult to search for software components required by developers. In addition, since the search is performed based on the formal structure based on the type and number, the semantic structure based on the name, and the relationship between multiple classes, the searched software components are the functions required by the developer. It is not always a software component. Even if it is a software component requested by the developer, it is not easy to determine whether or not the proposed source code is appropriate as the software component requested by the developer. Therefore, it takes time and effort for the developer to determine whether or not the retrieved software component is appropriate.

本発明の目的は、開発者によって作成されたテストデータ及びソフトウェア部品のカテゴリ情報から開発者の要求するソフトウェア部品を検索し、当該ソフトウェア部品を提案する際に開発者に提案するソフトウェア部品が要求を満たしたものであることを容易に理解することが可能となるソフトウェア部品再利用支援システムを提供することである。   An object of the present invention is to retrieve a software component requested by a developer from test data created by the developer and category information of the software component, and to request the software component proposed to the developer when proposing the software component. The object is to provide a software component reuse support system that makes it easy to understand that the above is satisfied.

上記目的を達成するために、本発明のソフトウェア部品再利用支援システムは、開発者が要求するソフトウェア部品のカテゴリ情報を入力する機能及び前記ソフトウェア部品のカテゴリ情報を送信する機能を有する開発者端末と、前記開発者によって作成された前記ソフトウェア部品のソースコード、仕様書、テストデータに関する情報を格納する開発用構成管理リポジトリと、前記開発者端末から送信された情報を受信するデータ受信機能及び前記開発者が要求するソフトウェア部品を検索して提案する部品提案機能及び前記前記開発用構成管理リポジトリからソフトウェア部品となるソースコードを収集する部品収集機能を備えた部品支援装置と、前記ソフトウェア部品のソースコード、仕様書、テストデータに関する情報を格納する部品構成管理リポジトリと、前記ソフトウェア部品の利用状況やソフトウェア部品の格納情報を格納する部品情報データベースとを備えたソフトウェア部品再利用支援システムであって、前記部品支援装置における部品提案機能は、前記開発者端末から送信されたカテゴリ情報及び前記開発用構成管理リポジトリに格納されている開発者が要求するソフトウェア部品のテストデータから、前記開発者の要求を満たすソフトウェア部品を検索する部品検索部と、該部品検索部によって検索されたソフトウェア部品のソースコード、仕様情報、関連ファイルに関する情報を表示する部品情報表示部と、該部品情報表示部に表示されている情報のソフトウェア部品を前記開発者端末に送信する部品送信部とを備えており、前記部品収集機能は、前記開発用構成管理リポジトリに格納されているソフトウェア部品のソースコードを解析ツールで解析する解析部と、該解析部で解析された情報からソフトウェア部品として利用可能であるか否かを判断する部品候補決定部と、該部品候補決定部で決定されたソフトウェア部品及び部品情報を前記部品構成管理リポジトリ及び前記部品情報データベースにそれぞれ格納する部品格納部とを備えることを特徴とする。   In order to achieve the above object, a software component reuse support system according to the present invention includes a developer terminal having a function of inputting category information of a software component requested by a developer and a function of transmitting category information of the software component. A configuration management repository for development that stores information related to source codes, specifications, and test data of the software parts created by the developer; a data reception function that receives information transmitted from the developer terminal; and the development A component support apparatus having a component proposal function for searching and proposing a software component requested by a person and a component collection function for collecting a source code to be a software component from the development configuration management repository, and a source code of the software component To store information on specifications, test data, and test data A software component reuse support system comprising a configuration management repository and a component information database for storing usage status of software components and software component storage information, wherein the component proposal function in the component support device is the developer A component search unit that searches for software components satisfying the developer's request from the category information transmitted from the terminal and the test data of the software component requested by the developer stored in the development configuration management repository, and the component A component information display unit that displays information related to the source code, specification information, and related files of the software component searched by the search unit, and the software component of the information displayed in the component information display unit is transmitted to the developer terminal. A component transmitting unit, and the component collecting function is An analysis unit that analyzes the source code of a software component stored in the configuration management repository for an analysis tool, and a component candidate determination unit that determines whether it can be used as a software component from the information analyzed by the analysis unit And a component storage unit that stores the software component and the component information determined by the component candidate determination unit in the component configuration management repository and the component information database, respectively.

本発明のソフトウェア部品再利用支援システムによれば、開発者の必要としているソフトウェア部品を提案することができるとともに、当該提案されたソフトウェア部品が開発者の要求を満たし得るソフトウェア部品であるか否かを容易に認識することができる。   According to the software component reuse support system of the present invention, a software component required by a developer can be proposed, and whether or not the proposed software component is a software component that can satisfy a developer's request. Can be easily recognized.

以下、本発明を適用したソフトウェア部品再利用支援システムの一実施の形態について説明する。
まず、ソフトウェア部品再利用支援システムの構成について説明する。
図1に示すように、ソフトウェア部品再利用支援システムは、開発者端末101、開発用構成管理リポジトリ102、部品支援装置103、部品構成管理リポジトリ104、部品情報データベース105、及び汎用化担当者端末106で構成されている。そして、これらの装置等は図示しないネットワークを介して相互に接続されており、データ等の送受信が可能となるように構成されている。
Hereinafter, an embodiment of a software component reuse support system to which the present invention is applied will be described.
First, the configuration of the software component reuse support system will be described.
As shown in FIG. 1, the software component reuse support system includes a developer terminal 101, a development configuration management repository 102, a component support apparatus 103, a component configuration management repository 104, a component information database 105, and a generalization person in charge terminal 106. It consists of These devices and the like are connected to each other via a network (not shown) so that data can be transmitted and received.

開発者端末101は開発者によって操作されるものであり、当該開発者端末101によって部品支援装置103に対してソフトウェア部品(以下、単に「部品」ともいう。)が要求されるとともに、部品情報データベース105から部品のダウンロード等が実行される。開発用構成管理リポジトリ102には、開発者によって作成完了されたソースコード、仕様書、テストデータ等に関する情報や、他のシステム開発で作成されたファイル等も格納されている。部品支援装置103では、開発者から部品の提案に関する要求があった場合、要求される機能を満たす部品の検索、部品の提案、部品の抽出等が実行されるとともに、部品の利用状況、部品登録情報が集計される。この部品支援装置103にはデータ受信機能107、部品提案機能108、部品収集機能109、集計結果通知機能110が備えられている。   The developer terminal 101 is operated by a developer, and the developer terminal 101 requests a software component (hereinafter also simply referred to as “component”) from the component support apparatus 103, and also includes a component information database. A part download or the like is executed from 105. The development configuration management repository 102 also stores information related to source code, specifications, test data, etc. completed by the developer, files created in other system development, and the like. In the component support apparatus 103, when a request for a component proposal is received from the developer, a search for a component that satisfies the required function, a component proposal, a component extraction, and the like are performed, and the usage status of the component and the component registration Information is aggregated. The component support apparatus 103 includes a data reception function 107, a component proposal function 108, a component collection function 109, and a total result notification function 110.

データ受信機能107は、開発者端末101から送信された開発者の要求に関するデータを受信する。部品提案機能108は、送信された開発者の要求に関するデータに基づいて開発者からの要求を満足する部品を検索するとともに、当該検索された部品に関するデータを開発者に提案すべく開発者端末101に送信する。更に、部品提案機能108は、部品検索部111、部品情報表示部112、及び部品送信部113で構成されている。部品検索部111は、開発者から要求されている部品を部品構成管理リポジトリ104から検索する。部品情報表示部112は、部品検索部111において検索された部品を提案部品として、当該検索された部品のソースコードや仕様情報等を表示する。そして、部品送信部113は、開発者が提案された部品の取得を機能する旨のデータを受信した場合に部品のソースコード、仕様書、テストデータ等に関する情報を開発者端末101に送信する。   The data receiving function 107 receives data relating to a developer request transmitted from the developer terminal 101. The component proposal function 108 searches for a component that satisfies the request from the developer based on the transmitted data related to the developer's request, and also proposes the developer terminal 101 to propose the data related to the searched component to the developer. Send to. Further, the component proposal function 108 includes a component search unit 111, a component information display unit 112, and a component transmission unit 113. The part search unit 111 searches the part configuration management repository 104 for parts requested by the developer. The component information display unit 112 displays the source code, specification information, and the like of the retrieved component by using the component retrieved by the component retrieval unit 111 as a proposed component. Then, when the developer receives data indicating that the developer functions to acquire the proposed component, the component transmission unit 113 transmits information on the source code, specifications, test data, and the like of the component to the developer terminal 101.

部品収集機能109は、開発用構成管理リポジトリ102に格納されているソースコードを解析するとともに、部品となるソースコードを決定して抽出する。集計結果通知機能110は、部品の利用状況に関する情報及び抽出された部品に関する情報を汎用化担当者へ通知する。具体的に、部品収集機能109は解析部114、部品候補決定部115、及び品格納部116で構成されている。解析部114は、開発用構成管理リポジトリ102からソースコード、仕様書、テストデータに関する情報を取得して、ソースコードの解析を行う。部品候補決定部115は、解析部114において解析された情報に基づいてソースコードが部品として使用することができるか否かを判断する。そして部品格納部116は、部品候補決定部115によって決定された部品のデータや当該部品の情報を部品構成管理リポジトリ104や部品情報データベース105に格納する。   The component collection function 109 analyzes the source code stored in the development configuration management repository 102 and determines and extracts the source code to be a component. The total result notification function 110 notifies the generalization person in charge of information on the usage status of parts and information on the extracted parts. Specifically, the component collection function 109 includes an analysis unit 114, a component candidate determination unit 115, and a product storage unit 116. The analysis unit 114 acquires information on the source code, specifications, and test data from the development configuration management repository 102, and analyzes the source code. The component candidate determination unit 115 determines whether the source code can be used as a component based on the information analyzed by the analysis unit 114. The component storage unit 116 stores the component data determined by the component candidate determination unit 115 and information on the component in the component configuration management repository 104 and the component information database 105.

部品構成管理リポジトリ104には、部品収集機能109によって収集された部品に関する情報が格納される。また、部品情報データベース105には、部品に関する情報が格納されている。そして、汎用化担当者端末106では部品構成管理リポジトリ104に格納されている部品の管理が行われる。   The component configuration management repository 104 stores information on components collected by the component collection function 109. The parts information database 105 stores information about parts. The generalization person in charge terminal 106 manages the parts stored in the part configuration management repository 104.

次に、開発者端末101に表示される画面について説明する。
図2に示すように、開発者端末101の部品検索依頼画面200には開発者からの部品の提案に関する情報を入力するための画面が表示される。具体的に、部品検索依頼画面200には、テキストボックス201、チェックボックス202、「検索」ボタン203、「キャンセル」ボタン204とが表示される。テキストボックス201には、開発用構成管理リポジトリ102に格納されており、開発者によって要求された部品のテストデータ格納場所が記述される。チェックボックス202には、開発者によって要求された部品の分類が指定される。「検索」ボタン203は、検索の実行依頼を要求するボタンである。そして、「キャンセル」ボタン204は、部品検索をキャンセルするボタンである。
Next, a screen displayed on the developer terminal 101 will be described.
As shown in FIG. 2, a screen for inputting information related to a component proposal from a developer is displayed on the component search request screen 200 of the developer terminal 101. Specifically, the parts search request screen 200 displays a text box 201, a check box 202, a “search” button 203, and a “cancel” button 204. The text box 201 stores the test data storage location of the part stored in the development configuration management repository 102 and requested by the developer. In the check box 202, the classification of parts requested by the developer is designated. The “search” button 203 is a button for requesting a search execution request. A “cancel” button 204 is a button for canceling the part search.

また、図3に示すように、開発者端末101の提案部品表示画面300には、ファイルリスト301、提案部品仕様情報302、ソースビュー303、検索結果304、カバレージ率305、結果一致率306、「次へ」ボタン307、「前へ」ボタン308、「ダウンロード」ボタン309、「キャンセル」ボタン310が表示される。ファイルリスト301には、開発者に提案する部品と依存関係のあるファイルが表示される。提案部品仕様情報302には、提案する部品の仕様が表示される。ソースビュー303には、提案する部品のソースコードが表示される。ソースビュー303に表示されるソースとしては、提案する部品の関数またはメソッドがある。検索結果304には、提案する部品の数が表示される。カバレージ率305には、提案する部品のソースコードとテストデータを用いてテストしたときのカバレージの結果が表示される。結果一致率306には、提案する部品のソースコードとテストデータを用いてテストしたときのテストデータ記載の期待値とが、どのくらいの割合で一致していたのかが表示される。「次へ」ボタン307は、部品を検索した結果、複数件該当した場合、一つ後の候補の部品情報へと遷移するボタンである。「前へ」ボタン308は、一つ前の候補の部品情報へと遷移するボタンである。「ダウンロード」ボタン309は、開発者が提案された部品を取得したい場合に部品送信の要求を依頼するボタンである。「キャンセル」ボタン310は、提案した部品の情報画面を閉じる場合に終了依頼をするボタンである。   As shown in FIG. 3, the proposed component display screen 300 of the developer terminal 101 includes a file list 301, proposed component specification information 302, a source view 303, a search result 304, a coverage rate 305, a result matching rate 306, “ A “Next” button 307, a “Previous” button 308, a “Download” button 309, and a “Cancel” button 310 are displayed. The file list 301 displays files having a dependency relationship with the component proposed to the developer. In the proposed part specification information 302, the specification of the proposed part is displayed. The source view 303 displays the source code of the proposed component. As a source displayed in the source view 303, there is a function or method of a proposed part. In the search result 304, the number of parts to be proposed is displayed. The coverage rate 305 displays the result of coverage when testing is performed using the source code and test data of the proposed component. The result coincidence rate 306 indicates how much the source code of the proposed part matches the expected value described in the test data when the test is performed using the test data. The “next” button 307 is a button for transitioning to the next candidate component information when a plurality of items are found as a result of searching for the component. The “Previous” button 308 is a button for transitioning to the previous candidate part information. A “download” button 309 is a button for requesting a component transmission request when the developer wants to acquire a proposed component. The “Cancel” button 310 is a button for requesting termination when closing the proposed component information screen.

次に、このように構成されているソフトウェア部品再利用支援システムによって実現される、部品を再利用するための方法について説明する。
・部品支援装置103における処理の概要について
図4に示すように、開発者端末101から開発者によって入力されたデータが送信されると、当該データはデータ受信機能107によって受信される(ステップ401)。次に、データ受信機能107で受信されたデータと開発用構成管理リポジトリ102に格納されているテストデータとに基づいて部品構成管理リポジトリ104に格納されている部品群から開発者の要求を満足する部品が検索される(ステップ402)。続いて、開発者の要求を満足した部品のソースコード、仕様情報が開発者端末101へと送信されるとともに提案部品表示画面300に表示されることで、開発者に部品が提案される(ステップ403)。次に、開発用構成管理リポジトリ102から部品となるソースコードが抽出される(ステップ404)。そして、部品の利用状況に関する情報や新規に登録された部品に関する情報が汎用化担当者端末106へと送信される(ステップ405)
Next, a method for reusing components realized by the software component reuse support system configured as described above will be described.
Outline of Processing in the Component Support Device 103 As shown in FIG. 4, when data input by the developer is transmitted from the developer terminal 101, the data is received by the data receiving function 107 (step 401). . Next, the developer's request is satisfied from the parts group stored in the parts configuration management repository 104 based on the data received by the data receiving function 107 and the test data stored in the development configuration management repository 102. A part is searched (step 402). Subsequently, the source code and specification information of the component that satisfies the developer's request are transmitted to the developer terminal 101 and displayed on the proposed component display screen 300, so that the component is proposed to the developer (step) 403). Next, source code as a part is extracted from the development configuration management repository 102 (step 404). Then, information on the usage status of the parts and information on the newly registered parts are transmitted to the generalization person in charge terminal 106 (step 405).

・データ受信機能107における処理の流れについて
図5に示すように、データ受信機能107によって、開発者端末101から送信されたカテゴリ情報及びテストデータ格納場所情報に関するデータが受信される(ステップ501)。そして、当該テストデータ格納場所情報に基づいて開発用構成管理リポジトリ102からテストデータが取得される(ステップ502)。
Process Flow in Data Receiving Function 107 As shown in FIG. 5, the data receiving function 107 receives data related to category information and test data storage location information transmitted from the developer terminal 101 (step 501). Then, test data is acquired from the development configuration management repository 102 based on the test data storage location information (step 502).

・部品検索部111における処理の流れについて
図6に示すように、まず、データ受信機能107によって受信されたカテゴリ情報をキーとして部品情報データベース105に登録されている部品の部品ID、ソースコード格納情報が取得される(ステップ601)。次に、当該ソースコード格納情報に基づいて部品構成管理リポジトリ104に格納されている部品のソースコードが取得される(ステップ602)。次に、取得された部品のソースコード及びデータ受信機能107によって取得されたテストデータに基づいてテストドライバが作成される(ステップ604)。続いて、作成されたテストドライバが実行されて、テストの実行結果が集計される(ステップ605)。具体的には、カバレージ及び実行結果がテストデータに記載されている期待値通りのものが得られた割合(以下、「結果一致率」という。)が集計される。
Process Flow in Component Search Unit 111 As shown in FIG. 6, first, the component ID and source code storage information of the component registered in the component information database 105 using the category information received by the data reception function 107 as a key. Is acquired (step 601). Next, the source code of the part stored in the part configuration management repository 104 is acquired based on the source code storage information (step 602). Next, a test driver is created based on the acquired component source code and the test data acquired by the data receiving function 107 (step 604). Subsequently, the created test driver is executed and the test execution results are tabulated (step 605). Specifically, the ratios (hereinafter referred to as “result matching rate”) in which the coverage and execution results are as expected values described in the test data are totaled.

そして、テストの実行結果が集計された結果、カバレージ及び結果一致率がカバレージに対する閾値及び結果一致率に対する閾値をそれぞれ超えた場合(ステップ606)、当該条件の満たされている部品が開発者に提案される部品としてリストに追加される(ステップ607)。なお、ステップ604からステップ607までは、部品構成管理リポジトリ104から取得された部品の関数(メソッド等)の数だけ繰り返し実行される(ステップ603)。また、リストには、開発者に提案される部品とともに当該部品の部品ID、ファイル名、関数名、関数開始行、関数終了行、カバレージの結果、結果一致率等が記述される。関数開始行及び関数終了行はテストドライバ作成時にソースコードから抽出されるものである。   Then, as a result of the aggregation of the test execution results, when the coverage and the result matching rate exceed the threshold for the coverage and the threshold for the result matching rate (step 606), a component satisfying the condition is proposed to the developer. Is added to the list as a part to be processed (step 607). Steps 604 to 607 are repeatedly executed for the number of parts functions (methods, etc.) acquired from the part configuration management repository 104 (step 603). In addition, the part ID, file name, function name, function start line, function end line, coverage result, result matching rate, etc. of the part are described in the list together with the part proposed to the developer. The function start line and function end line are extracted from the source code when the test driver is created.

・部品情報表示部112における処理の流れについて
図7に示すように、まず、部品検索部111において提案された部品のリストが取得される(ステップ701)。次に、取得されたリストに記載されている部品IDをキーとして部品情報データベース105から提案された部品の依存するファイル及び部品の仕様格納情報が取得される(ステップ702)。続いて、取得された仕様格納情報に基づいて部品構成管理リポジトリ104から部品の仕様書に関する情報が取得される(ステップ703)。そして、提案された部品の依存するファイル名、仕様書の内容と部品のソースコードが提案部品表示画面300のファイルリスト301、提案部品仕様情報302、ソースビュー303にそれぞれ出力される(ステップ704)。なお、提案部品表示画面300に部品のファイル名等が出力される場合、リストに記述された関数開始行から関数終了行のソースコードはソースビュー303に、また関数の仕様情報は提案部品仕様情報302にそれぞれ表示される。
Process Flow in Component Information Display Unit 112 As shown in FIG. 7, first, a list of components proposed by the component search unit 111 is acquired (step 701). Next, the dependent file of the proposed component and the specification storage information of the component are acquired from the component information database 105 using the component ID described in the acquired list as a key (step 702). Subsequently, based on the acquired specification storage information, information related to the component specification is acquired from the component configuration management repository 104 (step 703). Then, the file name on which the proposed component depends, the contents of the specification, and the source code of the component are output to the file list 301, the proposed component specification information 302, and the source view 303 on the proposed component display screen 300, respectively (step 704). . When the file name of the component is output on the proposed component display screen 300, the source code from the function start line to the function end line described in the list is in the source view 303, and the function specification information is the proposed component specification information. 302 are displayed respectively.

・部品送信部113における処理の流れについて
開発者によって「ダウンロード」ボタン309が押下された場合には、図8に示すように、開発者端末101の提案部品表示画面300に表示されている部品の部品IDが取得される(ステップ801)。次に、取得された部品IDをキーとして部品情報データベース105から該当する部品の格納されている領域に関する情報、仕様書格納情報、テストデータ格納情報が取得される(ステップ802)。続いて、部品情報データベース105から取得されたこれら各情報に基づいて部品構成管理リポジトリ104から部品のソースコード、仕様書、テストデータに関する情報が取得される(ステップ803)。そして、部品構成管理リポジトリ104から取得された各ファイルは開発者端末101へと送信される(ステップ804)。開発者端末101へファイルを送信後、部品情報データベース105の使用頻度1507を更新する(ステップ805)。
Processing flow in the component sending unit 113 When the “download” button 309 is pressed by the developer, as shown in FIG. 8, the component displayed on the suggested component display screen 300 of the developer terminal 101 is displayed. A component ID is acquired (step 801). Next, using the acquired component ID as a key, information on the area where the corresponding component is stored, specification storage information, and test data storage information are acquired from the component information database 105 (step 802). Subsequently, based on these pieces of information acquired from the component information database 105, information regarding the source code, specifications, and test data of the component is acquired from the component configuration management repository 104 (step 803). Each file acquired from the component configuration management repository 104 is transmitted to the developer terminal 101 (step 804). After the file is transmitted to the developer terminal 101, the usage frequency 1507 of the component information database 105 is updated (step 805).

・解析部114における処理の流れについて
図9に示すように、まず、開発用構成管理リポジトリ102に格納されているソースコード、仕様書、テストデータが取得される(ステップ901)。次に、取得されたソースコードの凝集度が計算されるとともに(ステップ903)、ソースコードの結合度が計算される(ステップ904)。なお、前記ステップ903及びステップ904は取得されたソースコードの数だけ繰り返し実行される(ステップ902)。ステップ901で取得されるソースコード、仕様書、テストデータに関する情報は前回チェックされてから更新されたファイルが対象となる。また、凝集度や結合度は既存のツールを使用して計算される。
Process Flow in Analysis Unit 114 As shown in FIG. 9, first, source code, specifications, and test data stored in the development configuration management repository 102 are acquired (step 901). Next, the aggregation degree of the acquired source code is calculated (step 903), and the coupling degree of the source code is calculated (step 904). The steps 903 and 904 are repeatedly executed for the number of acquired source codes (step 902). Information relating to the source code, specifications, and test data acquired in step 901 is for files updated since the previous check. In addition, the degree of aggregation and the degree of binding are calculated using existing tools.

・部品候補決定部115における処理の流れについて
図10に示すように、まず、解析部114において計算された凝集度や結合度が取得されるとともに(ステップ1002)、取得された凝集度及び結合度が凝集度に対する閾値及び結合度に対する閾値をそれぞれ超えているか否かについて判定される(ステップ1003)。判定の結果、凝集度及び結合度がそれぞれの閾値を超えていた場合、部品構成管理リポジトリ104に格納されている部品の中に抽出された部品と類似している部品(類似部品数)がいくつあるかについての計算が実行される(ステップ1004)。また、部品の候補としてソースコードが抽出される(ステップ1005)。なお、ステップ1002からステップ1005までは開発用構成管理リポジトリ102に格納されている部品のうち、前回のチェックから更新された部品の数だけ繰り返し実行される(ステップ1001)。
Process Flow in Component Candidate Determining Unit 115 As shown in FIG. 10, first, the degree of aggregation and the degree of coupling calculated by the analyzing unit 114 are acquired (step 1002), and the degree of aggregation and the degree of coupling acquired are obtained. It is determined whether or not the threshold value exceeds the threshold value for the degree of aggregation and the threshold value for the degree of binding, respectively (step 1003). As a result of the determination, if the degree of aggregation and the degree of coupling exceed the respective thresholds, the number of parts similar to the extracted part (number of similar parts) among the parts stored in the part configuration management repository 104 A calculation is performed as to whether or not there is (step 1004). Further, a source code is extracted as a candidate for a part (step 1005). Steps 1002 to 1005 are repeatedly executed for the number of parts updated from the previous check among the parts stored in the development configuration management repository 102 (step 1001).

・図10における類似部品数の計算処理の流れについて
図11に示すように、まず、部品構成管理リポジトリ104に格納されているソースコードとテストデータが取得される(ステップ1101)。次に、部品の候補となったソースコードのテストデータ及び部品管理リポジトリ104から抽出されたソースコードに基づいてテストドライバが作成される(ステップ1104)。次に、部品管理リポジトリ104から抽出された部品のテストデータと部品の候補となるソースコードからテストドライバが作成される(ステップ1105)。続いて、ステップ1104で作成されたドライバによってテストが実行されるとともに(ステップ1106)、ステップ1105で作成されたドライバによってテストが実行される(ステップ1107)。そして、上記ステップ1106、1107で実行されたテストの結果に基づいて結果一致率が集計される(ステップ1108)。
-About the flow of the calculation process of the number of similar components in FIG. 10 As shown in FIG. 11, first, the source code and test data stored in the component configuration management repository 104 are acquired (step 1101). Next, a test driver is created based on the test data of the source code that is a candidate for the component and the source code extracted from the component management repository 104 (step 1104). Next, a test driver is created from the component test data extracted from the component management repository 104 and the source code that is a candidate for the component (step 1105). Subsequently, the test is executed by the driver created in Step 1104 (Step 1106), and the test is executed by the driver created in Step 1105 (Step 1107). Then, based on the results of the tests executed in the above steps 1106 and 1107, the result coincidence rates are totaled (step 1108).

そして、集計された結果一致率が、結果一致率に対する閾値を超えているか否かについて判定される(ステップ1109)。結果一致率が閾値を超えていた場合、部品管理リポジトリ104から抽出された部品と部品の候補とが類似する部品であると判断されて、部品情報データベース105に登録されている部品管理リポジトリ104から抽出された部品の部品IDをキーとして類似部品数の更新が行われる(ステップ1110)。なお、上記ステップ1104からステップ1110までの処理は部品構成管理リポジトリ104から取得した部品の関数(メソッド)数だけ繰り返し実行される(ステップ1103)。また、上記ステップ1103からステップ1110までの処理は部品候補のソースコード中の関数(メソッド)数だけ繰り返し実行される(ステップ1102)。ここで、部品検索部111で使用されている結果一致率の閾値と類似部品数の計算で使用されている閾値とは異なる値である。   Then, it is determined whether or not the aggregated result coincidence rate exceeds a threshold for the result coincidence rate (step 1109). If the result matching rate exceeds the threshold, it is determined that the component extracted from the component management repository 104 and the component candidate are similar components, and the component management repository 104 registered in the component information database 105 The number of similar parts is updated using the extracted part ID as a key (step 1110). Note that the processing from step 1104 to step 1110 is repeatedly executed for the number of parts functions (methods) acquired from the part configuration management repository 104 (step 1103). Further, the processing from step 1103 to step 1110 is repeatedly executed as many times as the number of functions (methods) in the part candidate source code (step 1102). Here, the threshold value of the result matching rate used in the component search unit 111 is different from the threshold value used in the calculation of the number of similar components.

・部品格納部116における処理の流れについて
図12に示すように、候補となる部品の部品ID、分類、概要、部品格納情報、仕様書格納情報、テストデータ格納情報、使用頻度、類似部品数、通知フラグ、関連ファイルの格納情報が部品情報データベース105に登録される(ステップ1201)。次に、部品情報データベース105に登録された候補となる部品のソースコード、仕様書、テストデータが部品構成管理リポジトリ104に格納される(ステップ1202)。なお、部品IDは、部品情報データベース105に登録される際に自動的に発番される。また、分類や概要に関する情報は、仕様書から抽出される。更に、通知フラグが部品情報データベース105に登録される際には、汎用化担当者へ通知が実行されるようにフラグが設定される。そして、部品構成管理リポジトリ104に格納されるファイルは部品IDの名前でフォルダが作成され、そのフォルダ内にソースコードフォルダ、仕様書フォルダ、テストデータフォルダがそれぞれ作成されることで管理を容易なものとしている。
Processing flow in the component storage unit 116 As shown in FIG. 12, the component ID, classification, summary, component storage information, specification storage information, test data storage information, usage frequency, number of similar components, The notification flag and the related file storage information are registered in the component information database 105 (step 1201). Next, source codes, specifications, and test data of candidate parts registered in the part information database 105 are stored in the part configuration management repository 104 (step 1202). The component ID is automatically issued when registered in the component information database 105. Information about classification and summary is extracted from specifications. Further, when the notification flag is registered in the component information database 105, the flag is set so that the generalization person is notified. The file stored in the component configuration management repository 104 is created with a folder with the name of the component ID, and a source code folder, a specification folder, and a test data folder are created in the folder to facilitate management. Yes.

・集計結果通知機能110における処理の流れについて
図13に示すように、まず、部品情報データベース105から部品ID、分類、概要、使用頻度、類似部品数に関する情報が取得される(ステップ1301)。次に、取得されたデータから、使用頻度及び類似部品数が使用頻度に対する閾値及び類似部品数に対する閾値をそれぞれ超えているものについて汎用候補とされる(ステップ1302)。続いて、集計結果のデータが汎用化担当者端末106に送信される(ステップ1303)。次に、ステップ1301で取得された部品の通知フラグを通知済みに設定するように部品情報データベース105の通知フラグが更新される(ステップ1304)。ここで、部品情報データベース105から取得される部品情報は汎用化担当者が前回集計結果を参照してから利用された部品及び新規に登録された部品が対象とされる。更に、前回チェックされた否かの判断については部品情報テーブルの通知フラグの情報から判断される。
Process Flow in Total Result Notification Function 110 As shown in FIG. 13, first, information on the component ID, classification, outline, usage frequency, and number of similar components is acquired from the component information database 105 (step 1301). Next, from the acquired data, those for which the usage frequency and the number of similar components exceed the threshold for the usage frequency and the threshold for the number of similar components are determined as general candidates (step 1302). Subsequently, the data of the aggregation result is transmitted to the generalization person in charge terminal 106 (step 1303). Next, the notification flag of the component information database 105 is updated so as to set the notification flag of the component acquired in step 1301 to “notified” (step 1304). Here, the component information acquired from the component information database 105 is targeted for components that have been used since the person in charge of generalization refers to the previous aggregation result and newly registered components. Further, whether or not the previous check has been made is determined from the information of the notification flag in the component information table.

なお、部品支援装置108の各機能で使用される、事前に結果一致率に対する閾値、カバレージに対する閾値、凝集度に対する閾値、結合度に対する閾値、使用頻度に対する閾値、類似部品数に対する閾値の設定が汎用化担当者によって部品支援装置108に対して事前に行われる。ここで、結果一致率に対する閾値は、開発者に部品の提案をするときに使用される閾値と類似部品数の計算で使用する閾値とがある。   In addition, the thresholds for the result matching rate, the threshold for coverage, the threshold for cohesion, the threshold for coupling degree, the threshold for usage frequency, and the threshold for the number of similar parts used in advance for each function of the component support apparatus 108 are universal. The component support apparatus 108 is performed in advance by the person in charge of conversion. Here, the threshold value for the result matching rate includes a threshold value used when proposing parts to the developer and a threshold value used in calculating the number of similar parts.

次に、部品の利用状況、新規に登録された部品の情報を通知する集計結果通知画面1400について説明する。
図14に示すように、集計結果通知画面1400には、汎用列1401、部品ID列1402、分類列1403、概要列1404、使用頻度列1405、類似部品数1406、集計結果日1407が表示される。汎用列1401には、部品が汎用的な部品であるか否かが表示される。部品ID列1402には、部品IDが表示される。分類列1403には、部品がどの分野の部品であるのかについての情報が表示される。概要列1404には、部品の概要が表示される。使用頻度列1405には、これまでに部品がどの程度使用されているのかについての情報が表示される。類似部品数1406には、部品構成管理リポジトリ105に当該部品と類似している部品が他にどのくらいあるのかについての情報が表示される。集計結果日1407には、集計結果が汎用化担当者に通知された日付が表示される。なお、これらの情報は、汎用化部品担当者が部品構成管理リポジトリ105に格納されている部品を整理する際の情報としても活用される。
Next, a summary result notification screen 1400 for notifying the usage status of components and information on newly registered components will be described.
As shown in FIG. 14, the general result column 1401, the component ID column 1402, the classification column 1403, the summary column 1404, the usage frequency column 1405, the number of similar components 1406, and the totalization result date 1407 are displayed on the aggregation result notification screen 1400. . The general-purpose column 1401 displays whether or not the part is a general-purpose part. The component ID column 1402 displays a component ID. In the classification column 1403, information about the field in which the part is a part is displayed. A summary column 1404 displays a summary of the part. The usage frequency column 1405 displays information on how much the component has been used so far. The number of similar parts 1406 displays information about how many other parts are similar to the part in the parts configuration management repository 105. The total result date 1407 displays the date when the generalization person was notified of the total result. These pieces of information are also used as information when the general-purpose component person in charge organizes the components stored in the component configuration management repository 105.

次に、部品情報データベース105に部品情報が格納される際の部品情報テーブル1500の構造について説明する。
図15に示すように、部品情報テーブル1500は、部品ID列1501、分類列1502、概要列1503、部品格納情報1504、仕様書格納情報1505、テストデータ格納情報1506、使用頻度列1507、類似部品数1508、通知フラグ1509で構成されている。部品ID列1501の欄には、各部品に固有の英数字からなるIDが表示されている。この部品ID1501は主キーであり、部品を登録する際に一意な値が自動的に発番される。分類列1502の欄には、どの分野で使用される部品であるのかについての情報が表示されている。概要列1503の欄には、部品の概要が表示されている。部品格納情報1504の欄には、部品のソースコードが部品構成管理リポジトリ104のどの場所に格納されているのかについての情報が表示されている。
Next, the structure of the component information table 1500 when the component information is stored in the component information database 105 will be described.
As shown in FIG. 15, the component information table 1500 includes a component ID column 1501, a classification column 1502, a summary column 1503, a component storage information 1504, a specification storage information 1505, a test data storage information 1506, a usage frequency column 1507, and a similar component. It consists of a number 1508 and a notification flag 1509. In the column of the component ID column 1501, an ID consisting of alphanumeric characters unique to each component is displayed. The component ID 1501 is a main key, and a unique value is automatically issued when registering a component. In the column of the classification column 1502, information on which field is used for the part is displayed. In the column of the summary column 1503, a summary of the parts is displayed. In the part storage information 1504 column, information about where the part source code is stored in the part configuration management repository 104 is displayed.

また、仕様書格納情報1505の欄には、部品の仕様書が部品構成管理リポジトリ104のどの場所に格納されているのかについての情報が表示されている。テストデータ格納情報1506の欄には、部品のテストデータが部品構成管理リポジトリ104のどの場所に格納されているのかについての情報が表示されている。使用頻度列1507の欄には、対応する部品がこれまでどの程度使用されているのかという情報が表示されている。類似部品数1508の欄には、部品構成管理リポジトリ104に当該部品と類似している部品が他にどの程度存在するのかについての情報が表示される。通知フラグ1509の欄には、集計結果通知機能110における部品の利用状況や新規登録部品の情報を汎用化担当者端末106へ通知するか否か判断するための情報が表示されている。   Also, in the column of specification storage information 1505, information about where in the component configuration management repository 104 the part specification is stored is displayed. In the column of test data storage information 1506, information about where the test data of the part is stored in the part configuration management repository 104 is displayed. The column of the usage frequency column 1507 displays information on how much the corresponding component has been used so far. In the column of the number of similar parts 1508, information on how many other parts similar to the part exist in the parts configuration management repository 104 is displayed. In the column of the notification flag 1509, information for determining whether or not to notify the generalization person in charge terminal 106 of the usage status of the component in the total result notification function 110 and information on the newly registered component is displayed.

次に、部品を実行するために必要となるファイルを登録するための部品関連ファイル情報テーブル1600の構造について説明する。
図16に示すように、部品関連ファイル情報テーブル1600は、部品ID列1601とファイル格納情報1602とで構成されている。部品ID列1601の欄には、各部品に固有の英数字からなるIDが表示されている。ファイル格納情報1602は、部品IDのファイルと依存関係のあるファイルが部品構成管理リポジトリ104のどの場所に格納されているのかについての情報が表示されている。なお、部品関連ファイル情報テーブル1600においては、部品ID列1601とファイル格納情報列1602とが主キーとなっている。
Next, the structure of the component-related file information table 1600 for registering files necessary for executing components will be described.
As illustrated in FIG. 16, the component-related file information table 1600 includes a component ID column 1601 and file storage information 1602. In the column of the component ID column 1601, an ID consisting of alphanumeric characters unique to each component is displayed. The file storage information 1602 displays information about where in the component configuration management repository 104 a file having a dependency relationship with the component ID file is stored. In the component-related file information table 1600, a component ID column 1601 and a file storage information column 1602 are main keys.

以上のように、本実施の形態のソフトウェア部品再利用支援システムによれば、次のような効果がある。
○部品支援装置103における部品提案機能108によって開発者の必要としている部品を提案することができる。また、部品支援装置103では、開発者端末101から受信したデータと開発用構成管理リポジトリ102に格納されているテストデータとに基づいて部品構成管理リポジトリ104に格納されている部品群から開発者の要求を満足する部品が検索されるため、開発者は、当該部品が開発者の要求を満たし得る部品であるか否かを容易に認識することができる。
As described above, the software component reuse support system of the present embodiment has the following effects.
The parts required by the developer can be proposed by the parts proposal function 108 in the parts support apparatus 103. In addition, the component support apparatus 103 uses the component group stored in the component configuration management repository 104 based on the data received from the developer terminal 101 and the test data stored in the development configuration management repository 102 as the developer's. Since the parts satisfying the requirements are searched, the developer can easily recognize whether or not the parts can satisfy the requirements of the developer.

○開発者によって作成されて開発用構成管理リポジトリ102に格納されているソースコードが部品として使用可能か否かを判断し、部品として使用可能なソースコードであった場合には、当該ソースコードを抽出して部品構成管理リポジトリ104に部品として蓄積することができる。
○部品情報テーブル1500における使用頻度列1507の欄には対応する部品がこれまでどの程度使用されているのかという情報が表示される。したがって、現在、どのような分野の部品が普及しているかという情報を把握することができる。
○ It is determined whether or not the source code created by the developer and stored in the development configuration management repository 102 is usable as a part. If the source code is usable as a part, the source code is It can be extracted and stored as a part in the part configuration management repository 104.
In the column of the usage frequency column 1507 in the component information table 1500, information on how much the corresponding component has been used is displayed. Therefore, it is possible to grasp information on what kind of field is currently used.

本発明の実施形態の一例を示すシステム構成図。The system block diagram which shows an example of embodiment of this invention. 開発者からの部品提案に関する情報を入力する部品検索依頼画面。Parts search request screen for inputting information related to parts proposals from developers. 開発者に提案される部品のソースコード等を表示する提案部品表示画面。Proposed component display screen that displays the source code of the component proposed to the developer. 部品支援装置103における処理の概要を示すフローチャート。5 is a flowchart showing an outline of processing in the component support apparatus 103; データ受信機能107の処理の流れを示すフローチャート。The flowchart which shows the flow of a process of the data reception function 107. FIG. 部品検索部111の処理の流れを示すフローチャート。The flowchart which shows the flow of a process of the components search part 111. FIG. 部品情報表示部112の処理の流れを示すフローチャート。The flowchart which shows the flow of a process of the components information display part 112. FIG. 部品送信部113の処理の流れを示すフローチャート。The flowchart which shows the flow of a process of the components transmission part 113. FIG. 解析部114の処理の流れを示すフローチャート。The flowchart which shows the flow of a process of the analysis part 114. FIG. 部品候補決定部115の処理の流れを示すフローチャート。The flowchart which shows the flow of a process of the component candidate determination part 115. FIG. 図10における類似部品数の計算の処理の流れを示すフローチャート。11 is a flowchart showing a flow of processing for calculating the number of similar parts in FIG. 10. 部品格納部116の処理の流れを示すフローチャート。The flowchart which shows the flow of a process of the components storage part. 集計結果通知機能110の流れを示すフローチャート。The flowchart which shows the flow of the total result notification function 110. FIG. 部品の利用状況、新規登録された部品の情報を通知する集計結果通知画面。A summary result notification screen that notifies the usage status of parts and information on newly registered parts. 部品情報テーブルの構造。Part information table structure. 部品関連ファイル情報テーブルの構造。Structure of part related file information table.

符号の説明Explanation of symbols

101 開発者端末
102 開発用構成管理リポジトリ
103 部品支援装置
104 部品構成管理リポジトリ
105 部品情報データベース
106 汎用化担当者端末
107 データ受信機能
108 部品提案機能
109 部品収集機能
110 集計結果通知機能
111 部品検索部
112 部品情報表示部
113 部品送信部
114 解析部
115 部品候補決定部
116 部品格納部

DESCRIPTION OF SYMBOLS 101 Developer terminal 102 Configuration management repository 103 Development component support apparatus 104 Parts configuration management repository 105 Parts information database 106 Generalization person in charge terminal 107 Data reception function 108 Parts proposal function 109 Parts collection function 110 Aggregation result notification function 111 Parts search part 112 Component information display unit 113 Component transmission unit 114 Analysis unit 115 Component candidate determination unit 116 Component storage unit

Claims (5)

開発者が要求するソフトウェア部品のカテゴリ情報を入力する機能及び前記ソフトウェア部品のカテゴリ情報を送信する機能を有する開発者端末と、
前記開発者によって作成された前記ソフトウェア部品のソースコード、仕様書、テストデータに関する情報を格納する開発用構成管理リポジトリと、
前記開発者端末から送信された情報を受信するデータ受信機能及び前記開発者が要求するソフトウェア部品を検索して提案する部品提案機能及び前記前記開発用構成管理リポジトリからソフトウェア部品となるソースコードを収集する部品収集機能を備えた部品支援装置と、
前記ソフトウェア部品のソースコード、仕様書、テストデータに関する情報を格納する部品構成管理リポジトリと、
前記ソフトウェア部品の利用状況やソフトウェア部品の格納情報を格納する部品情報データベースと
を備えたソフトウェア部品再利用支援システムであって、
前記部品支援装置における部品提案機能は、
前記開発者端末から送信されたカテゴリ情報及び前記開発用構成管理リポジトリに格納されている開発者が要求するソフトウェア部品のテストデータから、前記開発者の要求を満たすソフトウェア部品を検索する部品検索部と、
該部品検索部によって検索されたソフトウェア部品のソースコード、仕様情報、関連ファイルに関する情報を表示する部品情報表示部と、
該部品情報表示部に表示されている情報のソフトウェア部品を前記開発者端末に送信する部品送信部と
を備えており、
前記部品収集機能は、
前記開発用構成管理リポジトリに格納されているソフトウェア部品のソースコードを解析ツールで解析する解析部と、
該解析部で解析された情報からソフトウェア部品として利用可能であるか否かを判断する部品候補決定部と、
該部品候補決定部で決定されたソフトウェア部品及び部品情報を前記部品構成管理リポジトリ及び前記部品情報データベースにそれぞれ格納する部品格納部と
を備えることを特徴とするソフトウェア部品再利用支援システム。
A developer terminal having a function of inputting category information of a software component requested by a developer and a function of transmitting category information of the software component;
A configuration management repository for development that stores information on source code, specifications, test data of the software parts created by the developer;
Data reception function for receiving information transmitted from the developer terminal, part proposal function for searching and proposing software parts requested by the developer, and source code to be software parts collected from the development configuration management repository A component support device having a component collection function
A component configuration management repository for storing information on the source code, specifications, and test data of the software component;
A software component reuse support system comprising a component information database for storing usage status of software components and storage information of software components,
The component proposal function in the component support device is
A component search unit for searching for software components satisfying the developer's request from the category information transmitted from the developer terminal and the test data of the software component requested by the developer stored in the development configuration management repository; ,
A component information display unit for displaying information related to the source code, specification information, and related files of the software component searched by the component search unit;
A component transmission unit that transmits software components of information displayed on the component information display unit to the developer terminal;
The parts collection function is
An analysis unit for analyzing the source code of the software component stored in the development configuration management repository with an analysis tool;
A component candidate determination unit that determines whether or not the information can be used as a software component from the information analyzed by the analysis unit;
A software component reuse support system comprising a component storage unit that stores software components and component information determined by the component candidate determination unit in the component configuration management repository and the component information database, respectively.
前記ソフトウェア部品再利用支援システムは、更に前記部品支援装置から前記ソフトウェア部品の利用状況に関する情報及び新規登録情報を受信して、これらの情報に基づいて前記部品構成管理リポジトリに格納されているソフトウェア部品の管理を行う汎用化担当者端末を備えており、
前記部品支援装置は、前記ソフトウェア部品の利用状況や新規登録部品に関する情報を前記汎用化部品担当者端末へ通知する集計結果通知機能を更に備えることを特徴とする請求項1に記載のソフトウェア部品再利用支援システム。
The software component reuse support system further receives information on the usage status of the software component and new registration information from the component support device, and stores the software component stored in the component configuration management repository based on these information It has a general-purpose person in charge terminal that manages
2. The software component re-use according to claim 1, wherein the component support apparatus further includes a total result notification function for notifying the general-purpose component person-in-charge terminal of information regarding the usage status of the software component and newly registered components. Use support system.
前記部品検索部は、開発者から送信されるソフトウェア部品のカテゴリ情報、テストデータに基づいて前記部品構成管理リポジトリから前記開発者が要求するソフトウェア部品に類似するソフトウェア部品を検索することを特徴とする請求項1又は請求項2に記載のソフトウェア部品再利用支援システム。 The component retrieval unit retrieves a software component similar to the software component requested by the developer from the component configuration management repository based on category information and test data of the software component transmitted from the developer. The software component reuse support system according to claim 1 or 2. 前記部品検索部は、前記開発者が要求するソフトウェア部品に類似するソフトウェア部品を検索する際に、前記テストデータ及び前記部品構成管理リポジトリに格納されているソフトウェア部品のソースコードに基づいてテストドライバを作成し、該テストドライバを実行させることによりカバレージ及びテストデータの期待値に対してテスト結果の一致している割合を示す結果一致率を算出し、前記カバレージ及び結果一致率が前記カバレージに対する閾値及び前記結果一致率に対する閾値をそれぞれ超えているか否かを判断し、閾値を超えた場合には類似するソフトウェア部品であると判定することを特徴とする請求項3に記載のソフトウェア部品再利用支援システム。 When searching for a software component similar to the software component requested by the developer, the component search unit selects a test driver based on the test data and the source code of the software component stored in the component configuration management repository. Generating and executing a test driver to calculate a result matching rate indicating a ratio of the test result to the coverage and the expected value of the test data, the coverage and the result matching rate being a threshold value for the coverage and 4. The software component reuse support system according to claim 3, wherein it is determined whether or not a threshold for the result matching rate is exceeded, and if the threshold is exceeded, it is determined that the software component is a similar software component. . 前記部品収集機能は、前記開発用構成管理リポジトリに格納されているソースコードを解析して、ソースコードの凝集度、結合度からソースコードがソフトウェア部品として使用可能であるか否かを判断し、前記ソースコードがソフトウェア部品として使用可能であると判断した場合には、前記ソフトウェア部品のソースコード、仕様書、テストデータに関する情報を前記開発用構成管理リポジトリから抽出して前記部品構成管理リポジトリに格納することを特徴とする請求項1乃至請求項4のうち何れか一項に記載のソフトウェア部品再利用支援システム。
The component collection function analyzes the source code stored in the configuration management repository for development, determines whether the source code can be used as a software component from the aggregation degree and coupling degree of the source code, If it is determined that the source code can be used as a software component, information on the source code, specifications, and test data of the software component is extracted from the development configuration management repository and stored in the component configuration management repository The software component reuse support system according to any one of claims 1 to 4, wherein the software component reuse support system is provided.
JP2006217157A 2006-08-09 2006-08-09 Software parts reuse support system Expired - Fee Related JP4846483B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006217157A JP4846483B2 (en) 2006-08-09 2006-08-09 Software parts reuse support system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006217157A JP4846483B2 (en) 2006-08-09 2006-08-09 Software parts reuse support system

Publications (2)

Publication Number Publication Date
JP2008040969A JP2008040969A (en) 2008-02-21
JP4846483B2 true JP4846483B2 (en) 2011-12-28

Family

ID=39175868

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006217157A Expired - Fee Related JP4846483B2 (en) 2006-08-09 2006-08-09 Software parts reuse support system

Country Status (1)

Country Link
JP (1) JP4846483B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5236564B2 (en) * 2009-04-20 2013-07-17 株式会社日立製作所 Software reuse support method and apparatus
JP2015161982A (en) * 2014-02-26 2015-09-07 日本電気株式会社 Information processing apparatus for supporting software development, development support method, and program therefor

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11338686A (en) * 1998-05-28 1999-12-10 Fujitsu Ltd Program development support apparatus, program development support method, and recording medium recording program development support program
JP2003202983A (en) * 2002-01-08 2003-07-18 Chubu Electric Power Co Inc Software component management method and management system
JP2004078796A (en) * 2002-08-22 2004-03-11 Fujitsu Ltd Distributed information service generation system and information service generation method
JP2004252512A (en) * 2003-02-18 2004-09-09 Hitachi Ltd Program component search method and apparatus

Also Published As

Publication number Publication date
JP2008040969A (en) 2008-02-21

Similar Documents

Publication Publication Date Title
JP6010796B2 (en) Information processing apparatus, information processing system, and program
JP4936028B2 (en) Information providing support device and information providing support method
CN102193970B (en) Know the search engine of metadata
CN110362601B (en) Metadata standard mapping method, device, equipment and storage medium
EP1411448A2 (en) Data searching apparatus
US20060259867A1 (en) System and method for automatic generation of browsing favorites
CN101622598A (en) Electronic content classification
US20110208715A1 (en) Automatically mining intents of a group of queries
JPWO2018011895A1 (en) Data processing flow management system and method
CN111159590A (en) Serial connection method and device based on front-end and back-end service call links
CN111062736A (en) Model training and clue sequencing method, device and equipment
CN104933171B (en) Interest point data association method and device
KR20170044408A (en) System and method for recommending project
EP1898348A1 (en) Task search apparatus, task search method, and storage medium
JP2009110220A (en) Audit log collection / evaluation system, audit log collection / evaluation method, and collection / evaluation computer
JP2010282241A (en) File management device, file management system, file management method, and program
JP4846483B2 (en) Software parts reuse support system
Rahman et al. Toward optimal selection of information retrieval models for software engineering tasks
JP5587744B2 (en) Program component search method, program component search system, and component search program
JP4786998B2 (en) Software reuse parts management system
KR20160041277A (en) Apparatus and method for recommending technical cooperation partner
JP2013080465A (en) Associative memory technology in intelligence analysis and course-of-action development
JP5640700B2 (en) Information search device, search input method, and search input program
JP2006268690A (en) Faq presentation/improvement method, faq presentation/improvement device and faq presentation/improvement program
JP2008242811A (en) Software component source code generation system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090120

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110921

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: 20111011

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111012

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141021

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees