JPH07129382A - Spiral type object oriented software development supporting system and software developing method - Google Patents

Spiral type object oriented software development supporting system and software developing method

Info

Publication number
JPH07129382A
JPH07129382A JP27422993A JP27422993A JPH07129382A JP H07129382 A JPH07129382 A JP H07129382A JP 27422993 A JP27422993 A JP 27422993A JP 27422993 A JP27422993 A JP 27422993A JP H07129382 A JPH07129382 A JP H07129382A
Authority
JP
Japan
Prior art keywords
information
design
source code
design information
mounting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP27422993A
Other languages
Japanese (ja)
Other versions
JP3759630B2 (en
Inventor
Eiji Fukazawa
沢 栄 二 深
Eiji Namikawa
河 英 二 並
Nobuo Mori
伸 雄 森
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.)
Nomura Research Institute Ltd
Original Assignee
Nomura Research Institute 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 Nomura Research Institute Ltd filed Critical Nomura Research Institute Ltd
Priority to JP27422993A priority Critical patent/JP3759630B2/en
Publication of JPH07129382A publication Critical patent/JPH07129382A/en
Application granted granted Critical
Publication of JP3759630B2 publication Critical patent/JP3759630B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

PURPOSE:To provide a spiral type software development supporting system and a software developing method capable of reusing the constitutional elements of design information and packaging information. CONSTITUTION:This system is provided with a design information editor 2, a design information data base 3 for storing design information, a packaging information data base 4 for storing packaging information for packaging the design information on a source code, a format information storage device 5 storing at least one format file storing format information inherent in computer language to be used, and a source code generator 6 for inputting up-to-date design information, a necessary part in the packaging information and the format information and generating a source code. The system is also provided with a design information extracting device for reflecting the design information of a changed source code to a design information data base 3, a packaging information extracting device for reflecting the packaging information of the changed source code to the data base 4, a design information/packaging information linking device 9 for maintaining correspondence relation between both the data base 3, 4, and a management device 10 for managing the whole system.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、スパイラル型オブジェ
クト指向のソフトウェア開発を支援するシステムに係
り、特にスパイラル状にソフトウェアを開発をする途中
で、作成済みの書式情報等を再利用可能にしたスパイラ
ル型オブジェクト指向のソフトウェア開発支援システム
に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a system for supporting software development of spiral type object-oriented software, and in particular, in the course of developing software in a spiral form, a spiral in which created format information and the like can be reused. Type object oriented software development support system.

【0002】[0002]

【従来の技術】現在、再利用性や拡張性が求められるこ
とから、オブジェクト指向のソフトウェアが広く使用さ
れるようになっている。このオブジェクト指向のソフト
ウェア開発の一手法として、スパイラル型のソフトウェ
ア開発の方法が知られている。
2. Description of the Related Art At present, object-oriented software has been widely used because reusability and expandability are required. As a method of this object-oriented software development, a spiral software development method is known.

【0003】図16は、上記スパイラル型のオブジェク
ト指向ソフトウェアの開発方法の概念を示している。図
に示すように、スパイラル型ソフトウェア開発では、最
初はソフトウェアの要求仕様に基づいてソフトウェアの
中心部分の設計図等を作成し、この設計図に基づいてコ
ーディングして実験し、次に実験結果を評価して元の要
求仕様を見直し、さらに上記工程を繰り返しながら漸次
機能を付加してスパイラル的にソフトウェアを完成して
いく。
FIG. 16 shows the concept of the method of developing the spiral object-oriented software. As shown in the figure, in spiral type software development, first, a design drawing etc. of the central part of the software is created based on the required specifications of the software, coding is performed based on this design drawing, and an experiment is conducted. The original required specifications are reviewed and evaluated, and the software is spirally completed by gradually adding functions while repeating the above process.

【0004】図17は、従来のスパイラル型オブジェク
ト指向ソフトウェアの開発方法の各工程と、各工程の成
果物を示している。
FIG. 17 shows each step of a conventional spiral type object-oriented software development method and a product of each step.

【0005】従来のスパイラル型ソフトウェア開発方法
では、最初はスタートポイント50から要求仕様に基づ
いて最初の設計図や仕様書等の設計ドキュメント51を
作成する(ステップ200)。
In the conventional spiral type software development method, first, a design document 51 such as a design drawing and a specification is created from a start point 50 based on required specifications (step 200).

【0006】次に、上記設計ドキュメント51を修正用
のソースコード52に変換する(ステップ210)。こ
のソースコード化には、一般にソースコードジェネレー
タが使用されている。このソースコードジェネレータに
よって生成されたソースコード52は、機械的なジェネ
レーションのために細部が不備であったり、また、ソー
スコード上でソフトウェアを変更したい場合もあるの
で、技術者によってソースコードに追加、変更、削除等
の修正を行って変更後のソースコード53を作成する
(ステップ220)。
Next, the design document 51 is converted into a modification source code 52 (step 210). A source code generator is generally used for this source coding. The source code 52 generated by this source code generator may be deficient in details due to mechanical generation, or the software may be changed on the source code. Therefore, an engineer adds the source code 52 to the source code. Modifications such as changes and deletions are made to create the changed source code 53 (step 220).

【0007】次に変更後のソースコード53は、パーサ
ー等の構文解析ソフトによって、変更後の設計ドキュメ
ント54に変換する(ステップ230)。
Next, the changed source code 53 is converted into the changed design document 54 by a parsing software such as a parser (step 230).

【0008】次に、この変更後の設計ドキュメント54
に基づいて、要求仕様を見直し、スクリーンエディタに
よって設計ドキュメントを修正し、二回目の開発サイク
ルの基礎となる設計ドキュメント51を作成する(ステ
ップ240)。
Next, the modified design document 54
Based on the above, the required specifications are reviewed, the design document is corrected by the screen editor, and the design document 51 which is the basis of the second development cycle is created (step 240).

【0009】以降、上記ステップ210ないしステップ
240を繰り返し、ソフトウェアと要求仕様を見直しな
がら、漸次ソフトウェアの機能を充実させてソフトウェ
アを完成していく。
After that, the above steps 210 to 240 are repeated, and while the software and the required specifications are reviewed, the functions of the software are gradually enhanced to complete the software.

【0010】上記設計ドキュメント51,54の設計情
報は、フレーム要素とガイダンス要素と設計固有要素に
よって構成されている。ここで、フレーム要素は、クラ
ス、オブジェクト、属性、メソッド等のオブジェクト指
向ソフトウェアの実体をなす要素である。ガイダンス要
素は、各フレーム要素を説明する要素である。設計固有
要素は、たとえば、図形の位置や大きさ、あるいは線図
の意味等、設計に固有の情報を示す要素である。
The design information of the design documents 51 and 54 is composed of a frame element, a guidance element and a design-specific element. Here, the frame element is an element that constitutes the substance of object-oriented software such as a class, an object, an attribute, and a method. The guidance element is an element that describes each frame element. The design-specific element is an element indicating information unique to the design, such as the position and size of a graphic, the meaning of a diagram, and the like.

【0011】また、上記ソースコード52,53に含ま
れる実装情報は、フレーム要素とリーフ要素とガイダン
ス要素とグルー要素とによって構成されている。ここ
で、上記フレーム要素とガイダンス要素は、設計情報の
ものと同一である。リーフ要素は、メソッド、宣言等の
表現をコード化するものである。グルー要素は、各コン
ピュータ言語に特有の文法や約束を含む要素である。
The mounting information included in the source codes 52 and 53 is composed of a frame element, a leaf element, a guidance element and a glue element. Here, the frame element and the guidance element are the same as those of the design information. The leaf element encodes the representation of methods, declarations, etc. The glue element is an element that includes a grammar and a promise specific to each computer language.

【0012】上記設計情報と実装情報は、図18に示す
ように、フレーム要素とガイダンス要素を共有する。設
計固有要素は設計情報に特有のものであり、リーフ要素
とグルー要素は実装情報に特有のものである。
As shown in FIG. 18, the design information and the mounting information share a frame element and a guidance element. Design-specific elements are specific to design information, and leaf elements and glue elements are specific to implementation information.

【0013】設計情報と実装情報が上記構成を有してい
るので、従来のスパイラル型ソフトウェア開発では、設
計ドキュメント51から修正用のソースコード52を生
成するとき(ステップ210)、図19に示すように、
設計固有要素が脱落し、その代わりにグルー要素やリー
フ要素が付加される。すなわちこの変換では、共通のフ
レーム要素とガイダンス要素のみが利用される。
Since the design information and the mounting information have the above-described structure, in the conventional spiral type software development, when the source code 52 for correction is generated from the design document 51 (step 210), as shown in FIG. To
Design-specific elements are dropped, and glue and leaf elements are added instead. That is, this conversion uses only the common frame and guidance elements.

【0014】この場合、各サイクルごとにステップ21
0の工程で、技術者が再度ソースコードを見直して、上
記リーフ要素やガイダンス要素を付加する。
In this case, step 21 is performed for each cycle.
In step 0, the engineer reviews the source code again and adds the leaf element and the guidance element.

