JP5800657B2 - Software reuse support apparatus, software reuse support method, and program - Google Patents

Software reuse support apparatus, software reuse support method, and program Download PDF

Info

Publication number
JP5800657B2
JP5800657B2 JP2011219637A JP2011219637A JP5800657B2 JP 5800657 B2 JP5800657 B2 JP 5800657B2 JP 2011219637 A JP2011219637 A JP 2011219637A JP 2011219637 A JP2011219637 A JP 2011219637A JP 5800657 B2 JP5800657 B2 JP 5800657B2
Authority
JP
Japan
Prior art keywords
mapping
processing
source code
software
source
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.)
Active
Application number
JP2011219637A
Other languages
Japanese (ja)
Other versions
JP2013080355A (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2011219637A priority Critical patent/JP5800657B2/en
Publication of JP2013080355A publication Critical patent/JP2013080355A/en
Application granted granted Critical
Publication of JP5800657B2 publication Critical patent/JP5800657B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、ソフトウェア部品の再利用を支援するソフトウェア再利用支援装置、ソフトウェア再利用支援方法、及び、プログラムに関する。   The present invention relates to a software reuse support apparatus, a software reuse support method, and a program that support software component reuse.

ソフトウェアの生産性を向上させるために、既存のソフトウェアを再利用して新規のソフトウェアを開発する手法が知られている。   In order to improve the productivity of software, a technique for developing new software by reusing existing software is known.

例えば、特許文献1には、ソフトウェアを部品化してライブラリに登録し、ソースコードを再利用する際に、ライブラリから必要なソフトウェア部品を検出して使用することを特徴とするソフトウェア開発支援方法について記載されている。   For example, Patent Document 1 describes a software development support method characterized in that when software is converted into parts and registered in a library and the source code is reused, necessary software parts are detected from the library and used. Has been.

特開平5−108319号公報JP-A-5-108319

特許文献1に記載のソフトウェア開発支援方法では、ソフトウェアのソースコードを再利用するために、所定のルールに基づいた特別なコーディングをする必要がある。そのため、プログラム開発者は自由にコーディングすることができず、コーディングに手間がかかる。また、特別なコーディングがされていないソースコードの場合、ライブラリに登録できないため、再利用することができなかった。   In the software development support method described in Patent Document 1, in order to reuse the software source code, it is necessary to perform special coding based on a predetermined rule. For this reason, the program developer cannot freely code, and coding takes time. Also, source code that has not been specially coded cannot be reused because it cannot be registered in the library.

本発明は、上記実情に鑑みてなされたものであり、特別なコーディングがされていないソースコードの再利用を支援するソフトウェア再利用支援装置、ソフトウェア再利用支援方法、及び、プログラムを提供することを目的とする。   The present invention has been made in view of the above circumstances, and provides a software reuse support apparatus, a software reuse support method, and a program that support the reuse of source code that is not specially coded. Objective.

上記目的を達成するため、本発明のソフトウェア再利用支援装置は、
ソフトウェアを部品化したソフトウェア部品の機能を実現するための典型的な処理の内容を示す処理内容情報と見出語とが対応付けられたテンプレートデータを記憶するテンプレート記憶手段と、
前記ソフトウェア部品に対応するソースコード内から前記見出語を検出し、検出した見出語を含む部分と前記テンプレートデータ内で該見出語に対応付けられている処理内容情報とをマッピングし、マッピングした結果を保持するマッピングテーブルを作成する処理・ソースマッピング手段と、
前記マッピングテーブルを参照して、前記ソースコードの所定部分と該所定部分に対応する処理内容情報とを、両者の対応関係がわかるように表示する処理・ソースマッピング結果表示手段と、
を備えることを特徴とする。
In order to achieve the above object, the software reuse support apparatus of the present invention provides:
Template storage means for storing template data in which processing content information indicating the content of typical processing for realizing the function of a software component obtained by converting software into a component and a headword are associated;
Detecting the headword from the source code corresponding to the software component, mapping a portion including the detected headword and processing content information associated with the headword in the template data; Processing / source mapping means to create a mapping table to hold the mapped results;
Processing / source mapping result display means for referring to the mapping table and displaying the predetermined part of the source code and the processing content information corresponding to the predetermined part so that the correspondence between them can be understood;
It is characterized by providing.

本発明によれば、特別なコーディングがされていないソースコードの再利用を支援することが可能となる。   According to the present invention, it is possible to support the reuse of source code that has not been specially coded.

本発明の第1の実施形態に係るソフトウェア再利用支援装置の物理的な構成を示す図である。It is a figure which shows the physical structure of the software reuse assistance apparatus which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るソフトウェア再利用支援装置の機能構成図である。It is a functional block diagram of the software reuse assistance apparatus which concerns on the 1st Embodiment of this invention. テンプレートデータの構成を示す図である。It is a figure which shows the structure of template data. 辞書DBに登録されるデータの例を示す図である。It is a figure which shows the example of the data registered into dictionary DB. 処理・ソースマッピング処理の動作を説明するためのフローチャートである。It is a flowchart for demonstrating operation | movement of a process and a source mapping process. ソースコードの例を示す図である。It is a figure which shows the example of a source code. 対応付処理の動作を説明するためのフローチャートである。It is a flowchart for demonstrating the operation | movement of a matching process. マッピングテーブルの例を示す図である。It is a figure which shows the example of a mapping table. 対応付編集画面の例を示す図である。It is a figure which shows the example of a corresponding edit screen. ユーザからの更新の操作によって修正された後のマッピングテーブルの例を示す図である。It is a figure which shows the example of the mapping table after correcting by update operation from a user. データシート・ソースマッピング処理の動作を説明するためのフローチャートである。It is a flowchart for demonstrating operation | movement of a data sheet source mapping process. データシート参照画面の例を示す図である。It is a figure which shows the example of a data sheet reference screen. 本発明の第2の実施形態に係るソフトウェア再利用支援装置の機能構成図である。It is a functional block diagram of the software reuse assistance apparatus which concerns on the 2nd Embodiment of this invention. 仕様書・ソースマッピング処理の動作を説明するためのフローチャートである。It is a flowchart for demonstrating operation | movement of a specification / source mapping process. 仕様書マッピングテーブルの例を示す図である。It is a figure which shows the example of a specification mapping table. 仕様書更新支援処理の動作を説明するためのフローチャートである。It is a flowchart for demonstrating operation | movement of a specification update support process. 仕様書参照画面の例を示す図である。It is a figure which shows the example of a specification reference screen.

以下、本発明の各実施形態について、図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付す。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In the drawings, the same or corresponding parts are denoted by the same reference numerals.

<<第1の実施形態>>
本発明の第1の実施形態に係るソフトウェア再利用支援装置100について説明する。このソフトウェア再利用支援装置100は、既存のソフトウェア部品(ソフトウェアモジュール)を再利用できるように、ソフトウェア部品に対応するソースコードの所定部分と、この部分に対応する処理の内容を示す処理内容情報とを対応付ける。さらに、ソフトウェア再利用支援装置100は、ソフトウェア部品の適用対象となるデバイスのデータシートの各項目(セクション)と、ソフトウェア部品に対応するソースコードの部分とを対応付ける。
<< first embodiment >>
The software reuse support apparatus 100 according to the first embodiment of the present invention will be described. The software reuse support apparatus 100 is configured so that an existing software component (software module) can be reused, a predetermined portion of source code corresponding to the software component, and processing content information indicating the content of the processing corresponding to this portion. Associate. Further, the software reuse support apparatus 100 associates each item (section) of the data sheet of the device to which the software component is applied with the portion of the source code corresponding to the software component.

ソフトウェア再利用支援装置100は、物理的には、図1に示すように、通信部11と、入力部12と、出力部13と、記憶部14と、入出力I/F部15と、制御部16と、を備える。各部はバス17を介して互いに接続されている。   As shown in FIG. 1, the software reuse support apparatus 100 physically includes a communication unit 11, an input unit 12, an output unit 13, a storage unit 14, an input / output I / F unit 15, and a control. Unit 16. Each unit is connected to each other via a bus 17.

通信部11は、通信ネットワーク2を介して、ネットワーク2上の図示せぬ情報処理装置等と通信を行うものであり、通信インタフェース等を備える。例えば、通信部11は、再利用の対象とするソフトウェア部品に対応するソースコード、ソフトウェア部品の適用対象であるデバイスのデータシート、及び、ソースコードの仕様書等を、これらネットワーク2上の情報処理装置から受信する。   The communication unit 11 communicates with an information processing apparatus (not shown) on the network 2 via the communication network 2 and includes a communication interface and the like. For example, the communication unit 11 processes the source code corresponding to the software component to be reused, the data sheet of the device to which the software component is applied, the specification of the source code, and the like on the network 2. Receive from the device.

操作部12は、ソフトウェア再利用支援装置100に様々な情報を入力するために使用するものであり、ボタン、キー等の入力装置を備える。   The operation unit 12 is used to input various information to the software reuse support apparatus 100, and includes input devices such as buttons and keys.

表示部13は、様々な情報を出力するものであり、ディスプレイ等の表示装置を備える。   The display unit 13 outputs various information and includes a display device such as a display.

記憶部14は、様々な情報やプログラム等を記憶するものであり、ハードディスク等の補助記憶装置を備える。   The storage unit 14 stores various information, programs, and the like, and includes an auxiliary storage device such as a hard disk.

入出力I/F部15は、入出力機器3を接続するためのインタフェースである。例えば、処理の対象となるソースコードを、通信部11ではなく、入出力I/F部15を介して、CD−ROMドライブ等の入出力機器3から取り込むこともできる。   The input / output I / F unit 15 is an interface for connecting the input / output device 3. For example, the source code to be processed can be fetched from the input / output device 3 such as a CD-ROM drive via the input / output I / F unit 15 instead of the communication unit 11.

制御部16は、データの演算処理を行うと共に、バス17を介して通信部11、操作部12、出力部13、記憶部14、入出力I/F部15を制御するものであり、CPU(Central Processing Unit)16a、ROM(Read Only Memory)16b、RAM(Random Access Memory)16c等を備える。制御部16における演算処理及び制御処理は、具体的には、CPU16aが、RAM16cを作業領域として使用して各種データを一時的に記憶させながら、ROM16bに記憶されている制御プログラムを実行することにより行われる。   The control unit 16 performs calculation processing of data and controls the communication unit 11, the operation unit 12, the output unit 13, the storage unit 14, and the input / output I / F unit 15 via the bus 17. A central processing unit (16a), a read only memory (ROM) 16b, a random access memory (RAM) 16c, and the like are provided. Specifically, the arithmetic processing and control processing in the control unit 16 are performed by the CPU 16a executing a control program stored in the ROM 16b while temporarily storing various data using the RAM 16c as a work area. Done.

ソフトウェア再利用支援装置100は、機能的には、図2に示すように、テンプレート格納部101と、辞書DB(データベース)102と、処理・ソースマッピング部103と、処理・ソースマッピング結果表示部104と、データシート・ソースマッピング部105と、データシート・ソースマッピング結果表示部106と、を備える。なお、これらの各構成要素は、図1に示した制御部16が、同じく図1に示した通信部11、操作部12、出力部13、記憶部14、又は入出力I/F部15を制御することにより実現される。   Functionally, the software reuse support apparatus 100 includes a template storage unit 101, a dictionary DB (database) 102, a processing / source mapping unit 103, and a processing / source mapping result display unit 104, as shown in FIG. And a data sheet / source mapping unit 105 and a data sheet / source mapping result display unit 106. Note that the control unit 16 illustrated in FIG. 1 includes the communication unit 11, the operation unit 12, the output unit 13, the storage unit 14, or the input / output I / F unit 15 illustrated in FIG. It is realized by controlling.

テンプレート格納部101には、タイマやLANドライバやシリアルドライバ等の機能を有するソフトウェア部品の種類毎に、ソフトウェア部品の機能を実現するための典型的な実装方法(処理や手順の内容や順番)が記述されたテンプレートデータ107が格納される。   The template storage unit 101 has a typical mounting method (contents and order of processing and procedures) for realizing the function of the software component for each type of software component having functions such as a timer, a LAN driver, and a serial driver. Described template data 107 is stored.

テンプレートデータ107の構成例を図3に示す。テンプレートデータ107は、条件部1071とデータ部1072とから構成される。
条件部1071は、このテンプレートデータ107が適用されるソフトウェア部品(ソースコード)の実装の条件を示すデータである。具体的には、条件部1071は、H/W(ハードウェア)型番、機能、方式等のソフトウェア部品の属性を示す項目とその値とから構成される。
データ部1072は、条件部1071が示す条件に合致するソフトウェア部品の典型的な実装方法が記載されたデータである。具体的には、データ部1072は、処理(ソースコード内の関数に相当)の内容がテキスト形式で記載された処理データと、処理毎の手順がテキスト形式で記載された手順データとを含んで構成される。なお、処理データの先頭のアルファベット(a)〜(e)は、処理の順番を示したものであり、この順番で、処理データに対応する処理(関数)がソースコード内に記載されることを示す。また、手順データの先頭の番号(1)〜(3)は、処理(関数)内で実施される手順の順番を示したものであり、この順番で、手順データに対応する手順がソースコードの処理(関数)内に記載されることを示す。
さらに、処理データと手順データとには、辞書DB102を参照して関連語を検出するためのキーワードとなる見出語が設定されている。
A configuration example of the template data 107 is shown in FIG. The template data 107 includes a condition part 1071 and a data part 1072.
The condition part 1071 is data indicating a condition for mounting the software component (source code) to which the template data 107 is applied. Specifically, the condition unit 1071 includes items indicating values of software components such as H / W (hardware) model number, function, and method, and their values.
The data part 1072 is data describing a typical mounting method of software components that meet the conditions indicated by the condition part 1071. Specifically, the data portion 1072 includes processing data in which the content of processing (corresponding to a function in the source code) is described in a text format, and procedure data in which a procedure for each processing is described in a text format. Composed. Note that the alphabets (a) to (e) at the beginning of the processing data indicate the processing order. In this order, the processing (function) corresponding to the processing data is described in the source code. Show. In addition, the numbers (1) to (3) at the beginning of the procedure data indicate the order of procedures executed in the process (function), and in this order, the procedure corresponding to the procedure data is the source code. Indicates that it is described in the process (function).
Further, in the processing data and the procedure data, a headword that is a keyword for detecting a related word with reference to the dictionary DB 102 is set.

図2に戻り、辞書DB102には、テンプレートデータ107で定義されている見出語とその見出語に関連する関連語とが対応付けられて格納される。辞書DB102に登録されるデータの例を図4に示す。例えば、図4の先頭のエントリから、見出語「LAN」の関連語は、「lan」、「ether」」、「ethernet」、「net」等であることがわかる。   Returning to FIG. 2, the dictionary DB 102 stores the headword defined in the template data 107 and the related word related to the headword in association with each other. An example of data registered in the dictionary DB 102 is shown in FIG. For example, it can be seen from the top entry in FIG. 4 that the related words of the headword “LAN” are “lan”, “ether”, “ethernet”, “net”, and the like.

図2に戻り、処理・ソースマッピング部103は、テンプレート格納部101に格納されているテンプレートデータ107と辞書DB102とを参照して、ソフトウェア部品に対応するソースコード内の所定部分とこの部分に対応した処理の内容を示す情報(処理データ、手順データ)とをマッピングし(対応付け)、マッピングした結果をマッピングテーブル108として出力する。   Returning to FIG. 2, the processing / source mapping unit 103 refers to the template data 107 stored in the template storage unit 101 and the dictionary DB 102, and corresponds to a predetermined portion in the source code corresponding to the software component and this portion. Information (processing data, procedure data) indicating the content of the processed processing is mapped (associated), and the mapping result is output as a mapping table 108.

処理・ソースマッピング結果表示部104は、マッピングテーブル108等を参照して、ソースコードの所定部分と、この所定部分に対応する処理内容情報との対応関係がユーザにわかり、且つ、ユーザがその対応関係を編集(修正)することができるような対応付編集画面を作成して表示する。   The processing / source mapping result display unit 104 refers to the mapping table 108 and the like so that the user can know the correspondence between the predetermined portion of the source code and the processing content information corresponding to the predetermined portion, and the user can handle the correspondence. Create and display an associated editing screen that allows you to edit (correct) relationships.

データシート・ソースマッピング部105は、マッピングテーブル108と辞書DB102とを参照して、ソースコードの所定部分と、この所定部分に対応するデータシートの部分(セクション)とをマッピングする(対応付ける)。   The data sheet / source mapping unit 105 refers to the mapping table 108 and the dictionary DB 102 and maps (associates) a predetermined portion of the source code with a portion (section) of the data sheet corresponding to the predetermined portion.

なお、ここでいうデータシートとは、ソフトウェア部品が適用されるデバイスの特徴や仕様等が記載されている電子化されているドキュメントデータを示す。データシートには、番号と見出しが付されたセクション毎に、デバイスに関する情報が記載されている。なお、データシートはXML(Extensible Markup Language)等のマークアップ言語で記載されており、ソフトウェア開発支援装置100は、データシート内のセクションの構成を認識することができる。例えば、ソフトウェア開発支援装置100は、データシート内の特定のセクション部分のみを取得して表示することが可能である。   Note that the data sheet here refers to electronic document data in which the characteristics and specifications of the device to which the software component is applied are described. The data sheet contains information about the device for each section with a number and a heading. The data sheet is described in a markup language such as XML (Extensible Markup Language), and the software development support apparatus 100 can recognize the configuration of sections in the data sheet. For example, the software development support apparatus 100 can acquire and display only a specific section portion in the data sheet.

データシート・ソースマッピング結果表示部106は、データシート・ソースマッピング部105がマッピングしたソースコードの所定部分とデータシートの所定部分(セクション)との対応関係をユーザが参照可能に表示する。   The data sheet / source mapping result display unit 106 displays the correspondence between the predetermined part of the source code mapped by the data sheet / source mapping unit 105 and the predetermined part (section) of the data sheet so that the user can refer to it.

続いて、ソフトウェア再利用支援装置100の動作について説明する。   Next, the operation of the software reuse support apparatus 100 will be described.

(処理・ソースマッピング処理)
始めに、ソフトウェアーモジュールのソースコードの所定部分と、この部分に対応する処理の内容を示す情報(処理データおよび手順データ)とをマッピングし、その結果をユーザが編集可能に表示する処理・ソースマッピング処理について、図5のフローチャートを参照して説明する。
(Processing / source mapping processing)
First, a process / source that maps a predetermined part of the source code of the software module and information (processing data and procedure data) indicating the contents of the process corresponding to this part and displays the result in an editable manner by the user The mapping process will be described with reference to the flowchart of FIG.

ユーザは、操作部12を操作して、処理・ソースマッピング処理開始用の所定の画面を表示部1312に表示させる。そして、ユーザは、操作部12を操作して、この画面上から、処理の対象とするソースコードの指定と、テンプレートデータ107を検索するための条件とを入力する。ここでは、指定したソースコードに対応したソフトウェア部品のテンプレートデータ107を検出するための検出条件を入力するのが望ましい。例えば、UART(Universal Asynchronous Receiver Transmitter)方式のマイコンのシリアル通信機能に関するソフトウェア部品に対応するソースコードを処理対象として指定する場合、テンプレートデータ107の検索条件として、H/W型番「マイコンA」、機能「シリアル通信」、方式「UART」等と入力すればよい。処理・ソースマッピング部103は、この入力操作に応答して、テンプレート格納部101に記憶されているテンプレートデータ107の条件部1071を検索し、入力された検索条件に合致するテンプレートデータ107を検出する(ステップS11)。   The user operates the operation unit 12 to display a predetermined screen for starting the processing / source mapping process on the display unit 1312. Then, the user operates the operation unit 12 to input a source code to be processed and a condition for searching the template data 107 from this screen. Here, it is desirable to input a detection condition for detecting the template data 107 of the software component corresponding to the designated source code. For example, when a source code corresponding to a software component related to a serial communication function of a UART (Universal Asynchronous Receiver Transmitter) microcomputer is designated as a processing target, the H / W model number “microcomputer A”, function, What is necessary is just to input "serial communication", system "UART", etc. In response to this input operation, the processing / source mapping unit 103 searches the condition unit 1071 of the template data 107 stored in the template storage unit 101 and detects the template data 107 that matches the input search condition. (Step S11).

続いて、処理・ソースマッピング部103は、検出したテンプレートデータ107の記載を参照して、指定したソースコードの各部分と、各部分に対応した処理データ、手順データとを対応付ける対応付処理を行う(ステップS12)。   Subsequently, the processing / source mapping unit 103 refers to the description of the detected template data 107 and performs an associating process for associating each part of the designated source code with the processing data and procedure data corresponding to each part. (Step S12).

ここで、対応付処理(ステップS12)の詳細について、図6に示すソースコードを処理対象とした場合を例に、図7のフローチャートを用いて説明する。図6に示すソースコードは、C言語で記述されており、「sio_init()」、「port_open()」、「sio_putchar()」、「sio_getchar()」、「sio_getchar_err()」、「sio_send_frame()」の6つの関数から構成されている。なお、ソースコードの各行の左側の数字は行番号であり、以下の説明を容易にするために便宜的に付したものである。また、このソースコードに対するテンプレートデータ107として、図3に示すテンプレートデータ107が検出されているものとする。また、辞書DB102には、図4に示す情報が格納されているものとする。   Here, the details of the association processing (step S12) will be described with reference to the flowchart of FIG. 7, taking as an example the case where the source code shown in FIG. The source code shown in FIG. 6 is written in C language, and “sio_init ()”, “port_open ()”, “sio_putchar ()”, “sio_getchar ()”, “sio_getchar_err ()”, “sio_send_frame ()” "Is composed of six functions. Note that the numbers on the left side of each line of the source code are line numbers, and are attached for convenience in order to facilitate the following description. Further, it is assumed that the template data 107 shown in FIG. 3 is detected as the template data 107 for the source code. Further, it is assumed that the information shown in FIG. 4 is stored in the dictionary DB 102.

まず、処理・ソースマッピング部103は、検出したテンプレートデータ107と辞書DB102とを参照して、指定したソースコードに含まれる関数と、該関数の処理内容を示す処理データとを対応付ける(ステップS121)。   First, the processing / source mapping unit 103 refers to the detected template data 107 and the dictionary DB 102 and associates the function included in the designated source code with the processing data indicating the processing content of the function (step S121). .

具体的には、まず、処理・ソースマッピング部103は、ソースコード内の関数の関数名やコメントから関連語を検出する。そして、処理・ソースマッピング部103は、辞書DB102を参照して、検出した関連語の見出語を検出する。そして、処理・ソースマッピング部103は、検出した見出語と一致する見出語を有する処理データをテンプレートデータ107から検出し、この関数と対応付ければよい。または、関数間の呼出関係を考慮して、呼出元の関数と同じ処理データを呼出先の関数に対応付けてもよい。また、ソースコード内での関数の出現する順番と、テンプレートデータ107に記載されている処理の順番とに基づいて、関数名を対応付けてもよい。   Specifically, first, the processing / source mapping unit 103 detects a related word from the function name or comment of the function in the source code. Then, the processing / source mapping unit 103 refers to the dictionary DB 102 and detects a headword of the detected related word. Then, the processing / source mapping unit 103 may detect processing data having a headword that matches the detected headword from the template data 107 and associate it with this function. Alternatively, in consideration of the call relationship between functions, the same processing data as the call source function may be associated with the call destination function. Further, the function names may be associated with each other based on the order in which the functions appear in the source code and the order of processing described in the template data 107.

例えば、図3に示すテンプレートデータ107のデータ部1072に記載されている処理データ「初期化」には、見出語「初期化」が設定されている。そして、図4に示す辞書DB102には、見出語「初期化」の関連語として、「初期化」、「init」、「 initialization」、「 set」、「 設定」が定義されている。従って、処理・ソースマッピング部103は、図6に示すソースコードに記載されている関数のうちで、関数名にこれらの関連語のうちの「init」を含む関数「sio_init()」に、処理データ「初期化」を対応付ける。なお、関数「sio_init()」がソースコード内で最初に記載されている関数であることを理由に、テンプレートデータ107の記載内での最初の処理データである「初期化」を対応付けてもよい。また、この関数「sio_init()」は、9行目で関数「port_open()」を呼び出している。従って、処理・ソースマッピング部103は、関数「port_open()」にも、呼出元の関数と同じ処理データ「初期化」を対応付ける。   For example, the headword “initialization” is set in the processing data “initialization” described in the data portion 1072 of the template data 107 shown in FIG. In the dictionary DB 102 shown in FIG. 4, “initialization”, “init”, “initialization”, “set”, and “setting” are defined as related words of the headword “initialization”. Therefore, the processing / source mapping unit 103 processes the function “sio_init ()” including “init” among these related words in the function name among the functions described in the source code shown in FIG. Correspond the data "initialization". Note that “initialization” that is the first processing data in the description of the template data 107 may be associated with the function “sio_init ()” because it is the first function described in the source code. Good. The function “sio_init ()” calls the function “port_open ()” on the ninth line. Therefore, the processing / source mapping unit 103 associates the function “port_open ()” with the same processing data “initialization” as that of the calling function.

また、図3に示すテンプレートデータ107に記載されている処理データ「1バイト送信」には、見出語「送信」、「バイト」が設定されている。また、図4に示す辞書DB102には、見出語「送信」の関連語として、「送信」、「 sd」、「 snd」、「 send」、「 out」、「 put」が定義されている。また、見出語「バイト」の関連語として、「バイト」、「 byte」、「 char」が定義されている。従って、処理・ソースマッピング部103は、これらの各関連語「put」と「char」とを関数名に含む図6に示すソースコード内の関数「sio_putchar()」に、処理データ「1バイト送信」を対応付ける。   Further, the headwords “transmission” and “byte” are set in the processing data “1-byte transmission” described in the template data 107 shown in FIG. Further, in the dictionary DB 102 shown in FIG. 4, “send”, “sd”, “snd”, “send”, “out”, and “put” are defined as related words of the headword “send”. . Further, “byte”, “byte”, and “char” are defined as related words of the headword “byte”. Therefore, the processing / source mapping unit 103 transmits the processing data “1 byte” to the function “sio_putchar ()” in the source code shown in FIG. 6 including these related words “put” and “char” in the function name. ].