【0015】また、変更後のソースコード53から変更
後の設計ドキュメント54を生成するときは(ステップ
230)、図20に示すように、ソースコードのリーフ
要素とグルー要素が脱落する。この場合、技術者はスク
リーンエディタで、設計ドキュメントに設計固有要素を
付加する。
When the changed design document 54 is generated from the changed source code 53 (step 230), the leaf element and the glue element of the source code are dropped as shown in FIG. In this case, the technician uses a screen editor to add design-specific elements to the design document.

【0016】[0016]

【発明が解決しようとする課題】しかしながら、上記従
来のスパイラル型オブジェクト指向のソフトウェア開発
支援システムおよびソフトウェア開発方法では、上述し
たように、ソースコードを修正してこれを設計図等に変
換するとき、あるいは設計図等を修正した後に、これを
ソースコードに変換するときに、それまでに開発された
ソースコードや設計図の設計固有要素、ガイダンス要
素、あるいはリーフ要素が失われていた。
However, in the conventional spiral object-oriented software development support system and software development method described above, when the source code is modified and converted into a design drawing, etc., as described above, Alternatively, when the design drawing or the like is modified and then converted into the source code, the design-specific element, the guidance element, or the leaf element of the source code or the design drawing developed up to that time is lost.

【0017】これら要素は、多くの時間をかけて作成さ
れたものであり、変換の度に失われるのはきわめて不経
済であった。
These elements were produced over a long period of time, and it was extremely uneconomical to lose them after each conversion.

【0018】特に、ソースコードを人手によって修正す
るときに、付加されるリーフ要素やガイダンス要素は、
熟練した技術者が多くの時間をかけて付加するものであ
り、かつ、ソースコードの修正はソースコードの一部の
みについて行われることが多いにもかかわらず、スパイ
ラル型ソフトウェア開発のサイクルごとに初めからこれ
ら要素を作成するのは極めて非効率的であった。
Particularly, when the source code is manually modified, leaf elements and guidance elements added are
It takes a lot of time for a skilled engineer to add, and although the source code modification is often done only on a part of the source code, it is started at each cycle of spiral software development. It was very inefficient to create these elements from.

【0019】また、近来コンピュータ・ソフトウェア
は、複雑かつ大型化していることにより、複数の技術者
が、それぞれ最適な複数種類のコンピュータ言語によっ
て共通のソフトウェアを開発するのがより合理的となっ
ている。
Further, since the computer software has become complicated and large in size in recent years, it becomes more rational for a plurality of engineers to develop common software in a plurality of optimal computer languages. .

【0020】しかし、従来のスパイラル型ソフトウェア
開発では、設計図等からソースコードを生成するのに、
一般市場に流通しているソースコードジェネレータを使
用していたので、そのソースコードジェネレータが変換
できるコンピュータ言語によってソフトウェアを開発し
なければならない問題があった。
However, in the conventional spiral type software development, the source code is generated from the design drawing, etc.
Since the source code generator distributed in the general market was used, there was a problem that the software had to be developed in a computer language that the source code generator could convert.

【0021】そこで、本発明の目的は、上記従来のスパ
イラル型ソフトウェア開発の課題を解決し、一度作成し
たリーフ要素やガイダンス要素や設計固有要素を、変更
や削除されない限り再利用することができるスパイラル
型ソフトウェア開発支援システムおよびソフトウェア開
発方法を提供することにある。
Therefore, an object of the present invention is to solve the above-mentioned problems of the conventional spiral type software development, and to reuse leaf elements, guidance elements and design-specific elements once created, unless they are changed or deleted. Type software development support system and software development method.

【0022】また、本発明の他の目的は、オブジェクト
ごとに異なる複数種類のコンピュータ言語によって、共
通のオブジェクト指向のソフトウェアをスパイラル的に
開発できるスパイラル型ソフトウェア開発方法を提供す
ることにある。
Another object of the present invention is to provide a spiral type software development method capable of spirally developing common object-oriented software using a plurality of types of computer languages that differ for each object.

【0023】[0023]

【課題を解決するための手段】上記目的を達成するため
に、本発明によるスパイラル型ソフトウェア開発支援シ
ステムは、ソフトウェアの設計図や仕様書を編集する設
計情報エディタと、前記設計図や仕様書に含まれる設計
情報を格納する設計情報データベースと、前記設計情報
をソースコードに実装するための実装情報を格納する実
装情報データベースと、使用するコンピュータ言語に固
有の書式情報を格納した少なくとも一つの書式ファイル
を記憶している書式情報記憶装置と、最新の前記設計情
報と前記実装情報の必要部分と前記書式情報とを入力し
てソースコードを生成するソースコードジェネレータ
と、変更されたソースコードの設計情報を前記設計情報
データベースに反映する設計情報抽出装置と、変更され
たソースコードの実装情報を前記実装情報データベース
に反映する実装情報抽出装置と、前記設計情報データベ
ースと前記実装情報データベースとの間の対応関係を維
持する設計情報/実装情報リンク装置と、システム全体
を管理する管理装置とを有することを特徴とするもので
ある。
In order to achieve the above object, a spiral type software development support system according to the present invention includes a design information editor for editing software design drawings and specifications, and a design information editor for editing the design drawings and specifications. A design information database storing the included design information, an implementation information database storing implementation information for implementing the design information in a source code, and at least one format file storing format information specific to the computer language used. A format information storage device, a source code generator that generates the source code by inputting the latest necessary parts of the design information and the mounting information, and the format information, and design information of the modified source code. Of the modified source code and the design information extraction device that reflects the above in the design information database. A mounting information extracting device that reflects information in the mounting information database, a design information / mounting information link device that maintains a correspondence relationship between the design information database and the mounting information database, and a management device that manages the entire system. It is characterized by having.

【0024】また、本発明によるスパイラル型ソフトウ
ェア開発方法は、設計図や仕様書の設計情報を、設計図
や仕様書にのみ固有な情報である設計固有要素と、オブ
ジェクト指向的観点から本質的であるフレーム要素と、
前記フレーム要素を説明するガイダンス要素とに分類し
て記憶する設計情報データベースと、前記設計情報をソ
ースコードに実装する実装情報を、フレーム要素と、ガ
イダンス要素と、フレーム要素の属性を示すリーフ要素
とに分類して記憶する実装情報データベースと、各コン
ピュータ言語に固有の書式情報たるグルー要素を格納す
る書式ファイルとを用いて、最初に要求仕様に基づいて
ソフトウェアの設計図や仕様書を作成し、この設計図や
仕様書の設計情報を前記設計情報データベースに記憶
し、それに対応する実装情報を前記実装情報データベー
スに記憶する第1工程と、前記設計情報データベースと
前記実装情報データベースから最新のフレーム要素とガ
イダンス要素とリーフ要素を取得するとともに、前記書
式ファイルからソースコードの言語に対応するグルー要
素を選択してソースコードを生成する第2工程と、前記
ソースコードを修正する第3工程と、修正後のソースコ
ードを設計図や仕様書に変換するとともに、ソースコー
ド修正段階で変更されたフレーム要素、ガイダンス要素
およびリーフ要素を前記設計情報データベースと実装情
報データベースに書き込む第4工程と、前記設計図や仕
様書を見直して必要に応じて修正するとともに、設計図
/仕様書修正段階で変更されたフレーム要素、ガイダン
ス要素、設計固有要素およびリーフ要素を前記設計情報
データベースと実装情報データベースに書き込む第5工
程と、上記第1工程を完了した後に、上記第2工程ない
し第4工程を順次繰り返しながらソフトウェアを完成し
てゆくことを特徴とするものである。
Further, the spiral software development method according to the present invention essentially provides the design information of the design drawing and the specification sheet from the object-oriented point of view with the design-specific element which is information unique only to the design drawing or the specification sheet. A frame element,
A design information database that classifies and stores guidance elements that describe the frame elements, implementation information that implements the design information in a source code, frame elements, guidance elements, and leaf elements that indicate attributes of the frame elements. First, create a software design drawing and specifications based on the required specifications by using the mounting information database that is categorized and stored in and the format file that stores the glue element that is the format information unique to each computer language. The first step of storing the design information of the design drawing or the specification in the design information database and storing the corresponding mounting information in the mounting information database, and the latest frame element from the design information database and the mounting information database. And the guidance element and leaf element, and from the format file The second step of selecting the glue element corresponding to the language of the code to generate the source code, the third step of modifying the source code, and converting the modified source code into a design drawing or specifications and The fourth step of writing the frame element, guidance element, and leaf element changed in the code correction stage in the design information database and the mounting information database, and reviewing the design drawing and specifications and correcting them as necessary, and design drawing / Fifth step of writing the frame element, guidance element, design-specific element and leaf element changed in the specification revision stage in the design information database and the mounting information database, and the second step after completing the first step It is characterized in that the software is completed by sequentially repeating the fourth to fourth steps.

【0025】[0025]

【作用】本発明のスパイラル型オブジェクト指向のソフ
トウェア開発支援システムおよびソフトウェア開発方法
は、ソフトウェアの設計情報を、上記設計情報データベ
ースによってフレーム要素とガイダンス要素と設計固有
要素とに分類して記憶し、ソースコードの実装情報を、
実装情報データベースによってフレーム要素とガイダン
ス要素とリーフ要素とに分類して記憶している。
According to the spiral object-oriented software development support system and software development method of the present invention, the design information of the software is classified into the frame element, the guidance element and the design-specific element by the design information database and stored. Code implementation information,
The mounting information database classifies and stores the frame elements, the guidance elements, and the leaf elements.

【0026】また、上記設計情報データベースと実装情
報データベースの情報を、フレーム要素の同一性を利用
して設計情報/実装情報リンク装置によって互いにリン
クし、対応関係を維持するようにしている。
Further, the information of the design information database and the information of the mounting information database are linked to each other by the design information / mounting information link device by utilizing the sameness of the frame elements so as to maintain the correspondence relationship.

【0027】上記構造により、各スパイラル型開発のサ
イクルで、設計情報あるいは実装情報が変更されると、
設計情報抽出装置や実装情報抽出装置によって、設計情
報データベースと実装情報データベースの内容が変更さ
れ、さらに、設計情報/実装情報リンク装置によって、
フレーム要素を手がかりに変更された部分を選別し、変
更されていない部分についてはフレーム要素、リーフ要
素、ガイダンス要素、設計固有要素等をそのまま次のサ
イクルで再利用することができる。
With the above structure, when design information or mounting information is changed in each spiral type development cycle,
The contents of the design information database and the mounting information database are changed by the design information extracting device and the mounting information extracting device, and further, by the design information / mounting information link device,
The changed portion can be selected by using the frame element as a clue, and for the unchanged portion, the frame element, leaf element, guidance element, design-specific element, etc. can be reused as they are in the next cycle.

【0028】これにより、スパイラル型ソフトウェア開
発の各サイクルで、それまでに作成され、かつ、再利用
可能なリーフ要素、ガイダンス要素、設計固有要素等を
再利用でき、より効率的にスパイラル型のソフトウェア
開発を行うことができる。
As a result, in each cycle of the spiral type software development, the reusable leaf elements, guidance elements, design-specific elements, etc. that have been created up to that point can be reused, and the spiral type software can be more efficiently used. Can do development.

【0029】また、本発明のスパイラル型オブジェクト
指向のソフトウェア開発支援システムおよびソフトウェ
ア開発方法は、書式情報記憶装置によって使用するコン
ピュータ言語の書式情報を格納する少なくとも一つの書
式ファイルを記憶している。
Further, the spiral object-oriented software development support system and software development method of the present invention stores at least one format file for storing format information of a computer language used by the format information storage device.

【0030】この書式情報記憶装置の書式ファイルをフ
レーム要素ごとに選択可能にすることにより、本発明の
システムおよびソフトウェア開発方法では、フレーム要
素ごとに異なる複数種類のコンピュータ言語によって共
通のソフトウェアを開発することが可能になる。
By making the format file of this format information storage device selectable for each frame element, the system and software development method of the present invention develop common software by a plurality of different computer languages for each frame element. It will be possible.

【0031】[0031]

【実施例】次に、本発明の一実施例について図面を参照
して以下に説明する。図1は、本発明によるスパイラル
型オブジェクト指向のソフトウェア開発支援システムの
構成例を示している。
An embodiment of the present invention will be described below with reference to the drawings. FIG. 1 shows a configuration example of a spiral object-oriented software development support system according to the present invention.

【0032】本実施例のスパイラル型オブジェクト指向
ソフトウェア開発支援システム1は、設計情報エディタ
2a,2b,2cと、設計情報データベース3と、実装
情報データベース4と、書式情報記憶装置5と、ソース
コードジェネレータ6と、設計情報抽出装置7a,7
b,7cと、実装情報抽出装置8a,8bと、設計情報
/実装情報リンク装置9と、管理装置10とを備えてい
る。
The spiral object-oriented software development support system 1 of the present embodiment comprises design information editors 2a, 2b, 2c, a design information database 3, a mounting information database 4, a format information storage device 5, and a source code generator. 6, and design information extraction devices 7a and 7
b, 7c, mounting information extracting devices 8a, 8b, a design information / mounting information link device 9, and a management device 10.

【0033】上記設計情報エディタ2a,2b,2c
は、メッセージフロー図、状態遷移図、シーケンスチャ
ート等の設計図を作成および編集するスクリーンエディ
タである。この設計情報エディタ2a,2b,2cによ
って、ソフトウェア開発者は要求仕様に応じてソフトウ
ェアの設計図・仕様書を作成する。
Design information editors 2a, 2b, 2c
Is a screen editor for creating and editing design drawings such as message flow diagrams, state transition diagrams, sequence charts, and the like. With this design information editor 2a, 2b, 2c, the software developer creates a design drawing / specification of the software according to the required specifications.

【0034】上記設計情報抽出装置7a,7b,7c
は、上記設計情報エディタ2a,2b,2cで作成され
た設計図等の設計情報を設計情報データベース3のデー
タとして抽出する装置である。この設計情報抽出装置7
a,7b,7cは、パーサー/ジェネレーション機能を
有し、設計図の図形や説明を解釈して設計情報を構成す
る諸要素を抽出する。
Design information extracting devices 7a, 7b, 7c
Is an apparatus for extracting design information such as design drawings created by the design information editors 2a, 2b, 2c as data of the design information database 3. This design information extraction device 7
Reference characters a, 7b, and 7c have a parser / generation function, and interpret various figures and explanations of a design drawing to extract various elements constituting design information.

【0035】設計情報データベース3は、設計情報抽出
装置7a,7b,7cによって抽出された設計情報の諸
要素を分類して記憶するデータベースである。
The design information database 3 is a database for classifying and storing various elements of the design information extracted by the design information extracting devices 7a, 7b, 7c.

【0036】実装情報データベース4は、設計情報をソ
ースコードに実装するための実装情報の諸要素を分類し
て記憶するデータベースである。
The mounting information database 4 is a database for classifying and storing various elements of mounting information for mounting the design information on the source code.

【0037】設計情報データベース3と実装情報データ
ベース4の内容は、スパイラル型ソフトウェア開発の各
サイクルで書き換えられる。
The contents of the design information database 3 and the mounting information database 4 are rewritten in each cycle of spiral type software development.

【0038】設計情報/実装情報リンク装置9は、二つ
のデータベースに記憶された情報を比較してデータ間に
論理リンクを生成する装置である。この設計情報/実装
情報リンク装置9によって、設計情報データベース3と
実装情報データベース4の共通の要素(フレーム要素)
はリンクされ、これによって両データベースの内容の対
応関係が維持されている。
The design information / mounting information link device 9 is a device that compares information stored in two databases and creates a logical link between data. By the design information / mounting information link device 9, common elements (frame elements) of the design information database 3 and the mounting information database 4
Are linked so that the correspondence between the contents of both databases is maintained.

【0039】書式情報記憶装置5は、各コンピュータ言
語に固有の書式に関する情報を格納する記憶装置であ
る。この書式情報記憶装置5は、複数のコンピュータ言
語の書式情報を格納する複数の書式ファイルを有し、要
求に応じて適当な書式情報を出力することができる。
The format information storage device 5 is a storage device for storing information regarding a format unique to each computer language. The format information storage device 5 has a plurality of format files that store format information of a plurality of computer languages, and can output appropriate format information in response to a request.

【0040】ソースコードジェネレータ6は、設計情報
をソースコード化する装置であり、上記書式情報記憶装
置5の書式情報と、設計情報データベース3の設計情報
と、実装情報データベース4の実装情報とを読み出し
て、書式情報に従って設計情報をソースコード化する。
The source code generator 6 is a device for converting the design information into a source code, and reads out the format information of the format information storage device 5, the design information of the design information database 3, and the mounting information of the mounting information database 4. And design code the source code according to the format information.

【0041】図1中、符号11および12は、それぞれ
コンピュータ言語C++とSmaltalkによるソース
コードの例を示している。
In FIG. 1, reference numerals 11 and 12 represent examples of source codes in the computer languages C ++ and Smalltalk, respectively.

【0042】実装情報抽出装置8a,8bは、ソースコ
ードを構文解析して実装情報の諸要素を抽出する装置で
ある。この実装情報抽出装置8a,8bによって、上記
C++ソースコード11やSmaltalkのソースコー
ド12から実装情報の構成要素が抽出され、実装情報デ
ータベース4に記憶される。
The mounting information extracting devices 8a and 8b are devices for parsing the source code and extracting various elements of the mounting information. By the mounting information extracting devices 8a and 8b, the components of the mounting information are extracted from the C ++ source code 11 and the source code 12 of Smalltalk and stored in the mounting information database 4.

【0043】管理装置10は、上記各装置の動作をスパ
イラル型ソフトウェア開発の各段階に応じて制御・管理
している。
The management device 10 controls and manages the operation of each device according to each stage of spiral type software development.

【0044】次に、本実施例のスパイラル型オブジェク
ト指向ソフトウェア開発支援システム1を用いたソフト
ウェア開発方法について説明する。
Next, a software development method using the spiral object-oriented software development support system 1 of this embodiment will be described.