以下同様に、処理・ソースマッピング部103は、関数「sio_getchar()」に処理データ「1バイト受信」を、関数「sio_getchar_err()」に処理データ「1バイト受信エラー」を、関数「sio_send_frame()」に処理データ「1フレーム送信」を、それぞれ対応付ける。   Similarly, the processing / source mapping unit 103 sets the processing data “1 byte reception” to the function “sio_getchar ()”, the processing data “1 byte reception error” to the function “sio_getchar_err ()”, and the function “sio_send_frame ()”. Is associated with processing data “1 frame transmission”.

図7に戻り、ステップS121の処理が終了すると、処理・ソースマッピング部103は、検出したテンプレートデータ107と辞書DB102とを参照して、各関数内の手順と、該手順の内容を示す手順データとを対応付ける(ステップS122)。具体的には、処理・ソースマッピング部103は、関数内の手順の記載や付されているコメントに含まれる関連語に対応する見出語が、テンプレートデータ107の見出語と一致する手順データを、この手順と対応付ければよい。または、手順間の呼出関係を考慮して、呼出元の手順と同じ手順データを呼出先の手順に対応付けてもよい。また、関数内での手順の順番と、テンプレートデータ107に記載されている手順の順番とに基づいて、手順データを対応付けてもよい。   Returning to FIG. 7, when the process of step S <b> 121 ends, the processing / source mapping unit 103 refers to the detected template data 107 and the dictionary DB 102, and the procedure data indicating the procedure in each function and the contents of the procedure. Are associated with each other (step S122). Specifically, the processing / source mapping unit 103 includes procedure data in which the headword corresponding to the related word included in the description of the procedure in the function or the attached comment matches the headword in the template data 107. May be associated with this procedure. Alternatively, in consideration of the calling relationship between procedures, the same procedure data as the calling source procedure may be associated with the calling destination procedure. Further, the procedure data may be associated based on the order of the procedures in the function and the order of the procedures described in the template data 107.