【0045】図2は、スパイラル型のオブジェクト指向
ソフトウェアの開発方法を示している。図2において、
スパイラル型ソフトウェア開発は、スタートポイント2
0から開始され、図1の設計情報エディタ2a,2b,
2cによって最初の設計図21が作成される(ステップ
100)。上記ステップ100の設計図が作成される
と、図1の設計情報抽出装置7a,7b,7cによって
設計情報が抽出され、設計情報データベース3にフレー
ム要素とガイダンス要素と設計固有要素に分類されて記
憶される(ステップ101)。
FIG. 2 shows a method for developing spiral object-oriented software. In FIG.
Spiral software development is a starting point 2
Starting from 0, the design information editors 2a, 2b,
The initial design drawing 21 is created by 2c (step 100). When the design drawing of the above step 100 is created, the design information is extracted by the design information extracting devices 7a, 7b, 7c of FIG. 1 and stored in the design information database 3 after being classified into frame elements, guidance elements and design-specific elements. (Step 101).

【0046】設計情報データベース3に記憶された情報
は、図1の設計情報/実装情報リンク装置9によって、
実装情報データベース4の各要素と対応関係がつけられ
る(ステップ102)。最初のサイクルでは、設計情報
データベース3のフレーム要素とガイダンス要素に対応
するフレーム要素とガイダンス要素のみが実装情報デー
タベース4に生成される。
The information stored in the design information database 3 is stored in the design information / mounting information link device 9 shown in FIG.
Correspondence is established with each element of the mounting information database 4 (step 102). In the first cycle, only the frame element and the guidance element corresponding to the frame element and the guidance element of the design information database 3 are generated in the mounting information database 4.

【0047】次に、図1のソースコードジェネレータ6
によって、設計図21から修正用のソースコード22が
生成される(ステップ110)。この修正用ソースコー
ド22を生成するときに、ソースコードジェネレータ6
は、設計情報データベース3と実装情報データベース4
から必要なフレーム要素とガイダンス要素を取得し(ス
テップ111,112)、さらに書式情報記憶装置5の
所定の書式ファイル23から使用するコンピュータ言語
に固有のグルー要素を取得する(ステップ113)。
Next, the source code generator 6 of FIG.
Thus, the source code 22 for correction is generated from the design drawing 21 (step 110). When generating the source code 22 for correction, the source code generator 6
Is a design information database 3 and a mounting information database 4
Then, necessary frame elements and guidance elements are acquired from (steps 111 and 112), and further, a glue element specific to the computer language to be used is acquired from the predetermined format file 23 of the format information storage device 5 (step 113).

【0048】次に、修正用ソースコード22から変更後
のソースコード24が作成される(ステップ120)。
この作成作業は、技術者によってソースコードの追加、
変更、削除等が行われることによって達成される。変更
後のソースコード23は、フレーム要素、リーフ要素、
グルー要素等を含み、ソースコードの体裁を整えてい
る。
Next, the modified source code 24 is created from the modification source code 22 (step 120).
This work is done by the engineer by adding the source code,
This is achieved by making changes and deletions. The changed source code 23 is a frame element, a leaf element,
The format of the source code is adjusted by including glue elements.

【0049】次に、上記変更後のソースコード24は、
図1の実装情報抽出装置8a,8bによって、変更後の
設計図25に変換される(ステップ130)。このと
き、変更後のソースコード24の実装情報は実装情報デ
ータベース4に反映される(ステップ131)。
Next, the modified source code 24 is as follows.
The mounting information extracting devices 8a and 8b in FIG. 1 convert the changed design drawing 25 (step 130). At this time, the mounting information of the changed source code 24 is reflected in the mounting information database 4 (step 131).

【0050】実装情報データベース4に反映された変更
後の実装情報は、設計情報/実装情報リンク装置9によ
って設計情報データベース3とリンクされる(ステップ
102)。このリンクは、変更後の実装情報と変更前の
設計情報を比較し、等価のフレーム要素同士を論理的に
関連づけることによって行われる。
The changed mounting information reflected in the mounting information database 4 is linked to the design information database 3 by the design information / mounting information link device 9 (step 102). This link is performed by comparing the mounting information after the change with the design information before the change and logically associating equivalent frame elements.

【0051】等価になった設計情報のフレーム要素は、
変更されなかった要素を意味するので、そのフレーム要
素とそれに付属する設計固有要素やガイダンス要素はそ
のまま保存される。
The frame elements of the equivalent design information are
The frame element and its associated design-specific elements and guidance elements are preserved, as they mean the elements that have not changed.

【0052】一方、非等価となった設計情報のフレーム
要素については、ソースコード修正の段階で追加あるい
は削除された要素を意味するので、設計情報と実装情報
とが一致するように、設計情報データベース3を修正す
る。
On the other hand, the non-equivalent design information frame element means an element added or deleted at the stage of source code modification, so that the design information database is designed so that the design information and the mounting information match. Fix 3.

【0053】上記修正を行った設計情報データベース3
の設計情報は、変更後の設計図25に反映される(ステ
ップ132)。設計情報データベース3から変更後の設
計図25への変換は、図1の設計情報抽出装置7a,7
b,7cによって行われる。
Design information database 3 with the above modifications
The design information of is reflected in the changed design drawing 25 (step 132). Conversion from the design information database 3 to the changed design drawing 25 is performed by changing the design information extracting devices 7a and 7 shown in FIG.
b, 7c.

【0054】次に、設計情報エディタ2a,2b,2c
によって変更後の設計図25を編集し、次のスパイラル
型ソフトウェア開発サイクルの基礎となる設計図21を
生成する(ステップ140)。
Next, the design information editors 2a, 2b, 2c
The modified design drawing 25 is edited by to generate the design drawing 21 which is the basis of the next spiral type software development cycle (step 140).

【0055】この過程で変更された設計情報は、設計情
報抽出装置7a,7b,7cを介して、設計情報データ
ベース3に反映される(ステップ141)。この変更後
の設計情報データベース3の情報は、再び設計情報/実
装情報リンク装置9によって、実装情報データベース4
の実装情報とリンクされ、内容的にも整合性を有するよ
うに整備される。
The design information changed in this process is reflected in the design information database 3 via the design information extracting devices 7a, 7b, 7c (step 141). The information of the design information database 3 after this change is again sent to the mounting information database 4 by the design information / mounting information link device 9.
It will be linked to the implementation information of and maintained so as to have consistency in terms of content.

【0056】二回目以降のスパイラル型ソフトウェア開
発のサイクルでは、上記ステップ110ないしステップ
141の処理を繰り返してソフトウェアを完成させてい
く。ここで注目すべきことは、二回目以降のスパイラル
・サイクルでは、上述したように、変更や追加や削除さ
れない限り、前回までに作成されたリーフ要素、ガイダ
ンス要素、設計固有要素等がそのまま再利用されること
である。
In the second and subsequent spiral type software development cycles, the processes of steps 110 to 141 are repeated to complete the software. It should be noted here that in the second and subsequent spiral cycles, as described above, the leaf elements, guidance elements, design-specific elements, etc. created up to the previous time are reused as they are unless they are changed, added, or deleted. Is to be done.

【0057】なお、図2において、仮想線で囲まれた領
域Rは、本発明のスパイラル型オブジェクト指向ソフト
ウェア開発支援システム1によってソフトウェア開発を
行う範囲を示している。
In FIG. 2, a region R surrounded by virtual lines shows a range where software development is performed by the spiral object-oriented software development support system 1 of the present invention.

【0058】次に図3以降の図面を用いて、上記変更さ
れていないフレーム要素とその付随要素を再利用する具
体的方法について説明する。
Next, a concrete method of reusing the unchanged frame element and its associated elements will be described with reference to FIGS.

【0059】図3は、設計情報データベース3と実装情
報データベース4にそれぞれ格納される設計情報と実装
情報の要素構成例を示している。この図3において、符
号31と32は、設計情報の要素構成と実装情報の要素
構成の例をそれぞれ示している。
FIG. 3 shows an example of the element configuration of the design information and the mounting information stored in the design information database 3 and the mounting information database 4, respectively. In FIG. 3, reference numerals 31 and 32 show examples of the element configuration of the design information and the element configuration of the mounting information, respectively.

【0060】設計情報要素構成31は、ツリー構造のフ
レーム要素33a,33b,33c,33d,33e,
33fを有している。このフレーム要素33a,…,3
3fは、図4に例示するオブジェクト指向のソフトウェ
アのオブジェクトの構成に対応している。図4のクラ
ス、メソッド、ポート、継承、タイプ、属性、タイプ
は、それぞれフレーム要素になる。
The design information element structure 31 includes frame elements 33a, 33b, 33c, 33d, 33e,
It has 33f. This frame element 33a, ..., 3
3f corresponds to the object configuration of the object-oriented software illustrated in FIG. The class, method, port, inheritance, type, attribute, and type shown in FIG. 4 are frame elements.

【0061】各フレーム要素33a,…,33fには、
フレーム要素を説明するガイダンス要素と、位置や大き
さ等の設計図固有の情報を示す設計固有要素が付属して
いる。このガイダンス要素と設計固有要素は、相互にも
関係づけられている。
The frame elements 33a, ..., 33f include:
A guidance element for explaining the frame element and a design-specific element for indicating design-specific information such as position and size are attached. The guidance element and the design-specific element are also related to each other.