例えば、図3に示すテンプレートデータ107から、処理データ「初期化」には、手順データ「割込禁止設定」、「レジスタ設定」、「割込許可設定」が順番に対応付けられていることがわかる。また、これらの手順データのうち手順データ「割込禁止設定」には、見出語「割込」が設定されている。そして、図4に示す辞書DB102には、辞書見出「割込」の関連語の1つとして「intr」が設定されている。従って、処理・ソースマッピング部103は、処理データ「初期化」が対応付けられている図6に示すソースコードに含まれる関数「sio_init()」内の手順のうち、この関連語「init」を含む3行目の手順「set_intr_off();」に、手順データ「割込禁止設定」を対応付ける。なお、手順データ「割込許可設定」の見出語も「割込」であるが、「set_intr_off();」は関数内での最初の手順であるため、テンプレートデータ107内での記載順が最初の手順データ「割込禁止設定」が割り当てられる。   For example, from the template data 107 shown in FIG. 3, the process data “initialization” is associated with procedure data “interrupt prohibition setting”, “register setting”, and “interrupt permission setting” in order. Recognize. Of these procedure data, the entry data “interrupt” is set in the procedure data “interrupt prohibition setting”. In the dictionary DB 102 shown in FIG. 4, “intr” is set as one of the related words of the dictionary heading “interrupt”. Therefore, the processing / source mapping unit 103 uses the related word “init” in the procedure in the function “sio_init ()” included in the source code shown in FIG. 6 associated with the processing data “initialization”. The procedure data “interrupt prohibition setting” is associated with the procedure “set_intr_off ();” on the third line. Note that the headword of the procedure data “interrupt permission setting” is also “interrupt”, but “set_intr_off ();” is the first procedure in the function, so the order of description in the template data 107 is The first procedure data “interrupt prohibition setting” is assigned.

また、図3に示すテンプレートデータ107から、手順データ「レジスタ設定」には、見出語「レジスタ」が設定されていることごわかる。また、図4に示す辞書DB102には、見出語「レジスタ」の関連語として「レジスタ」が設定されている。従って、処理データ「初期化」が対応付けられている図6に示すソースコードに含まれる関数「sio_init()」内で、この関連語「レジスタ」をコメントに含む5〜7行目にかけての3つの手順「SCR = INIT_SIR_INIT;」「SMR = 0x00;」「BRR = BRR_115200;」それぞれに、手順データ「レジスタ設定」が対応付けられる。   Further, it can be seen from the template data 107 shown in FIG. 3 that the headword “register” is set in the procedure data “register setting”. In the dictionary DB 102 shown in FIG. 4, “register” is set as a related word of the headword “register”. Accordingly, in the function “sio_init ()” included in the source code shown in FIG. 6 with which the processing data “initialization” is associated, 3 to the 5th to 7th lines including the related word “register” in the comment. The procedure data “register setting” is associated with each of the two procedures “SCR = INIT_SIR_INIT;”, “SMR = 0x00;”, and “BRR = BRR_115200;”.

同様に、見出語「割込」の関連語「intr」を含み、関数「sio_init()」内での処理が最後である11行目の手順「set_intr_on();」には、図3に示すテンプレートデータ107を参照して、手順データ「割込許可設定」が対応付けられる。   Similarly, the procedure “set_intr_on ();” on the 11th line including the related word “intr” of the headword “interrupt” and the last processing in the function “sio_init ()” is shown in FIG. The procedure data “interrupt permission setting” is associated with reference to the template data 107 shown.

なお、関数「sio_init()」内の9行目の手順「port_open();」には、コメント部分も含めて辞書DB102に登録されている関連語は含まれていないものの、前後の手順に対応付けられた手順データの順番と、テンプレートデータ107に記憶されている手順データの順番とに基づいて、「レジスタ設定」か「割込許可設定」の何れかの手順データが対応付けられる。ここでは、手順「port_open();」に手順データ「割込許可設定」が対応付けられたものとする。   Note that the procedure “port_open ();” on the ninth line in the function “sio_init ()” does not include the related words registered in the dictionary DB 102 including the comment part, but corresponds to the procedure before and after. Based on the order of the attached procedure data and the order of the procedure data stored in the template data 107, any procedure data of “register setting” or “interrupt permission setting” is associated. Here, it is assumed that the procedure data “interrupt permission setting” is associated with the procedure “port_open ();”.

以下、図6に示すソースコードの他の関数についても、同様に、関数内の手順と、テンプレートデータ107に記載されている手順データとを対応付ける処理が行われる。   Hereinafter, for other functions of the source code shown in FIG. 6, similarly, a process of associating the procedure in the function with the procedure data described in the template data 107 is performed.

図7に戻り、ステップS122の処理が終了すると、処理・ソースマッピング部103は、ステップS121とステップS122との処理で、ソースコードの部分と処理内容を示す処理内容情報(処理データ、手順データ)とを対応付けた結果を保持するマッピングテーブル108を作成して、対応するソフトウェア部品(ソースコード)と関連付けて記憶部14に保存する(ステップS123)。   Returning to FIG. 7, when the processing of step S122 is completed, the processing / source mapping unit 103 performs processing content information (processing data, procedure data) indicating the portion of the source code and the processing content in the processing of step S121 and step S122. Is created and stored in the storage unit 14 in association with the corresponding software component (source code) (step S123).

図8は、図6に示すソースコードの処理(関数)のうち、処理データ「初期化」に対応付けられている関数部分のマッピングテーブル108の例を示す図である。図8では、XMLの形式でマッピングテーブル108が作成されている。具体的には、「mapping_item」タグで指定した処理データ「初期化」と、「func_name」タグで指定した関数「sio_init」、「port_open」とが対応付けられている。また、「proc_name」タグで指定した手順データ「割込禁止設定」、「レジスタ設定」、「割込許可設定」と、直後の「source_code_line」タグで指定したソースコードの部分(行数)とが、「proc_item」タグにより対応付けられている。以上で対応付処理は終了する。   FIG. 8 is a diagram illustrating an example of the mapping table 108 of the function portion associated with the processing data “initialization” in the processing (function) of the source code illustrated in FIG. 6. In FIG. 8, the mapping table 108 is created in the XML format. Specifically, the processing data “initialization” specified by the “mapping_item” tag is associated with the functions “sio_init” and “port_open” specified by the “func_name” tag. Also, the procedure data “interrupt disable setting”, “register setting”, “interrupt enable setting” specified by the “proc_name” tag and the source code part (number of lines) specified by the “source_code_line” tag immediately after , “Proc_item” tag. Thus, the association process ends.

図5に戻り、対応付処理が終了すると、処理・ソースマッピング結果表示部104は、作成されたマッピングテーブル108と、このマッピングテーブル108に対応するソースコードとを合成した対応付編集画面を作成し、表示部13に表示する(ステップS13)。   Returning to FIG. 5, when the association processing is completed, the processing / source mapping result display unit 104 creates an association editing screen in which the created mapping table 108 and the source code corresponding to the mapping table 108 are combined. Is displayed on the display unit 13 (step S13).

ユーザは、対応付編集画面からソースコードの所定部分と、この部分に対応する処理内容情報との対応関係を把握するとともに、対応関係に誤りがある場合に操作部12を操作してこの対応関係を修正するための操作を行う。処理・ソースマッピング結果表示部104は、この操作に応答して、修正された内容に基づいてマッピングテーブル108を更新する(ステップS14)。   The user grasps the correspondence between the predetermined part of the source code and the processing content information corresponding to this part from the editing screen for correspondence, and operates the operation unit 12 when there is an error in the correspondence. Perform an operation to correct. In response to this operation, the processing / source mapping result display unit 104 updates the mapping table 108 based on the modified content (step S14).

図9に、図8に示すマッピングテーブル108と、それに対応する図7に示すソースコードの一部とを合成して作成された対応付編集画面の例を示す。ソースコード内の関数の右側には、マッピングテーブル108によって対応付けられている処理データが表示される。また、関数内の各処理の右側には、マッピングテーブル108によって対応付けられている手順データが表示される。また、処理データ、及び、手順データの表示の右側の三角形をクリックすることにより、プルダウンメニューでテンプレートデータ107に記述されている他の処理データや手順データを選択することができ、処理・ソースマッピング結果表示部104は、選択した内容に応じて、マッピングテーブル108を修正する。   FIG. 9 shows an example of a correspondence editing screen created by synthesizing the mapping table 108 shown in FIG. 8 and the corresponding part of the source code shown in FIG. The processing data associated with the mapping table 108 is displayed on the right side of the function in the source code. In addition, procedure data associated with the mapping table 108 is displayed on the right side of each process in the function. Also, by clicking the triangle on the right side of the display of processing data and procedure data, other processing data and procedure data described in the template data 107 can be selected from the pull-down menu. The result display unit 104 modifies the mapping table 108 according to the selected content.

例えば、ユーザは、図9に示す対応付編集画面の9行目の手順「port_open();」の右側の表示「割込許可設定」の右側の三角形をクリックして、手順データを「割込許可設定」から「レジスタ設定」に更新する操作を行う。この操作に応答して、処理・ソースマッピング結果表示部104は、手順「port_open();」に対応付けられる手順データが「割込許可設定」から「レジスタ設定」になるようにマッピングテーブル108を更新する。さらに、処理・ソースマッピング結果表示部104は、関数「port_open();」から呼ばれる17行目と18行目の手順に対応付けられる手順データも「割込許可設定」から「レジスタ設定」に更新する。これらの更新操作によって修正されたマッピングテーブル108の一部を図10に示す。   For example, the user clicks the triangle on the right side of the display “interrupt permission setting” on the right side of the procedure “port_open ();” on the 9th line of the correspondence editing screen shown in FIG. An operation to update from “permission setting” to “register setting” is performed. In response to this operation, the processing / source mapping result display unit 104 sets the mapping table 108 so that the procedure data associated with the procedure “port_open ();” changes from “interrupt permission setting” to “register setting”. Update. Further, the processing / source mapping result display unit 104 also updates the procedure data associated with the procedures on the 17th and 18th lines called from the function “port_open ();” from “interrupt permission setting” to “register setting”. To do. A part of the mapping table 108 corrected by these update operations is shown in FIG.

このように、処理・ソースマッピング処理により、ソースコード内の各部分と、対応する処理の内容を示す処理内容情報(処理データ、手順データ)とがマッピングされる。以上で処理・ソースマッピング処理は終了する。   In this way, each part in the source code and the process content information (process data, procedure data) indicating the content of the corresponding process are mapped by the process / source mapping process. Thus, the processing / source mapping processing ends.