【0062】一方、実装情報要素構成例32は、同様に
オブジェクト指向のソフトウェアの各オブジェクトに対
応するフレーム要素34a,34b,34c,34d,
34e,34fのツリー構造を有している。
On the other hand, the mounting information element configuration example 32 is similar to the frame elements 34a, 34b, 34c, 34d corresponding to the respective objects of the object-oriented software.
It has a tree structure of 34e and 34f.

【0063】各フレーム要素34a,…,34fには、
フレーム要素を説明するガイダンス要素と、メッソド等
を定義するリーフ要素が付属している。
The frame elements 34a, ..., 34f include:
A guidance element that explains the frame element and a leaf element that defines the method are attached.

【0064】上記設計情報要素構成31と実装情報要素
構成32の等価なフレーム要素は、設計情報/実装情報
リンク装置9によって、互いに対応するように関係付け
られている。
The equivalent frame elements of the design information element structure 31 and the mounting information element structure 32 are related by the design information / mounting information link device 9 so as to correspond to each other.

【0065】図5は、実装情報要素構成32の各フレー
ム要素34a,…,34fの構成を示している。図5に
示すように、各フレーム要素34a,…,34fは、フ
レーム要素を特定するフレーム名35を有し、複数の表
現36a,36b,36c(たとえば複数の異なるコン
ピュータ言語による記述)が各フレーム要素34a,
…,34fに従属している。
FIG. 5 shows the structure of each frame element 34a, ..., 34f of the mounting information element structure 32. As shown in FIG. 5, each frame element 34a, ..., 34f has a frame name 35 that identifies the frame element, and a plurality of expressions 36a, 36b, 36c (for example, descriptions in a plurality of different computer languages) are provided for each frame. Element 34a,
..., subordinate to 34f.

【0066】図6は、各表現36a,…,36cの構成
を示している。図6に示すように、各表現36a,…,
36cは、その表現を特定する表現名37を有し、ガイ
ダンス要素38とグルー要素39と前方リーフ要素40
と後方リーフ要素41とが各表現36a,…,36cに
従属している。
FIG. 6 shows the structure of each expression 36a, ..., 36c. As shown in FIG. 6, each expression 36a, ...,
36c has an expression name 37 that identifies the expression, and a guidance element 38, a glue element 39, and a front leaf element 40.
, And the rear leaf element 41 are subordinate to each expression 36a, ..., 36c.

【0067】図7は、上記構造の実装情報をソースコー
ドに展開する方法を示している。ソースコードを生成す
るときは、展開するフレーム要素34a,…,34fに
対して表現名37を指定してコード生成を要求する。
FIG. 7 shows a method of expanding the mounting information having the above structure into a source code. When the source code is generated, the expression name 37 is specified for the expanded frame elements 34a, ..., 34f to request the code generation.

【0068】フレーム要素34a,…,34fは、指定
された表現36a,…,36cに対応するグルー要素3
9を選択し、その表現36a,…,36cに対して展開
を要求する。
The frame elements 34a, ..., 34f are the glue elements 3 corresponding to the specified expressions 36a ,.
9 is selected, and expansion is requested for the expressions 36a, ..., 36c.

【0069】表現36a,…,36cは、前方リーフ要
素40と後方リーフ要素41とガイダンス要素38とグ
ルー要素39をフレーム要素34a,…,34fの属性
に付加してソースコードを展開していく。必要に応じて
フレーム要素の名前42も展開される。
The expressions 36a, ..., 36c expand the source code by adding the front leaf element 40, the rear leaf element 41, the guidance element 38, and the glue element 39 to the attributes of the frame elements 34a, ..., 34f. The name 42 of the frame element is also expanded if necessary.

【0070】さらに、ソースコード化するフレーム要素
に従属するフレーム要素をコード化する必要があるとき
は、その子のフレーム要素に展開要求を送る。子フレー
ム要素では、上記方法でさらにソースコードが展開され
る。
Further, when it is necessary to code a frame element subordinate to the frame element to be source coded, the expansion request is sent to the child frame element. In the child frame element, the source code is further expanded by the above method.

【0071】図8は上記のようにして生成されたソース
コードの一例を示している。図8において、細い破線で
囲まれた部分はグルー要素、太い破線で囲まれた部分は
ガイダンス要素、下線を引いた部分はフレーム要素、文
字がそのままの部分はリーフ要素をそれぞれ示してい
る。このソースコードから明らかなように、ソースコー
ドジェネレータ6によって、フレーム要素にリーフ要素
とガイダンス要素とグルー要素が付加されて、全体とし
て所定の書式のソースコードに形成されている。
FIG. 8 shows an example of the source code generated as described above. In FIG. 8, a part surrounded by a thin broken line is a glue element, a part surrounded by a thick broken line is a guidance element, an underlined part is a frame element, and a part without a letter is a leaf element. As is apparent from this source code, the source code generator 6 adds leaf elements, guidance elements, and glue elements to the frame elements to form a source code in a predetermined format as a whole.

【0072】図9は、上述した各要素の格納場所と、そ
れらが表現されるドキュメント(設計ドキュメント、ソ
ースコード等)と、それらの対応関係を示している。
FIG. 9 shows the storage locations of the above-described elements, the documents (design documents, source codes, etc.) in which they are expressed, and their corresponding relationships.

【0073】図9に示すように、設計固有要素とガイダ
ンス要素とフレーム要素は設計情報データベース3に格
納され、これらは、設計ドキュメント21,25の情報
に対応している。また、ガイダンス要素とフレーム要素
とリーフ要素は実装情報データベース4に格納されてお
り、これらは、ソースコード22,24に対応してい
る。グルー要素は、書式情報記憶装置5に格納され、こ
のグルー要素はソースコード22,24の表現中で使用
されている。
As shown in FIG. 9, the design-specific element, the guidance element, and the frame element are stored in the design information database 3, and these correspond to the information of the design documents 21 and 25. The guidance element, the frame element, and the leaf element are stored in the mounting information database 4, and these correspond to the source codes 22 and 24. The glue element is stored in the format information storage device 5, and this glue element is used in the expressions of the source codes 22 and 24.

【0074】ここで、注目すべきことは、設計情報デー
タベース3のフレーム要素と実装情報データベース4の
フレーム要素が論理的に結合(リンク)されていること
である。このリンクの作用によって、リーフ要素等が再
利用可能になるのである。
Here, it should be noted that the frame elements of the design information database 3 and the frame elements of the mounting information database 4 are logically linked (linked). By the action of this link, leaf elements and the like can be reused.

【0075】次に、上記論理的リンクの具体的方法につ
いて説明する。たとえば、図2のステップ120でソー
スコードに追加、変更、削除が行われた後に、この変更
された実装情報は設計情報抽出装置7a,7b,7cに
よって構文解析され、実装情報データベース4に記憶さ
れる。
Next, a specific method of the above logical link will be described. For example, after the source code is added, changed, or deleted in step 120 of FIG. 2, the changed mounting information is parsed by the design information extracting devices 7a, 7b, 7c and stored in the mounting information database 4. It

【0076】この状態では、図3の実装情報の要素構成
32が変更されているが、この時点では実装情報の要素
構成32は、設計情報要素構成31と無関係の存在とな
っている。
In this state, the element configuration 32 of the mounting information in FIG. 3 has been changed, but at this point, the element configuration 32 of the mounting information is irrelevant to the design information element configuration 31.

【0077】図10および図11は、上記設計情報要素
構成31の構成要素と実装情報要素構成32の構成要素
をリンクする方法を概念的に表している。
10 and 11 conceptually show a method of linking the constituent elements of the design information element structure 31 and the constituent elements of the mounting information element structure 32.

【0078】図10に示すように、論理リンクを行うに
は、変更後の実装情報の要素構成32と変更前の設計情
報の要素構成31の各フレーム要素を論理IDを介して
比較し、等価なものと非等価のものを識別する。
As shown in FIG. 10, in order to perform logical linking, each frame element of the element structure 32 of the changed mounting information and the frame structure 31 of the element information of the design information before the change are compared via the logical ID and are equivalent. Identify non-equivalent to

【0079】ここで、等価なものとは、変更前にも存在
し、変更後にも存在する構成要素をいう。等価な要素に
は、内容が完全に一致する同値のものと、実装情報側の
内容の一部(名前など)が変更されている非同値のもの
とがある。
Here, “equivalent” means a component that exists before the change and that exists after the change. Equivalent elements include equivalent elements whose contents completely match and non-equivalent elements in which a part (name, etc.) of the contents on the implementation information side has been changed.