(データシート・ソースマッピング処理)
続いて、ソフトウェア部品に対応するソースコードと、該ソフトウェア部品の適用対象であるデバイスのデータシートの記載とをマッピングするデータシート・ソースマッピング処理について、図11のフローチャートを参照して説明する。なお、事前に処理・ソースマッピング処理が実行されて、マッピングテーブル108が作成されているものとする。
(Datasheet / source mapping process)
Next, a data sheet / source mapping process for mapping the source code corresponding to the software component and the description of the data sheet of the device to which the software component is applied will be described with reference to the flowchart of FIG. It is assumed that the mapping table 108 has been created by executing processing / source mapping processing in advance.

ユーザは、操作部12を操作して、データシート・ソースマッピング処理開始用の所定の画面を表示部13に表示させる。ユーザは、操作部12を操作して、この画面上から、対応付けの対象とするソースコードとデータシートとを指定する。データシート・ソースマッピング部105は、この入力操作に応答して、指定されたソースコードに対応するマッピングテーブル108と、指定されたデータシートとを取得する(ステップS21)。なお、H/W(ハードウェア)型番、機能、方式等といったソフトウェア部品の属性値の条件を指定して、その条件に合致するソフトウェア部品に対応するソースコードを取得してもよい。   The user operates the operation unit 12 to display a predetermined screen for starting the data sheet / source mapping process on the display unit 13. The user operates the operation unit 12 to specify a source code and a data sheet to be associated from this screen. In response to this input operation, the data sheet / source mapping unit 105 acquires the mapping table 108 corresponding to the designated source code and the designated data sheet (step S21). It is also possible to specify the condition values of the software component attribute values such as H / W (hardware) model number, function, method, etc., and obtain the source code corresponding to the software component that matches the conditions.

続いて、データシート・ソースマッピング部105は、取得したマッピングテーブル108等を参照して、指定したソースコード内の各手順と、取得したデータシート内の各セクションとを対応付ける(ステップS22)。   Subsequently, the data sheet / source mapping unit 105 refers to the acquired mapping table 108 and the like, and associates each procedure in the designated source code with each section in the acquired data sheet (step S22).

具体的には、データシート・ソースマッピング部105は、取得したマッピングテーブル108を参照して、ソースコード内の所定の手順に対応付けられている手順データを検出する。続いて、データシート・ソースマッピング部105は、テンプレートデータ107を参照して検出した手順データの見出語を検出するとともに、辞書DB102を参照してその関連語を検出する。そして、データシート・ソースマッピング部105は、取得したデータシート内で、検出した関連語が所定数以上記載されているセクション(章、節、項、目等)の識別子である番号を、この所定の手順が記載されているソースコード内での位置(行数)と対応付ければよい。なお、データシート・ソースマッピング部105は、検出した関連語のセクション内での密度(セクション全体の単語数に対する関連語の割合)が所定値以上あるセクションの番号や、検出した関連語を見出しに含むセクションの番号を、この所定の手順が記載されているソースコード内での位置(行数)と対応付けてもよい。   Specifically, the data sheet / source mapping unit 105 refers to the acquired mapping table 108 and detects procedure data associated with a predetermined procedure in the source code. Subsequently, the data sheet / source mapping unit 105 detects the headword of the procedure data detected with reference to the template data 107 and also detects the related word with reference to the dictionary DB 102. Then, the data sheet / source mapping unit 105 assigns a number that is an identifier of a section (chapter, section, item, eye, etc.) in which the detected related words are described in a predetermined number or more in the acquired data sheet. This may be associated with the position (number of lines) in the source code in which the above procedure is described. The data sheet / source mapping unit 105 uses the number of a section in which the density of related words detected in the section (the ratio of the related words to the total number of words in the entire section) exceeds a predetermined value, and the detected related words as a headline. The number of the section to be included may be associated with the position (number of lines) in the source code where the predetermined procedure is described.

続いて、データシート・ソースマッピング結果表示部106は、ソースコード内の各手順から対応するデータシートのセクション部分を参照可能な図12に示すようなデータシート参照画面を作成して、表示部13に表示させる(ステップS23)。   Subsequently, the data sheet / source mapping result display unit 106 creates a data sheet reference screen as shown in FIG. 12 in which the section portion of the corresponding data sheet can be referred from each procedure in the source code, and the display unit 13 Is displayed (step S23).

図12に示すデータシート参照画面上からソースコード内の各手順の右側の参照ボタンをクリックする操作に応答して、データシート・ソースマッピング結果表示部106は、この手順に対応するデータシートのセクション部分をポップアップ表示する。例えば、図12に示すように、3行目の手順「set_intr_off();」の右側の参照ボタンをクリックすると、割込設定について記載されているデータシートのセクション部分がポップアップ表示される。以上で、データシート・ソースマッピング処理は終了する。   In response to the operation of clicking the reference button on the right side of each procedure in the source code on the data sheet reference screen shown in FIG. 12, the data sheet / source mapping result display unit 106 displays the section of the data sheet corresponding to this procedure. Pop up the part. For example, as shown in FIG. 12, when the reference button on the right side of the procedure “set_intr_off ();” on the third line is clicked, a section portion of the data sheet describing the interrupt setting is popped up. This completes the data sheet / source mapping process.

このように、本実施形態では、テンプレートデータ107に記載されたソフトウェア部品の実装の方法(パターン)に合うようにソースコードを解析して、ソースコード内の処理と、該処理に対応する処理内容情報(処理データ、手順データ)とをマッピングし、その結果を表示する。従って、ユーザは、特別なコーディングがされていないソースコードであっても、ソースコードと処理内容との関係を容易に把握することができ、ソースコードの保守性を高めて、ソースコードの再利用を支援することが可能となる。
特に、ハードウェアを制御するドライバの機能のように、典型的な実装パターンを持つソフトウェア部品に対応するソースコードは、テンプレートデータ107に沿った形でコーディングされている可能性が高いため、本発明をより好適に適用可能である。
As described above, in the present embodiment, the source code is analyzed so as to match the method (pattern) for mounting the software component described in the template data 107, the processing in the source code, and the processing content corresponding to the processing Map information (process data, procedure data) and display the result. Therefore, even if the source code is not specially coded, the user can easily grasp the relationship between the source code and the processing contents, improve the maintainability of the source code, and reuse the source code. Can be supported.
In particular, since the source code corresponding to the software component having a typical mounting pattern, such as the function of the driver that controls the hardware, is likely to be coded along the template data 107, the present invention Can be more suitably applied.

また、本実施形態では、ソースコードと処理とをマッピングした結果を、ユーザが修正可能に表示する。従って、表示された対応関係に誤りがある場合、ユーザは即座に修正を行うことができる。これにより、例えば、処理とソースコードとをマッピングした結果をソースコードの移植や改修の作業等に利用する場合に、参照データとしての正確さを向上させることが可能になる。   In this embodiment, the result of mapping the source code and the process is displayed so that the user can correct it. Therefore, if there is an error in the displayed correspondence relationship, the user can make corrections immediately. As a result, for example, when the result of mapping processing and source code is used for source code transplantation or modification work, the accuracy as reference data can be improved.

また、本実施形態では、辞書DB102を参照して検出した関連語を用いてソースコードと処理とのマッピングを行う。従って、表記の揺れや、関数の命名の慣用的な複数のパターンに対応した、より正確な処理とソースコードとの対応付けが可能になる。   In the present embodiment, the source code and the process are mapped using the related words detected with reference to the dictionary DB 102. Accordingly, it is possible to more accurately associate the processing with the source code corresponding to the fluctuation of the notation and the conventional patterns of function naming.

さらに、本実施形態では、マッピングデータ107には、処理内用情報(処理データ、手順データ)が実行される順番を示す情報も併せて記憶されており、処理内容情報の実行順とソースコード内での対応部分の出現順とがなるべく一致するようにマッピングが実施される。従って、マッピングの精度をより向上させることが可能になる。   Furthermore, in this embodiment, the mapping data 107 also stores information indicating the order in which the in-process information (process data, procedure data) is executed. The mapping is performed so that the appearance order of the corresponding parts in FIG. Therefore, the mapping accuracy can be further improved.

また、本実施形態では、ソフトウェア部品に対応するソースコードの部分と、このソフトウェアを適用対象とするデバイスのデータシートの部分(セクション)とを対応付けて参照可能に表示する。これにより、既存のソフトウェア部品(ソースコード)を新規のデバイスに移植する際等に、ユーザは、この新規のデバイスのデータシートと既存のソースコードとの対応関係を即時に把握することができるため、効率よく移植作業を行うことが可能になる。   In the present embodiment, the source code portion corresponding to the software component and the data sheet portion (section) of the device to which the software is applied are displayed in association with each other. As a result, when the existing software component (source code) is ported to a new device, the user can immediately grasp the correspondence between the data sheet of the new device and the existing source code. It becomes possible to perform the transplantation work efficiently.

<<第2の実施形態>>
第1の実施形態に係るソフトウェア開発支援装置200では、ソフトウェア部品を使用するデバイスのデータシートの部分(セクション)と、ソフトウェア部品に対応するソースコードの部分とを対応付けた。これに対し、第2の実施形態に係るソフトウェア開発支援装置200は、ソースコードと仕様書との間で、対応する部分同士を対応付けることを特徴とする。さらに、第2の実施形態に係るソフトウェア開発支援装置200は、この対応付けした結果を利用して、ソースコードが変更された際に、仕様書の変更作業を支援する処理を行う。
<< Second Embodiment >>
In the software development support apparatus 200 according to the first embodiment, the data sheet portion (section) of the device that uses the software component is associated with the source code portion corresponding to the software component. On the other hand, the software development support apparatus 200 according to the second embodiment is characterized in that corresponding portions are associated with each other between the source code and the specification. Furthermore, the software development support apparatus 200 according to the second embodiment performs a process of supporting specification change work when the source code is changed using the associated result.

なお、ここでいう仕様書とは、ソフトウェア開発者等によって作成、参照される、ソースコードの処理や機能の仕様が記載されている電子化されているドキュメントデータを示す。仕様書には、番号と見出しが付されたセクション毎に、見出しに対応した内容のソースコードの仕様が記載されている。なお、仕様書はXML(Extensible Markup Language)等のマークアップ言語で記載されており、ソフトウェア開発支援装置200は、仕様書内のセクションの構成を認識することができる。例えば、ソフトウェア開発支援装置100は、仕様書内の特定のセクション部分のみを取得して表示することが可能である。   Note that the specification here refers to digitized document data in which specifications of source code processing and functions are created and referenced by a software developer or the like. In the specification, for each section with a number and a heading, the specification of the source code having contents corresponding to the heading is described. The specifications are described in a markup language such as XML (Extensible Markup Language), and the software development support apparatus 200 can recognize the configuration of the sections in the specifications. For example, the software development support apparatus 100 can acquire and display only a specific section portion in the specification document.

第2の実施形態に係るソフトウェア開発支援装置200の機能構成図を図13に示す。なお、第1の実施形態に係るソフトウェア開発支援装置100と同じ構成については、同じ参照符号を付し、その部分の説明は省略する。第2の実施形態に係るソフトウェア開発支援装置200は、第1の実施形態に係るソフトウェア開発支援装置100と比べて、データシート・ソースマッピング部105とデータシート・ソースマッピング結果表示部106とが無く、仕様書・ソースマッピング部109と仕様書変更候補表示部110とを備える。   FIG. 13 shows a functional configuration diagram of the software development support apparatus 200 according to the second embodiment. Note that the same components as those in the software development support apparatus 100 according to the first embodiment are denoted by the same reference numerals, and description thereof is omitted. The software development support apparatus 200 according to the second embodiment does not have the data sheet / source mapping unit 105 and the data sheet / source mapping result display unit 106 as compared with the software development support apparatus 100 according to the first embodiment. A specification / source mapping unit 109 and a specification change candidate display unit 110.

仕様書・ソースマッピング部109は、マッピングテーブル108と辞書DB102とを参照して、ソースコードの所定部分と、この所定部分に対応する仕様書の部分(セクション)とをマッピングし、マッピングした結果を仕様書マッピングテーブル111として出力する。   The specification / source mapping unit 109 refers to the mapping table 108 and the dictionary DB 102, maps a predetermined part of the source code and a part (section) of the specification corresponding to the predetermined part, and displays the mapping result. Output as the specification mapping table 111.

仕様書変更候補表示部110は、ソースコードが変更された際に、仕様書マッピングテーブル111等を参照して、ソースコードの変更された部分に対応する仕様書のセクション部分を、修正を要する候補として表示する。   The specification change candidate display unit 110 refers to the specification mapping table 111 or the like when the source code is changed, and the candidate of the specification part corresponding to the changed part of the source code needs to be corrected. Display as.

続いて、ソフトウェア再利用支援装置200の動作について説明する。
なお、処理・ソースマッピング処理については、第1の実施形態と同様な処理が行われるため説明を省略する。
Next, the operation of the software reuse support apparatus 200 will be described.
Note that the processing and source mapping processing are the same as those in the first embodiment, and thus description thereof is omitted.

(仕様書・ソースマッピング処理)
続いて、ソースコードと、該ソースコードの仕様書とをマッピングする仕様書・ソースマッピング処理について、図14のフローチャートを参照して説明する。なお、事前に処理・ソースマッピング処理が実行されて、マッピングテーブル108が作成されているものとする。
(Specification / source mapping process)
Next, a specification / source mapping process for mapping the source code and the specification of the source code will be described with reference to the flowchart of FIG. It is assumed that the mapping table 108 has been created by executing processing / source mapping processing in advance.

ユーザは、操作部12を操作して、仕様書・ソースマッピング処理開始用の所定の画面を表示部13に表示させる。ユーザは、操作部12を操作して、この画面上から、対応付けの対象とするソースコードとその仕様書とを指定する。仕様書・ソースマッピング部109は、この入力操作に応答して、指定されたソースコードに対応するマッピングテーブル108と、指定された仕様書とを取得する(ステップS31)。なお、H/W(ハードウェア)型番、機能、方式等といったソフトウェア部品の属性値の条件を指定して、その条件に合致するソフトウェア部品に対応するソースコードを取得してもよい。   The user operates the operation unit 12 to display a predetermined screen for starting the specification / source mapping process on the display unit 13. The user operates the operation unit 12 to specify the source code to be matched and its specification from this screen. In response to this input operation, the specification / source mapping unit 109 acquires the mapping table 108 corresponding to the specified source code and the specified specification (step S31). It is also possible to specify the condition values of the software component attribute values such as H / W (hardware) model number, function, method, etc., and obtain the source code corresponding to the software component that matches the conditions.

続いて、仕様書・ソースマッピング部109は、取得したマッピングテーブル108を参照して、指定したソースコード内の各手順と、取得した仕様書内の各セクションとを対応付ける(ステップS32)。   Subsequently, the specification / source mapping unit 109 refers to the acquired mapping table 108 and associates each procedure in the designated source code with each section in the acquired specification (step S32).

具体的には、仕様書・ソースマッピング部109は、取得したマッピングテーブル108を参照して、ソースコード内の所定の手順に対応付けられている手順データを検出する。続いて、仕様書・ソースマッピング部109は、テンプレートデータ107を参照して検出した手順データの見出語を検出するとともに、辞書DB102を参照してその関連語を検出する。そして、仕様書・ソースマッピング部109は、取得した仕様書内で、検出した関連語が所定数以上記載されているセクション(章、節、項、目等)の識別子である番号を、この所定の手順が記載されているソースコード内での位置(行数)と対応付ければよい。なお、仕様書・ソースマッピング部109は、検出した関連語のセクション内での密度(セクション全体の単語数に対する関連語の割合)が所定値以上あるセクションの番号や、検出した関連語を見出しに含むセクションの番号を、この所定の手順が記載されているソースコード内での位置(行数)と対応付けてもよい。   Specifically, the specification / source mapping unit 109 refers to the acquired mapping table 108 and detects procedure data associated with a predetermined procedure in the source code. Subsequently, the specification / source mapping unit 109 detects the headword of the procedure data detected with reference to the template data 107 and also detects the related word with reference to the dictionary DB 102. Then, the specification / source mapping unit 109 assigns a number that is an identifier of a section (chapter, section, item, eye, etc.) in which the detected related words are described in a predetermined number or more in the acquired specification. This may be associated with the position (number of lines) in the source code in which the above procedure is described. Note that the specification / source mapping unit 109 uses the number of the section in which the density (the ratio of the related word to the total number of words in the entire section) of the detected related word is equal to or more than a predetermined value or the detected related word as a headline. The number of the section to be included may be associated with the position (number of lines) in the source code where the predetermined procedure is described.

続いて、仕様書・ソースマッピング部109は、ステップS32で対応付けた結果を保持する仕様書マッピングテーブル111を作成して、記憶部14に保存する(ステップS33)。   Subsequently, the specification / source mapping unit 109 creates a specification mapping table 111 that holds the result of association in step S32 and stores it in the storage unit 14 (step S33).

図15は、図6に示すソースコードの処理(関数)のうち、処理データ「初期化」に対応する関数部分の仕様書マッピングテーブル111の例を示す図である。図15では、XMLの形式で仕様書マッピングテーブル111が作成されている。具体的には、「proc_name」タグで指定した手順データと、「source_code_line」タグで指定したソースコードの部分(行数)と、「spec_section」タグで指定した仕様書内のセクション番号とが、「proc_item」タグにより対応付けられている。   FIG. 15 is a diagram showing an example of the specification mapping table 111 of the function portion corresponding to the processing data “initialization” in the processing (function) of the source code shown in FIG. In FIG. 15, a specification mapping table 111 is created in the XML format. Specifically, the procedure data specified by the “proc_name” tag, the source code part (number of lines) specified by the “source_code_line” tag, and the section number in the specification specified by the “spec_section” tag are “ Corresponding by “proc_item” tag.

図14に戻り、仕様書・ソースマッピング部109は、作成された仕様書マッピングテーブル111と、このマッピングテーブル108に対応するソースコードとを合成した、ソースコード上から対応する仕様書のセクション部分を参照可能な画面を作成して、表示部13に表示する(ステップS34)。以上で仕様書・ソースマッピング処理は終了する。   Returning to FIG. 14, the specification / source mapping unit 109 combines the created specification mapping table 111 and the source code corresponding to the mapping table 108, and displays the section portion of the corresponding specification from the source code. A screen that can be referred to is created and displayed on the display unit 13 (step S34). This completes the specification / source mapping process.

(仕様書更新支援処理)
続いて、ソースコードが更新された際に、このソースコードの仕様書の更新作業を支援する仕様書更新支援処理について、図16のフローチャートを参照して説明する。なお、事前に仕様書・ソースマッピング処理がなされており、更新支援対象の仕様書に関する仕様書マッピングテーブル111が作成されているものとする。
(Specification update support processing)
Next, the specification update support process for supporting the update operation of the specification of the source code when the source code is updated will be described with reference to the flowchart of FIG. It is assumed that the specification / source mapping processing has been performed in advance, and the specification mapping table 111 relating to the update support target specification has been created.

ソフトウェア再利用支援装置200が起動した場合、又は、操作部12を介して仕様書更新支援処理を開始することを示すユーザからの指示入力を受信した場合、仕様書変更候補表示部110は、定期的にソースコードを解析して、ソースコードが更新されたか否かを判別する(ステップS41)。   When the software reuse support apparatus 200 is activated or when an instruction input is received from the user indicating that the specification update support process is to be started via the operation unit 12, the specification change candidate display unit 110 Then, the source code is analyzed and it is determined whether or not the source code has been updated (step S41).