【0080】非等価なものとは、変更後の実装情報の要
素構成32と変更前の設計情報の要素構成31で対応し
ない構成要素をいう。非等価な要素には、実装情報側の
孤立要素と、設計情報側の孤立要素とがある。実装情報
側の孤立要素は、ソースコードの修正で実装情報に新た
な要素を追加することによって生じる。設計情報側の孤
立要素は、ソースコードの修正で実装情報の要素を削除
することによって生じる。
The non-equivalent means a component that does not correspond in the element configuration 32 of the mounting information after the change and the element configuration 31 of the design information before the change. The non-equivalent elements include an isolated element on the mounting information side and an isolated element on the design information side. The isolated element on the implementation information side is generated by adding a new element to the implementation information by modifying the source code. The isolated element on the design information side is generated by deleting the element of the implementation information by modifying the source code.

【0081】論理リンクは、図11に示すように、実装
情報要素集合の親集合の各要素について行い、続いて各
要素に付属する子集合の各要素について行う。ツリー構
造の要素構成では、ツリーの頂点の要素から論理リンク
を行い、下方に向かって扇状に各要素の論理リンクを展
開する。
As shown in FIG. 11, the logical link is performed for each element of the parent set of the mounting information element set, and subsequently for each element of the child set attached to each element. In the element structure of the tree structure, logical links are made from the top element of the tree, and the logical links of the respective elements are expanded downward in a fan shape.

【0082】上記論理IDは、図12に示すように、プ
ロダクト名と、バージョン名と、整数値からなる。プロ
ダクト名は、情報の保存や取り出しを管理する単位の名
前である。バージョン名はプロダクト名のバージョンを
表す文字列ないし値である。整数値は、所定のバージョ
ンの管理単位内(たとえば所定バージョンのファイル
内)で、特定のフレーム要素を一意的に決定する整数値
である。
As shown in FIG. 12, the logical ID consists of a product name, a version name, and an integer value. The product name is the name of the unit that manages the storage and retrieval of information. The version name is a character string or a value that represents the version of the product name. The integer value is an integer value that uniquely determines a specific frame element within a management unit of a predetermined version (for example, within a file of a predetermined version).

【0083】すべての構成要素について、比較・論理リ
ンク付けをした後は、同値のフレーム要素については、
それに付属する設計固有要素およびガイダンス要素を次
のスパイラル型ソフトウェア開発のサイクルで再利用す
る。非同値のフレーム要素については、ソフトウェア開
発者によって、整合性があるように設計情報側の要素を
修正する。また、非等価のフレーム要素については、設
計情報側の要素を追加・削除する。この作業を通じて、
設計情報要素構成31と実装情報要素構成32は完全に
整合し、各要素間は論理リンクによって結合される。
After comparing and logically linking all the constituent elements, regarding the frame elements having the same value,
Reuse the design-specific and guidance elements that come with it in the next spiral software development cycle. For non-equivalent frame elements, the software developer modifies the elements on the design information side to make them consistent. For non-equivalent frame elements, elements on the design information side are added or deleted. Through this work,
The design information element configuration 31 and the mounting information element configuration 32 are completely matched, and the elements are connected by a logical link.

【0084】図13は、変更前の設計情報の構成要素が
再利用されることを説明した図である。図において、実
装情報側で記号Aで示す要素は変更されず、記号Bで示
す要素は削除され、記号Cで示す要素は追加されたもの
とすると、論理リンクによって変更されなかった設計情
報側の要素aが識別され、この要素aは再利用される。
FIG. 13 is a diagram for explaining that the components of the design information before the change are reused. In the figure, it is assumed that the element indicated by the symbol A is not changed on the mounting information side, the element indicated by the symbol B is deleted, and the element indicated by the symbol C is added, on the side of the design information which is not changed by the logical link. Element a is identified and this element a is reused.

【0085】実装情報側で削除された要素Bに対応する
設計情報側の要素bは、論理リンクを形成する段階で削
除される。また、実装情報側で追加された要素Cについ
ては、設計情報側に新たなフレーム要素cが形成され
る。
The element b on the design information side corresponding to the element B deleted on the mounting information side is deleted at the stage of forming a logical link. As for the element C added on the mounting information side, a new frame element c is formed on the design information side.

【0086】上述したことから明らかなように、この方
法によれば、設計情報側の構成要素のうち、ソースコー
ドの修正で変更がされなかった要素aについては、前回
のサイクルで作成したものをそのまま次のスパイラル型
ソフトウェア開発のサイクルで再利用でき、効率よいス
パイラル型ソフトウェア開発をすることができる。
As is apparent from the above, according to this method, among the constituent elements on the design information side, the element a which has not been changed by the modification of the source code is the one created in the previous cycle. It can be reused as it is in the next spiral type software development cycle, and efficient spiral type software development can be performed.

【0087】上記設計情報の再利用と同様に、本発明に
よれば、実装情報を再利用することもできる。図14
は、設計情報の変更を実装情報に反映するときの実装情
報の再利用の方法を示している。
According to the present invention, the mounting information can be reused as in the case of reusing the design information. 14
Shows a method of reusing the mounting information when a change in the design information is reflected in the mounting information.

【0088】図14に示す方法では、設計情報側の設計
情報エディタ2a,…,2cによる変更を命令として各
フレーム要素に蓄積しておく。設計情報をソースコード
化するときに、等価かつ最新の実装情報(前バージョ
ン)を実装情報データベース4から取り出し、その実装
情報に対して設計情報の各命令を逐次実行していく。こ
れによって、実装情報を更新するとともに、ソースコー
ドを生成する。
In the method shown in FIG. 14, the changes made by the design information editors 2a, ..., 2c on the design information side are stored as instructions in each frame element. When the design information is converted into a source code, the equivalent and latest mounting information (previous version) is fetched from the mounting information database 4 and each instruction of the design information is sequentially executed with respect to the mounting information. As a result, the implementation information is updated and the source code is generated.

【0089】この方法によれば、なんら命令が蓄積され
ていない設計情報要素、すなわち、変更されていない要
素については、前バージョンの実装情報がそのまま流用
され、スパイラル型ソフトウェア開発の次のサイクルで
再利用される。
According to this method, for the design information element in which no instruction is stored, that is, the element which has not been changed, the mounting information of the previous version is used as it is, and it is reused in the next cycle of the spiral type software development. Used.

【0090】図15は、変更された設計情報を実装情報
に反映する他の方法を示している。この方法では、変更
された設計情報に基づいて現バージョンの実装情報を生
成する。この現バージョンの実装情報と設計情報の間
に、図示するように論理リンクを生成する。この時点で
は、現バージョンの実装情報の各フレーム要素は、表現
要素を有していない。
FIG. 15 shows another method for reflecting the changed design information in the mounting information. In this method, the mounting information of the current version is generated based on the changed design information. A logical link is generated between the mounting information of this current version and the design information, as shown in the figure. At this point, each frame element of the implementation information of the current version has no expression element.

【0091】次に、実装情報データベース4から、「空
間等価」な実装情報、すなわち前バージョンの実装情報
を取得する。ここで、「空間等価」とは、前記論理ID
のプロダクト名と整数値が等しく、バージョン名のみ異
なるものをいう。
Next, the "spatial equivalent" mounting information, that is, the mounting information of the previous version is acquired from the mounting information database 4. Here, “spatial equivalence” means the logical ID
Product name and integer value are the same, but only the version name is different.

【0092】次に、前バージョンの実装情報の表現等の
付属要素を、論理IDを介して、現バージョンの実装情
報に付加する。
Next, an attachment element such as a representation of the mounting information of the previous version is added to the mounting information of the current version via the logical ID.

【0093】これによって、前バージョンまでに作成さ
れた表現等の付属要素が再利用される。
By this, attached elements such as expressions created up to the previous version are reused.

【0094】また、本発明のスパイラル型オブジェクト
指向ソフトウェア開発支援システムおよびソフトウェア
開発方法によれば、共通のオブジェクト指向ソフトウェ
アを複数の技術者が異なる種類のコンピュータ言語で開
発することができる。これはフレーム要素が、図5に示
すように、複数の表現要素を付属させていることと、書
式情報記憶装置5がソースコードジェネレータ6の要求
に応じて所定の書式情報を出力することとによって達成
される。
Further, according to the spiral object-oriented software development support system and software development method of the present invention, a plurality of engineers can develop common object-oriented software in different types of computer languages. This is because the frame element has a plurality of expression elements attached thereto as shown in FIG. 5, and the format information storage device 5 outputs predetermined format information in response to a request from the source code generator 6. To be achieved.

【0095】すなわち、本発明によれば、オブジェクト
の属性やメソッドなどソフトウェアの実体をなす情報が
各フレーム要素に含まれており、その情報が表現によっ
て各種のソースコードに変換され、かつ、各フレーム要
素ごとに独立して上記方法によってスパイラル的に開発
できるので、共通のソフトウェアを複数の異なる種類の
コンピュータ言語によって同時に開発することができる
のである。
That is, according to the present invention, each frame element includes information that constitutes the substance of software such as an attribute and a method of an object, the information is converted into various source codes by expression, and each frame is converted. Since each element can be independently developed spirally by the above method, common software can be simultaneously developed by a plurality of different kinds of computer languages.

【0096】[0096]

【発明の効果】上記説明から明らかなように、本発明の
スパイラル型オブジェクト指向ソフトウェア開発支援シ
ステムおよびソフトウェア開発方法によれば、各スパイ
ラル型ソフトウェア開発のサイクルごとに開発された設
計情報と実装情報を各構成要素に分類して設計情報デー
タベースと実装情報データベースに記憶し、それらの共
通要素を論理リンクしている。
As is apparent from the above description, according to the spiral object-oriented software development support system and the software development method of the present invention, the design information and the mounting information developed in each spiral software development cycle are stored. Each component is classified and stored in the design information database and the mounting information database, and those common elements are logically linked.

【0097】このような構成により、設計情報や実装情
報のいずれか一方を変更したときは、論理リンクによっ
て変更された構成要素と変更されていない構成要素を選
別し、変更されていない構成要素をそのまま再利用する
ことができる。
With this configuration, when any one of the design information and the mounting information is changed, the changed component and the unchanged component are selected by the logical link, and the unchanged component is selected. It can be reused as it is.

【0098】これによって、スパイラル型ソフトウェア
開発の各サイクルにおいて、前回のサイクルまでに開発
されたソフトウェア部分が再現され、必要最小限の修正
のみを行うことができ、効率よいスパイラル型ソフトウ
ェア開発を行うことができる。
As a result, in each cycle of spiral type software development, the software portion developed up to the previous cycle is reproduced, only the minimum necessary corrections can be made, and efficient spiral type software development is carried out. You can

【0099】また、本発明のスパイラル型オブジェクト
指向ソフトウェア開発支援システムの書式情報記憶装置
は、異なる種類のコンピュータ言語の書式情報を格納し
た書式ファイルを有し、ソースコードジェネレータの要
求に応じて適当な書式情報を提供し、また、各フレーム
要素は異なる種類の表現要素を有しているので、フレー
ム要素ごとに異なる種類のコンピュータ言語によって共
通のソフトウェアを開発できるスパイラル型ソフトウェ
ア開発方法を提供することができる。
Further, the format information storage device of the spiral type object-oriented software development support system of the present invention has a format file storing format information of different kinds of computer languages, and is suitable according to the request of the source code generator. Format information is provided, and since each frame element has different types of expression elements, it is possible to provide a spiral type software development method capable of developing common software by different types of computer languages for each frame element. it can.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明のスパイラル型オブジェクト指向ソフト
ウェア開発支援システムの構成を示した図。
FIG. 1 is a diagram showing the configuration of a spiral object-oriented software development support system of the present invention.

【図2】本発明のスパイラル型オブジェクト指向ソフト
ウェア開発方法の各工程を示した図。
FIG. 2 is a diagram showing each step of the spiral object-oriented software development method of the present invention.

【図3】設計情報と実装情報の要素構成を例示した図。FIG. 3 is a diagram exemplifying an element configuration of design information and mounting information.

【図4】図3の要素構成の元となるオブジェクト指向ソ
フトウェアのツリー構造を例示した図。
4 is a diagram exemplifying a tree structure of object-oriented software which is a source of the element configuration of FIG.

【図5】各フレーム要素の構成を示した図。FIG. 5 is a diagram showing a configuration of each frame element.

【図6】各フレーム要素の各表現の内容と構造を示した
図。
FIG. 6 is a diagram showing the content and structure of each expression of each frame element.

【図7】実装情報の各フレーム要素を所定のコンピュー
タ言語のソースコードに変換する方法を説明した図。
FIG. 7 is a diagram illustrating a method of converting each frame element of implementation information into a source code of a predetermined computer language.

【図8】設計情報と実装情報から生成されるソースコー
ドの例を示した図。
FIG. 8 is a diagram showing an example of a source code generated from design information and mounting information.

【図9】設計情報の要素と実装情報の構成要素が格納さ
れる装置と、これらが表されているドキュメントと、そ
の相互の関係を示した図。
FIG. 9 is a diagram showing a device in which elements of design information and components of mounting information are stored, documents representing these elements, and their mutual relationships.

【図10】変更後の実装情報要素構成と変更前の設計情
報要素構成の論理リンクの方法を示した図。
FIG. 10 is a diagram showing a method of logically linking the mounting information element configuration after the change and the design information element configuration before the change.

【図11】図10の論理リンクの展開を示した図。11 is a diagram showing the expansion of the logical link of FIG.

【図12】論理リンクで使用される論理IDの構成を示
した図。
FIG. 12 is a diagram showing a configuration of a logical ID used in a logical link.

【図13】ソースコードから設計図を生成するときに、
設計情報の構成要素が再利用される様子を説明した図。
[Fig. 13] When generating a design drawing from source code,
FIG. 4 is a diagram illustrating a manner in which a component of design information is reused.

【図14】変更した設計情報を変更前の実装情報に反映
させる第一の方法を説明した図。
FIG. 14 is a diagram illustrating a first method of reflecting changed design information on mounting information before change.

【図15】変更した設計情報を変更前の実装情報に反映
させる第二の方法を説明した図。
FIG. 15 is a diagram illustrating a second method for reflecting the changed design information in the mounting information before the change.

【図16】スパイラル型ソフトウェア開発方法の概念を
示した図。
FIG. 16 is a diagram showing the concept of a spiral software development method.

【図17】従来のスパイラル型ソフトウェア開発方法に
よる各工程と、それによって生成される各種ドキュメン
トを示した図。
FIG. 17 is a diagram showing each step by a conventional spiral type software development method and various documents generated by the step.

【図18】設計情報と実装情報の構成要素の関係を示し
た図。
FIG. 18 is a diagram showing a relationship between components of design information and mounting information.

【図19】従来のスパイラル型ソフトウェア開発方法
で、設計ドキュメントから修正用ソースコードを生成す
るときの情報要素の入れ替えの様子を示した図。
FIG. 19 is a diagram showing how information elements are exchanged when a modification source code is generated from a design document by a conventional spiral software development method.

【図20】従来のスパイラル型ソフトウェア開発方法
で、変更後のソースコードから設計図等を生成するとき
の情報要素の入れ替えの様子を示した図。
FIG. 20 is a diagram showing how the information elements are replaced when a design drawing or the like is generated from the changed source code in the conventional spiral software development method.

【符号の説明】[Explanation of symbols]