ソースコードが更新されていない場合(ステップS41;No)、仕様書変更候補表示部110は、ソースコードが更新されるまで、定期的にソースコードの更新を判別するステップS41の処理を繰り返す。ソースコードが更新されたと判別した場合(ステップS41;Yes)、仕様書変更候補表示部110は、このソースコードの仕様書マッピングテーブル111を参照して、ソースコード内の更新された部分に対応付けられている仕様書のセクションを特定する(ステップS42)。   If the source code has not been updated (step S41; No), the specification change candidate display unit 110 repeats the process of step S41 for periodically determining the update of the source code until the source code is updated. When it is determined that the source code has been updated (step S41; Yes), the specification change candidate display unit 110 refers to the specification mapping table 111 of the source code and associates it with the updated portion in the source code. The specified specification section is specified (step S42).

例えば、仕様書マッピングテーブル111が図15に示すように記載されている場合、更新されたソースコードの行を指定する「source_code_line」タグと同じ「proc_item」タグ中の「spec_section」タグで指定されている仕様書のセクション番号を特定すればよい。   For example, when the specification mapping table 111 is described as shown in FIG. 15, it is specified by the “spec_section” tag in the “proc_item” tag that is the same as the “source_code_line” tag that specifies the updated source code line. The section number of the specified specification should be specified.

続いて、仕様書変更候補表示部110は、ソースコードの更新部分と、特定した仕様書のセクション部分とを関連付けて表示する図17に示すような仕様書参照画面を作成して表示部13に表示する(ステップS43)。この仕様書参照画面では、変更されたソースコードの7行目部分が点線で囲まれて強調されるとともに、この部分に対応する仕様書の43.2節の部分が変更部分と関連付けられて表示される。ユーザは仕様書参照画面を確認することで、プログラムソース内で変更があった部分に対応する仕様書の部分を即時に知ることができ、ソースコード変更に伴う仕様書の変更処理を迅速に行うことが可能となる。以上で仕様書更新支援処理は終了する。   Subsequently, the specification change candidate display unit 110 creates a specification reference screen as shown in FIG. 17 for displaying the updated part of the source code and the section portion of the specified specification in association with each other on the display unit 13. Displayed (step S43). On the specification reference screen, the seventh line part of the changed source code is highlighted with a dotted line, and the part of section 43.2 of the specification corresponding to this part is displayed in association with the changed part. Is done. By checking the specification reference screen, the user can immediately know the part of the specification corresponding to the changed part in the program source, and quickly change the specification accompanying the source code change. It becomes possible. This completes the specification update support process.

このように、本実施形態では、ソースコードと仕様書の対応する部分同士を対応付けて、相互参照可能に表示する。これにより、ユーザは、ソースコードと仕様書との対応関係を直感的に把握することができるため、ソフトウェアの再利用性や保守性を高めることができる。   Thus, in the present embodiment, corresponding portions of the source code and the specification are associated with each other and displayed so as to be cross-referenced. Thereby, since the user can intuitively grasp the correspondence between the source code and the specification, the reusability and maintainability of the software can be improved.

また、本実施形態では、ソースコードが変更された際に、変更された箇所に対応する仕様書のセクションが表示される。従って、ユーザは、ソフトウェアのバージョンアップなどに伴ってソースコードが変更された際に、仕様書の変更作業を効率良く行うことが可能となる。   In the present embodiment, when the source code is changed, a specification section corresponding to the changed portion is displayed. Therefore, the user can efficiently change the specification when the source code is changed due to software upgrade or the like.

なお、本発明は、上記各実施形態に限定されず、本発明の要旨を逸脱しない部分での種々の変更は勿論可能である。   The present invention is not limited to the above-described embodiments, and various changes can be made without departing from the spirit of the present invention.

例えば、上記各実施形態では、辞書DB102を参照して、テンプレートデータ107の所定の見出語の関連語を特定し、特定した関連語を含むソースコードの部分を、この所定の見出語を有する処理内容情報(処理データ、手順データ)とマッピングした。しかしながら、辞書DB102を参照しないで、見出語で直接ソースコードを検索することにより、マッピングを行ってもよい。即ち、テンプレートデータ107の所定の見出語を含むソースコードの部分を、この所定の見出語を有する処理内容情報(処理データ、手順データ)と対応付けてもよい。   For example, in each of the above embodiments, the dictionary DB 102 is referred to, a related word of a predetermined headword in the template data 107 is specified, and a portion of the source code including the specified related word is determined as the predetermined headword. Mapping with processing content information (processing data, procedure data). However, mapping may be performed by searching the source code directly with the headword without referring to the dictionary DB 102. That is, the part of the source code including the predetermined headword in the template data 107 may be associated with the processing content information (processing data, procedure data) having the predetermined headword.

例えば、上記各実施形態では、ソースコード内の処理(関数)に処理データ、手順に手順データを対応付けたが、処理データのみ、若しくは、手順データのみをソースコード内の部分と対応付けるようにしてもよい。   For example, in each of the above embodiments, process data and procedure data are associated with a process (function) in the source code, but only process data or only procedure data is associated with a part in the source code. Also good.

例えば、SGML(Standard Generalized Markup Language)やXHTML(Extensible HyperText Markup Language)等といったXML以外の他のマークアップ言語でマッピングテーブル108や仕様書マッピングテーブル111を記載してもよい。または、マッピングテーブル108や仕様書マッピングテーブル111を表形式のデータとしてもよく、データ形式は任意のものが採用可能である。   For example, the mapping table 108 and the specification mapping table 111 may be described in a markup language other than XML, such as SGML (Standard Generalized Markup Language) or XHTML (Extensible HyperText Markup Language). Alternatively, the mapping table 108 and the specification mapping table 111 may be tabular data, and any data format can be adopted.

また、上記各実施形態では、C言語で記載されているソースコードを例にして主に説明したが、JAVA(登録商標)やBASIC等の他のプログラム言語で記載されているソースコードにも本願発明が適用できるのは勿論である。   In each of the above embodiments, the source code written in C language has been mainly described as an example. However, the present application also applies to source code written in other program languages such as JAVA (registered trademark) and BASIC. Of course, the invention can be applied.

また、例えば、本発明に係るソフトウェア再利用支援装置100,200の動作を規定する動作プログラムを既存のパーソナルコンピュータや情報端末機器等に適用することで、当該パーソナルコンピュータ等を本発明に係るソフトウェア再利用支援装置100,200として機能させることも可能である。   Further, for example, by applying an operation program that defines the operation of the software reuse support apparatus 100, 200 according to the present invention to an existing personal computer, an information terminal device, etc., the personal computer is It is also possible to function as the usage support apparatuses 100 and 200.

また、このようなプログラムの配布方法は任意であり、例えば、CD−ROM(Compact Disk Read-Only Memory)、DVD(Digital Versatile Disk)、MO(Magneto Optical Disk)、メモリカードなどのコンピュータ読み取り可能な記録媒体に格納して配布してもよいし、インターネットなどの通信ネットワークを介して配布してもよい。   Further, the distribution method of such a program is arbitrary. For example, the program can be read by a computer such as a CD-ROM (Compact Disk Read-Only Memory), a DVD (Digital Versatile Disk), an MO (Magneto Optical Disk), or a memory card. It may be distributed by storing in a recording medium, or distributed via a communication network such as the Internet.

例えば、組み込みシステムのデバイスドライバの開発支援装置に本発明を適用可能である。   For example, the present invention can be applied to a device driver development support apparatus for an embedded system.

100,200 ソフトウェア再利用支援装置
101 テンプレート格納部
102 辞書DB
103 処理・ソースマッピング部
104 処理・ソースマッピング結果表示部
105 データシート・ソースマッピング部
106 データシート・ソースマッピング結果表示部
107 テンプレートデータ
108 マッピングテーブル
109 仕様書・ソースマッピング部
110 仕様書変更候補表示部
111 仕様書マッピングテーブル
100, 200 Software reuse support apparatus 101 Template storage unit 102 Dictionary DB
103 processing / source mapping unit 104 processing / source mapping result display unit 105 data sheet / source mapping unit 106 data sheet / source mapping result display unit 107 template data 108 mapping table 109 specification / source mapping unit 110 specification change candidate display unit 111 Specification Mapping Table

Claims (9)