1 スパイラル型オブジェクト指向ソフトウェア開発支
援システム 2 設計情報エディタ 3 設計情報データベース 4 実装情報データベース 5 書式情報記憶装置 6 ソースコードジェネレータ 7 設計情報抽出装置 8 実装情報抽出装置 9 設計情報/実装情報リンク装置 10 管理装置
1 Spiral Object Oriented Software Development Support System 2 Design Information Editor 3 Design Information Database 4 Mounting Information Database 5 Format Information Storage Device 6 Source Code Generator 7 Design Information Extracting Device 8 Mounting Information Extracting Device 9 Design Information / Mounting Information Link Device 10 Management apparatus

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】ソフトウェアの設計図や仕様書を編集する
設計情報エディタと、 前記設計図や仕様書に含まれる設計情報を格納する設計
情報データベースと、 前記設計情報をソースコードに実装するための実装情報
を格納する実装情報データベースと、 使用するコンピュータ言語に固有の書式情報を格納した
少なくとも一つの書式ファイルを記憶している書式情報
記憶装置と、 最新の前記設計情報と前記実装情報の必要部分と前記書
式情報とを入力してソースコードを生成するソースコー
ドジェネレータと、 変更されたソースコードの設計情報を前記設計情報デー
タベースに反映する設計情報抽出装置と、 変更されたソースコードの実装情報を前記実装情報デー
タベースに反映する実装情報抽出装置と、 前記設計情報データベースと前記実装情報データベース
との間の対応関係を維持する設計情報/実装情報リンク
装置と、 システム全体を管理する管理装置とを有することを特徴
とするスパイラル型オブジェクト指向のソフトウェア開
発支援システム。
1. A design information editor for editing software design drawings and specifications, a design information database for storing design information included in the design drawings and specifications, and a design information database for implementing the design information in a source code. A mounting information database that stores mounting information, a format information storage device that stores at least one format file that stores format information specific to the computer language used, and the latest design information and necessary parts of the mounting information. A source code generator for generating a source code by inputting the above-mentioned format information, a design information extraction device for reflecting the changed source code design information in the design information database, and a changed source code implementation information. A mounting information extracting device which reflects the mounting information database; the design information database; A spiral object-oriented software development support system comprising: a design information / mounting information link device for maintaining a correspondence relationship with a packaging information database; and a management device for managing the entire system.
【請求項2】前記書式ファイルは複数のコンピュータ言
語に対応する書式情報を有し、使用者の要求に応じて所
定種類の書式情報を出力するように構成されていること
を特徴とする請求項1記載のスパイラル型オブジェクト
指向のソフトウェア開発支援システム。
2. The format file has format information corresponding to a plurality of computer languages, and is configured to output a predetermined type of format information in response to a user's request. 1. A spiral object-oriented software development support system according to 1.
【請求項3】前記設計情報/実装情報リンク装置は、設
計情報と実装情報の共有要素どうしを比較して論理リン
クを生成することにより、ソースコードと設計図や仕様
書の要素間の対応関係を維持することを特徴とする請求
項1記載のスパイラル型オブジェクト指向のソフトウェ
ア開発支援システム。
3. The design information / mounting information link device compares the shared elements of the design information and the mounting information to generate a logical link, and thereby the correspondence relationship between the source code and the element of the design drawing or the specification document. The spiral object-oriented software development support system according to claim 1, wherein
【請求項4】要求仕様に応じてソフトウェアを構成部分
たるオブジェクトに分割し、それぞれ設計とコーディン
グと評価と要求仕様の見直しの段階を繰り返しながらソ
フトウェアを完成していくスパイラル型オブジェクト指
向のソフトウェア開発方法において、 設計図や仕様書の設計情報を、設計図や仕様書にのみ固
有な情報である設計固有要素と、オブジェクト指向的観
点から本質的であるフレーム要素と、前記フレーム要素
を説明するガイダンス要素とに分類して記憶する設計情
報データベースと、 前記設計情報をソースコードに実装する実装情報を、フ
レーム要素と、ガイダンス要素と、フレーム要素の属性
を示すリーフ要素とに分類して記憶する実装情報データ
ベースと、 各コンピュータ言語に固有の書式情報たるグルー要素を
格納する書式ファイルとを用いて、 最初に要求仕様に基づいてソフトウェアの設計図や仕様
書を作成し、この設計図や仕様書の設計情報を前記設計
情報データベースに記憶し、それに対応する実装情報を
前記実装情報データベースに記憶する第1工程と、 前記設計情報データベースと前記実装情報データベース
から最新のフレーム要素とガイダンス要素とリーフ要素
を取得するとともに、前記書式ファイルからソースコー
ドの言語に対応するグルー要素を選択してソースコード
を生成する第2工程と、 前記ソースコードを修正する第3工程と、 修正後のソースコードを設計図や仕様書に変換するとと
もに、ソースコード修正段階で変更されたフレーム要
素、ガイダンス要素およびリーフ要素を前記設計情報デ
ータベースと実装情報データベースに書き込む第4工程
と、 前記設計図や仕様書を見直して必要に応じて修正すると
ともに、設計図/仕様書修正段階で変更されたフレーム
要素、ガイダンス要素、設計固有要素およびリーフ要素
を前記設計情報データベースと実装情報データベースに
書き込む第5工程と、 上記第1工程を完了した後に、上記第2工程ないし第4
工程を順次繰り返しながらソフトウェアを完成してゆく
ことを特徴とするスパイラル型オブジェクト指向のソフ
トウェア開発方法。
4. A spiral object-oriented software development method in which software is divided according to requirement specifications into objects, which are constituent parts, and the software is completed by repeating the steps of designing, coding, evaluation, and reviewing requirement specifications. In, the design information of the design drawing and the specification document, the design-specific element that is information unique only to the design drawing and the specification document, the frame element that is essential from an object-oriented viewpoint, and the guidance element that explains the frame element. And a design information database for classifying and storing the design information into the source code, and mounting information for classifying and storing the frame information, the guidance element, and the leaf element indicating the attribute of the frame element. A database and glue elements, which are format information specific to each computer language, are stored. First, create a software design drawing and specifications based on the required specifications, and store the design information of the design drawings and specifications in the design information database, and store the corresponding mounting information. A first step of storing in the mounting information database; obtaining the latest frame element, guidance element and leaf element from the design information database and the mounting information database, and a glue element corresponding to the language of the source code from the format file. The second step of selecting the source code to generate the source code, the third step of modifying the source code, and converting the modified source code into a design drawing or specifications and changing the frame in the source code modification stage. Elements, guidance elements and leaf elements are added to the design information database and implementation information database. And the fourth step of writing in the design drawing and the specification sheet, and if necessary, amending the frame element, the guidance element, the design-specific element and the leaf element which are changed at the design drawing / specification sheet amendment stage. The fifth step of writing in the information database and the mounting information database, and the second to fourth steps after completing the first step.
A spiral object-oriented software development method characterized by completing the software by repeating the steps in sequence.
【請求項5】単一のオブジェクト指向のソフトウェア
で、フレーム要素ごとに前記書式ファイルから対応する
グルー要素を選択可能にすることにより、フレーム要素
ごとに異なるコンピュータ言語による表現を許容するこ
とを特徴とする請求項4に記載のスパイラル型オブジェ
クト指向ソフトウェア開発方法。
5. A single object-oriented software, which allows corresponding glue elements to be selected from the format file for each frame element, thereby allowing different frame language expressions in different computer languages. The spiral object-oriented software development method according to claim 4.
JP27422993A 1993-11-02 1993-11-02 Development support system for spiral object-oriented software Expired - Lifetime JP3759630B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27422993A JP3759630B2 (en) 1993-11-02 1993-11-02 Development support system for spiral object-oriented software

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27422993A JP3759630B2 (en) 1993-11-02 1993-11-02 Development support system for spiral object-oriented software

Publications (2)

Publication Number Publication Date
JPH07129382A true JPH07129382A (en) 1995-05-19
JP3759630B2 JP3759630B2 (en) 2006-03-29

Family

ID=17538819

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27422993A Expired - Lifetime JP3759630B2 (en) 1993-11-02 1993-11-02 Development support system for spiral object-oriented software

Country Status (1)

Country Link
JP (1) JP3759630B2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1031586A (en) * 1996-07-15 1998-02-03 Nec Corp Program generation device
JPH11224186A (en) * 1998-02-05 1999-08-17 Nippon Steel Corp Device and method for analyzing software
JP2007079906A (en) * 2005-09-14 2007-03-29 Hitachi Software Eng Co Ltd Source code generator
JP2010003104A (en) * 2008-06-20 2010-01-07 Internatl Business Mach Corp <Ibm> Development support apparatus, method, and program
US7721253B2 (en) 2005-03-23 2010-05-18 Ns Solutions Corporation Software development support system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1031586A (en) * 1996-07-15 1998-02-03 Nec Corp Program generation device
JPH11224186A (en) * 1998-02-05 1999-08-17 Nippon Steel Corp Device and method for analyzing software
US7721253B2 (en) 2005-03-23 2010-05-18 Ns Solutions Corporation Software development support system
JP2007079906A (en) * 2005-09-14 2007-03-29 Hitachi Software Eng Co Ltd Source code generator
JP2010003104A (en) * 2008-06-20 2010-01-07 Internatl Business Mach Corp <Ibm> Development support apparatus, method, and program

Also Published As

Publication number Publication date
JP3759630B2 (en) 2006-03-29

Similar Documents

Publication Publication Date Title
JPH0512095A (en) Coding, storing and recovering means and method of hierarchical structural data processing information for computer-system
JPH10320207A (en) System and method for developing object oriented application
US20040158820A1 (en) System for generating an application framework and components
US20130185627A1 (en) Supporting generation of transformation rule
JPH05324713A (en) Method and system for natural language processing
US20030007014A1 (en) User interface system for composing an image page layout
JP5147240B2 (en) Method and system for reversible design tree transformation
Goldschmidt et al. Classification of concrete textual syntax mapping approaches
Atkinson et al. Harmonizing textual and graphical visualizations of domain specific models
JP2008225898A (en) Conversion device, conversion program, and conversion method
JP3759630B2 (en) Development support system for spiral object-oriented software
US20050177818A1 (en) Integration of external tools into an existing design environment
CN111930362A (en) Prefab development system and creation method based on UE4 platform
JP2006011756A (en) Program converting program, program converting device and program converting method
CN116243893A (en) Low code output method
Garlan et al. Transformgen: automating the maintenance of structure-oriented environments
JP5532811B2 (en) Parts catalog creation support device, program, and parts catalog creation support method
Schröpfer et al. A Generic Projectional Editor for EMF Models.
JP2003316834A (en) Linkage system of 3d-cad and pdm systems
KR100576941B1 (en) Metamodel-based model transformation apparatus
JP4354719B2 (en) Program development support program
JP4154164B2 (en) Knowledge reuse system
JPH0969041A (en) Generation support method for software component
Hammoudi et al. From mapping specification to model transformation in MDA: conceptualization and prototyping
JP2005251120A (en) Fa apparatus interface integrating device

Legal Events

Date Code Title Description
A521 Written amendment

Effective date: 20031208

Free format text: JAPANESE INTERMEDIATE CODE: A523

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040109

A521 Written amendment

Effective date: 20040310

Free format text: JAPANESE INTERMEDIATE CODE: A523

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Effective date: 20040420

Free format text: JAPANESE INTERMEDIATE CODE: A911

A912 Removal of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20040514

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051111

A61 First payment of annual fees (during grant procedure)

Effective date: 20060104

Free format text: JAPANESE INTERMEDIATE CODE: A61

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Year of fee payment: 4

Free format text: PAYMENT UNTIL: 20100113

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

Free format text: PAYMENT UNTIL: 20100113

Year of fee payment: 4

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

Year of fee payment: 5

Free format text: PAYMENT UNTIL: 20110113

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

Free format text: PAYMENT UNTIL: 20120113

Year of fee payment: 6

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

Year of fee payment: 6

Free format text: PAYMENT UNTIL: 20120113

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

Free format text: PAYMENT UNTIL: 20130113

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20140113

Year of fee payment: 8

EXPY Cancellation because of completion of term