ソフトウェアを部品化したソフトウェア部品の機能を実現するための典型的な処理の内容を示す処理内容情報と見出語とが対応付けられたテンプレートデータを記憶するテンプレート記憶手段と、
前記ソフトウェア部品に対応するソースコード内から前記見出語を検出し、検出した見出語を含む部分と前記テンプレートデータ内で該見出語に対応付けられている処理内容情報とをマッピングし、マッピングした結果を保持するマッピングテーブルを作成する処理・ソースマッピング手段と、
前記マッピングテーブルを参照して、前記ソースコードの所定部分と該所定部分に対応する処理内容情報とを、両者の対応関係がわかるように表示する処理・ソースマッピング結果表示手段と、
を備えることを特徴とするソフトウェア再利用支援装置。
Template storage means for storing template data in which processing content information indicating the content of typical processing for realizing the function of a software component obtained by converting software into a component and a headword are associated;
Detecting the headword from the source code corresponding to the software component, mapping a portion including the detected headword and processing content information associated with the headword in the template data; Processing / source mapping means to create a mapping table to hold the mapped results;
Processing / source mapping result display means for referring to the mapping table and displaying the predetermined part of the source code and the processing content information corresponding to the predetermined part so that the correspondence between them can be understood;
A software reuse support apparatus comprising:
前記処理・ソースマッピング結果表示手段は、前記ソースコードの所定部分と該所定部分に対応する処理内容情報との対応関係をユーザが編集可能に表示し、ユーザが編集した内容に基づいて、前記マッピングテーブルを更新する、
ことを特徴とする請求項1に記載のソフトウェア再利用支援装置。
The processing / source mapping result display means displays a correspondence relationship between a predetermined portion of the source code and processing content information corresponding to the predetermined portion so that the user can edit, and based on the content edited by the user, the mapping Update the table,
The software reuse support apparatus according to claim 1.
見出語と、見出語に関連する関連語とを対応付けて記憶する辞書手段を備え、
前記処理・ソースマッピング手段は、
前記辞書手段を参照して前記テンプレートデータに格納されている見出語の関連語を検出し、
前記ソフトウェア部品に対応するソースコード内で検出した関連語を含む部分と、前記テンプレートデータ内で検出した関連語に対応する前記見出語に対応付けられている処理内容情報と、をマッピングする、
ことを特徴とする請求項1又は2に記載のソフトウェア再利用支援装置。
A dictionary means for storing a headword and a related word related to the headword in association with each other;
The processing / source mapping means includes:
Referring to the dictionary means to detect a related word of the headword stored in the template data,
Mapping a portion including a related word detected in the source code corresponding to the software component and processing content information associated with the headword corresponding to the related word detected in the template data;
The software reuse support apparatus according to claim 1, wherein the software reuse support apparatus is a software reuse support apparatus.
前記テンプレートデータには、前記典型的な処理が実行される順番を示す情報がさらに記述されており、
前記処理・ソースマッピング手段は、前記テンプレートデータが示す処理の順番と、前記ソースコード内での処理の順番とに基づいて、前記ソースコードの所定部分と該所定部分に対応する処理内容情報とをマッピングする、
ことを特徴とする請求項1乃至3の何れか1項に記載のソフトウェア再利用支援装置。
The template data further describes information indicating the order in which the typical processing is executed,
The processing / source mapping means obtains a predetermined portion of the source code and processing content information corresponding to the predetermined portion based on the processing order indicated by the template data and the processing order in the source code. Mapping,
The software reuse support apparatus according to any one of claims 1 to 3.
前記マッピングテーブルを参照して、前記ソースコードの所定部分と、該所定部分に対応する前記ソフトウェア部品の適用対象であるデバイスのデータシートの部分と、をマッピングするデータシート・ソースマッピング手段をさらに備える、
ことを特徴とする請求項1乃至4の何れか1項に記載のソフトウェア再利用支援装置。
Data sheet / source mapping means for mapping the predetermined part of the source code and the part of the data sheet of the device to which the software component corresponding to the predetermined part is applied with reference to the mapping table ,
The software reuse support apparatus according to claim 1, wherein the software reuse support apparatus is a software reuse support apparatus.
前記マッピングテーブルを参照して、前記ソースコードの所定部分と該ソースコードの仕様書内の部分とをマッピングする仕様書・ソースマッピング手段をさらに備える、
ことを特徴とする請求項1乃至5の何れか1項に記載のソフトウェア再利用支援装置。
A specification / source mapping means for mapping a predetermined part of the source code and a part in the specification of the source code with reference to the mapping table;
The software reuse support apparatus according to claim 1, wherein the software reuse support apparatus is a software reuse support apparatus.
前記ソースコードが変更された際に、前記仕様書・ソースマッピング手段が対応付けた対応関係を参照して、変更されたソースコードの部分に対応する前記仕様書の部分を表示する仕様書変更候補表示手段をさらに備える、
ことを特徴とする請求項6に記載のソフトウェア再利用支援装置。
Specification change candidate for displaying the part of the specification corresponding to the changed part of the source code with reference to the correspondence relationship associated with the specification / source mapping means when the source code is changed A display means,
The software reuse support apparatus according to claim 6.
ソフトウェアを部品化したソフトウェア部品の機能を実現するための典型的な処理の内容を示す処理内容情報と見出語とが対応付けられたテンプレートデータを取得し、
前記ソフトウェア部品に対応するソースコード内から前記見出語を検出し、検出した見出語を含む部分と前記テンプレートデータ内で該見出語に対応付けられている処理内容情報とをマッピングし、マッピングした結果を保持するマッピングテーブルを作成し、
前記マッピングテーブルを参照して、前記ソースコードの所定部分と該所定部分に対応する処理内容情報とを、両者の対応関係がわかるように表示する、
ことを特徴とするソフトウェア再利用支援方法。
Get an exemplary process template data in which the processing content information and entry word indicating the contents associated in order to implement the functions of the software component that part of the software,
Detecting the headword from the source code corresponding to the software component, mapping a portion including the detected headword and processing content information associated with the headword in the template data; Create a mapping table to hold the mapped results,
With reference to the mapping table, the predetermined part of the source code and the processing content information corresponding to the predetermined part are displayed so that the correspondence between them can be understood.
A software reuse support method characterized by the above.
コンピュータを、
ソフトウェアを部品化したソフトウェア部品の機能を実現するための典型的な処理の内容を示す処理内容情報と見出語とが対応付けられたテンプレートデータを記憶するテンプレート記憶手段、
前記ソフトウェア部品に対応するソースコード内から前記見出語を検出し、検出した見出語を含む部分と前記テンプレートデータ内で該見出語に対応付けられている処理内容情報とをマッピングし、マッピングした結果を保持するマッピングテーブルを作成する処理・ソースマッピング手段、
前記マッピングテーブルを参照して、前記ソースコードの所定部分と該所定部分に対応する処理内容情報とを、両者の対応関係がわかるように表示する処理・ソースマッピング結果表示手段、
として機能させることを特徴とするプログラム。
Computer
Template storage means for storing template data in which processing content information indicating the content of typical processing for realizing the function of a software component obtained by converting software into a component and a headword are associated;
Detecting the headword from the source code corresponding to the software component, mapping a portion including the detected headword and processing content information associated with the headword in the template data; Processing / source mapping means to create a mapping table to hold the mapped results,
Processing / source mapping result display means for referring to the mapping table and displaying the predetermined part of the source code and the processing content information corresponding to the predetermined part so that the correspondence between them can be understood;
A program characterized by functioning as
JP2011219637A 2011-10-03 2011-10-03 Software reuse support apparatus, software reuse support method, and program Active JP5800657B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011219637A JP5800657B2 (en) 2011-10-03 2011-10-03 Software reuse support apparatus, software reuse support method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011219637A JP5800657B2 (en) 2011-10-03 2011-10-03 Software reuse support apparatus, software reuse support method, and program

Publications (2)

Publication Number Publication Date
JP2013080355A JP2013080355A (en) 2013-05-02
JP5800657B2 true JP5800657B2 (en) 2015-10-28

Family

ID=48526679

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011219637A Active JP5800657B2 (en) 2011-10-03 2011-10-03 Software reuse support apparatus, software reuse support method, and program

Country Status (1)

Country Link
JP (1) JP5800657B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6185148B2 (en) * 2014-03-25 2017-08-23 株式会社日立製作所 Dependency verification device between software specifications and dependency verification method between software specifications
JP2016206962A (en) * 2015-04-23 2016-12-08 株式会社明電舎 Software development support system and software development support method
KR102030544B1 (en) * 2018-04-24 2019-10-10 주식회사 한글과컴퓨터 Program analyzing apparatus capable of generating function call information on features supported by a program and operating method thereof
CN110308902B (en) * 2019-06-28 2023-10-03 百度在线网络技术(北京)有限公司 File generation method, device, equipment and storage medium
CN110286910B (en) * 2019-06-28 2023-08-01 百度在线网络技术(北京)有限公司 File migration method, device, equipment and storage medium

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01286020A (en) * 1988-05-13 1989-11-17 Hitachi Ltd Program retrieving system
JPH05307472A (en) * 1992-04-28 1993-11-19 Shimadzu Corp Program parts information reusing device
JPH07239860A (en) * 1994-02-28 1995-09-12 Fuji Xerox Co Ltd Data managing device
US9164742B2 (en) * 2010-02-18 2015-10-20 Johan Kraft Method and a system for searching for parts of a computer program which affects a given symbol

Also Published As

Publication number Publication date
JP2013080355A (en) 2013-05-02

Similar Documents

Publication Publication Date Title
KR101099196B1 (en) adaptive machine translation
JP5800657B2 (en) Software reuse support apparatus, software reuse support method, and program
US7660803B2 (en) Policy-based management method and system for printing of extensible markup language (XML) documents
US20090006957A1 (en) Providing Assistance for Editing Markup Document Based on Inferred Grammar
WO2015165412A1 (en) Method for modifying webpage and apparatus for modifying webpage
JP5209016B2 (en) WebAPI creation support apparatus and WebAPI creation support method
US6941520B1 (en) Method, system, and program for using a user interface program to generate a user interface for an application program
JP2009545077A (en) Reuse of available source data and localization
US20080034288A1 (en) Text-Driven Macros Integrated with a Help System of a Computer Program
WO2019240926A1 (en) Sql query formatting by examples
WO2014028330A2 (en) Application development tool
JP4830637B2 (en) Electronic document update notification device and electronic document update notification method
US7328234B1 (en) Agent architecture for triggering remotely initiated data processing operations
US7478370B2 (en) Relationship management for data modeling in an integrated development environment
US11423218B2 (en) Abstraction of formulas into reusable functions
US20130080892A1 (en) Information processing device, gui manipulation assistance method, and computer-readable recording medium
KR101802051B1 (en) Method and system for constructing schema on natural language processing and knowledge database thereof
JP5758311B2 (en) Test code generation device, test code generation method, test code generation program
JP5846853B2 (en) Support system, support method, and support program
JP4809739B2 (en) User interface changing device and recording medium
US9176937B2 (en) Ensuring user interface specification accurately describes user interface after updates to user interface
CN108766059A (en) A kind of cloud service English teaching equipment and teaching method
JP6437899B2 (en) Document proofreading support apparatus, document proofreading support method, and document proofreading support program
JP2005352861A (en) Electronic data processing method, apparatus and program
CN117931143A (en) Intelligent approval method, device, equipment and medium based on meta model

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140904

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150602

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150619

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150825

R150 Certificate of patent or registration of utility model

Ref document number: 5800657

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250