JPH07121372A - Class succession relation derivation system - Google Patents

Class succession relation derivation system

Info

Publication number
JPH07121372A
JPH07121372A JP5262333A JP26233393A JPH07121372A JP H07121372 A JPH07121372 A JP H07121372A JP 5262333 A JP5262333 A JP 5262333A JP 26233393 A JP26233393 A JP 26233393A JP H07121372 A JPH07121372 A JP H07121372A
Authority
JP
Japan
Prior art keywords
class
superclass
deriving
abstract
input
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.)
Pending
Application number
JP5262333A
Other languages
Japanese (ja)
Inventor
Junichi Yamada
純一 山田
Seiichi Kasama
誠一 笠間
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Hitachi Solutions East Japan Ltd
Original Assignee
Hitachi Ltd
Hitachi Tohoku Software Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd, Hitachi Tohoku Software Ltd filed Critical Hitachi Ltd
Priority to JP5262333A priority Critical patent/JPH07121372A/en
Publication of JPH07121372A publication Critical patent/JPH07121372A/en
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

PURPOSE:To improve the quality and performance of a software and to improve development efficiency by automatically deriving class succession relation in the development of the object oriented software. CONSTITUTION:Concerning the class succession relation derivation system for the object oriented software development, this system is provided with an abstract word registration part 5 for successively relating respective phrases expressing abstract meaning concerning information, which contains class names, peculiar for classes with phrases at the higher degree of abstraction and for registering those phrases while hierarchizing them for each abstract degree level, and a super class derivation part 6 for reading the phrases making the class name of an input class abstract into one hierarchy and the respective phrases of the input class made abstract at this abstract degree level from this abstract word registration part 5 and for deriving the super class of the input class by combining these respective phrases made abstract and the respective phrases of input class diversion.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、オブジェクト指向によ
るソフトウェア開発技術に係わり、特に、クラス定義を
効率良く行うのに好適なクラス継承関係導出システムに
関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an object-oriented software development technique, and more particularly to a class inheritance relationship deriving system suitable for efficiently defining classes.

【0002】[0002]

【従来の技術】オブジェクト指向によるソフトウェア開
発は、開発対象が必要とするオブジェクトを、そのオブ
ジェクトの構造を示すデータ型(このデータ型をクラス
という)でモデル化することで行う。例えば、航空機管
理システムにおいて、「民間機」の「乗務員数」と「最
高速度」を管理する必要がある場合、「乗務員数」、
「最大飛行速度」というデータの表現形式(データ型)
を持った「民間機」というクラスを定義する。この場
合、「乗務員が3人の民間機」、「乗務員が2人の民間
機」等の具体的なデ−タを持つものがクラス「民間機」
に属するオブジェクトである。
2. Description of the Related Art Object-oriented software development is performed by modeling an object required by a development target with a data type indicating the structure of the object (this data type is called a class). For example, in the aircraft management system, when it is necessary to manage the "crew number" and "maximum speed" of the "commercial aircraft", the "crew number",
Data expression format (data type) of "maximum flight speed"
Define a class called "commercial plane" with. In this case, those with specific data such as "commercial aircraft with three crew members" and "commercial aircraft with two crew members" are class "commercial aircraft".
Object that belongs to.

【0003】オブジェクト指向におけるクラスの継承に
ついての従来技術には、ジェームズ・ランボー、マイケ
ル・ブラハ、ウィリアム・プレメラニ、フレデリック・
エディ、ウィリアム・ローレンセン著、羽生田栄一訳
「オブジェクト指向方法論OMT」(1992年、株式
会社トッパン発行)の第43頁から47頁に記述のもの
がある。次の図7〜図9を用いて、オブジェクト指向に
おけるクラスの継承についての説明を行う。
Prior art on object-oriented class inheritance includes James Rambo, Michael Braha, William Premelani, Frederick
Eddie, William Lorensen, Translated by Eiichi Hanyuda, "Object-Oriented Methodology OMT" (1992, published by Toppan Co., Ltd.), pages 43 to 47. The inheritance of classes in object orientation will be described with reference to FIGS.

【0004】図7は、クラスを表現する説明図、図8
は、クラス継承関係の表記法を示す説明図、図9は、ス
ーパークラスのクラス継承関係を導出する手順を示す説
明図である。図7に示すクラスの表記法は、上述の引用
文献の第31頁で詳述されているものであり、3つの領
域を持つボックスでクラス71を表す。これらの領域
は、上からクラス名、属性名、操作名を示す内容を持
つ。ここで、属性とは、クラスに属するオブジェクトに
よって保持されるデータであり、操作とは、クラスに属
するオブジェクトに対して適用される機能や関数のこと
である。また、各クラスに固有のクラス名、属性名及び
操作名等を、クラス固有の情報という。
FIG. 7 is an explanatory diagram showing a class, FIG.
FIG. 9 is an explanatory diagram showing a notation of class inheritance relationship, and FIG. 9 is an explanatory diagram showing a procedure for deriving a class inheritance relationship of superclasses. The class notation shown in FIG. 7 is described in detail on page 31 of the above cited document, and the box with three areas represents the class 71. These areas have contents indicating a class name, an attribute name, and an operation name from the top. Here, an attribute is data held by an object belonging to a class, and an operation is a function or function applied to an object belonging to a class. In addition, the class name, attribute name, operation name, etc. unique to each class are referred to as class-specific information.

【0005】図8の例では、「バス」クラス81と「タ
クシー」クラス82が「自動車」クラス83を継承して
いることを、三角形84の記号で表している。この場
合、「バス」クラス81と「タクシー」クラス82に継
承される「自動車」クラス83は、「バス」クラス81
と「タクシー」クラス82に対するスーパークラスとい
う。このようにして、より一般化したスーパークラスを
つくることで、例えば、次に「乗用車」クラスを定義す
る際には、「自動車」クラス83にすでに定義されてい
る属性や操作を定義する必要は無く、「乗用車」クラス
を表すための差分部分を定義するだけで良いことにな
る。
In the example of FIG. 8, a triangle 84 indicates that the "bus" class 81 and the "taxi" class 82 inherit the "automobile" class 83. In this case, the “automobile” class 83 inherited from the “bus” class 81 and the “taxi” class 82 is the “bus” class 81.
"Tax" class 82 is called a super class. By creating a more generalized superclass in this way, for example, when defining the "passenger car" class next time, it is not necessary to define the attributes and operations already defined in the "automobile" class 83. Instead, all that is required is to define the difference portion to represent the "passenger car" class.

【0006】上述の公知例資料の第46頁に掲載されて
いるように、クラス継承の導出手順は、対象となるシス
テム毎にシステムをモデル化し、その結果として得られ
たクラスを眺め、類似のクラスをグループにまとめて共
通のコードを選び出し、より一般的なスーパークラスを
導出することを、人間が行なっていた。図9で説明する
と、「民間機」クラス91と「旅客機」クラス92にお
ける「乗務員数」と「飛行人数」が、同じ「乗組員数」
であることを人為的に見つけ出し、「民間機」と「旅客
機」を、より一般的な「飛行機」という語に抽象化し、
「乗組員数」を属性に持つ「飛行機」クラス93をスー
パークラスとして定義していた。
As described on page 46 of the above-mentioned publicly known example material, the class inheritance derivation procedure models the system for each target system, looks at the resulting classes, and looks similar. Humans were responsible for grouping classes into common code and deriving a more general superclass. Explaining with reference to FIG. 9, the “crew number” and the “flight number” in the “commercial aircraft” class 91 and the “passenger aircraft” class 92 are the same “crew number”.
Artificially found that, "abstract" civilian aircraft and "passenger aircraft" into the more general word "airplane",
The "airplane" class 93 having "crew number" as an attribute was defined as a super class.

【0007】しかし、このような従来技術では、開発の
たびに人手により抽象化を行なっていた為に、開発者
は、開発の対象毎に、同一の単語でも繰り返し語句の抽
象化を行わなければならず開発効率が悪い。また、複数
の開発者で同時に開発を行なう際には、開発者により、
同一の単語(語句)でも一般化した単語が異なり、プロ
グラムの整合性が低下する。さらに、例えば、図9に示
した「乗務員数」と「飛行人数」の例のように、各クラ
スの属性や操作等が、一般的には同一の意味を有してい
ても、異なった語句で表現されている場合にそれが見過
ごされて、類似のプログラム開発が行われ、開発効率が
低下する等の課題がある。
However, in such a conventional technique, since the abstraction is manually performed every time the development is performed, the developer has to perform the abstraction of the repeated phrase even for the same word for each development target. And development efficiency is poor. Also, when developing with multiple developers at the same time, the developers
Even the same word (phrase) has different generalized words, which reduces the consistency of the program. Furthermore, even if the attributes and operations of each class generally have the same meaning, as in the example of “number of crew members” and “number of flight members” shown in FIG. 9, different phrases are used. If it is expressed by, it will be overlooked, similar program development will be performed, and there is a problem that development efficiency will decrease.

【0008】[0008]

【発明が解決しようとする課題】解決しようとする問題
点は、従来技術では、人手により語句を抽象化してクラ
ス継承関係の導出を行っているために、オブジェクト指
向ソフトウエアの開発効率の低下と、プログラムの整合
性の低下、および、プログラム品質の低下を回避するこ
とができない点である。本発明の目的は、これら従来技
術の課題を解決し、高信頼で高性能なオブジェクト指向
ソフトウェアの効率的な開発を可能とするクラス継承関
係導出システムを提供することである。
The problem to be solved by the present invention is that in the prior art, the efficiency of development of object-oriented software is reduced because the words are abstracted by hand to derive the class inheritance relationship. , The deterioration of program consistency, and the deterioration of program quality cannot be avoided. An object of the present invention is to provide a class inheritance relationship deriving system that solves these problems of the prior art and enables efficient development of highly reliable and high performance object-oriented software.

【0009】[0009]

【課題を解決するための手段】上記目的を達成するた
め、本発明のクラス継承関係導出システムは、(1)オ
ブジェクト指向ソフトウェア開発でのクラス設計におい
て、クラス名を含むクラス固有の情報についての抽象的
な意味を表す各々の語句を、より抽象度の高い語句に順
次に関連付け、抽象度レベル毎に階層化して登録する抽
象語登録部(図1の抽象語登録部5)と、入力されたク
ラスのクラス名に対する一階層うえの抽象度レベルで、
このクラス名を含む入力クラスの各語句の抽象化された
各語句を抽象語登録部を検索して読み出し、この読み出
した各語句と抽象語登録部に登録されていない入力クラ
スの各語句を組み合わせて、入力クラスのクラス名を抽
象化した語句をクラス名とした入力クラスのスーパーク
ラスを導出するスーパークラス導出部(図1のスーパー
クラス導出部6)とを設けることを特徴とする。また、
(2)上記(1)に記載のクラス継承関係導出システム
において、スーパークラス導出部により導出した同一抽
象度レベルの複数のスーパークラスの各々のクラス名に
対応する一階層うえの抽象度レベルの語句を、抽象語登
録部を検索して読み出し、各々読み出した語句が同一で
あれば、この同一の語句をクラス名として、スーパーク
ラス導出部と同じ手順により、複数のスーパークラスに
対応する一階層うえの抽象度レベルのスーパークラスを
導出する上位クラス導出部(図1の上位クラス導出部
7)を設けることを特徴とする。また、(3)上記
(1)、もしくは、(2)のいずれかに記載のクラス継
承関係導出システムにおいて、スーパークラス導出部お
よび上位クラス導出部のそれぞれが導出した各スーパー
クラスの格納制御を行うクラス格納部(図1のクラス格
納部8)と、このクラス格納部により格納された各スー
パークラスを新たな入力クラスとしてスーパークラス導
出部に入力するスーパークラス入力部(図1のスーパー
クラス入力部9)と、入力クラスと、スーパークラス導
出部および上位クラス導出部のそれぞれが導出した各ス
ーパークラスとを、それぞれの継承関係を関連付けた図
形で表示するクラス継承関係表示部(図1のクラス継承
関係表示部10)と、抽象語登録部への語句の登録制御
を行う語句登録制御部(図1の語句登録制御部11)と
を設けることを特徴とする。
In order to achieve the above object, the class inheritance relationship deriving system of the present invention is (1) an abstraction regarding class-specific information including a class name in class design in object-oriented software development. An abstract word registration unit (abstract word registration unit 5 in FIG. 1) for sequentially associating each word or phrase representing a specific meaning with a word or phrase having a higher abstraction level and registering the words hierarchically for each abstraction level is input. The level of abstraction one level above the class name of the class,
Search the abstract word register for each abstracted word of each word of the input class that includes this class name, and combine each read word and each word of the input class that is not registered in the abstract word register And a superclass derivation unit (a superclass derivation unit 6 in FIG. 1) for deriving a superclass of the input class having a class name that is an abstraction of the class name of the input class. Also,
(2) In the class inheritance relationship deriving system according to (1) above, a word of an abstraction level one level higher corresponding to each class name of a plurality of superclasses having the same abstraction level derived by the superclass deriving unit. , The abstract word registration unit is searched and read, and if the read phrases are the same, the same phrase is used as the class name, and the same procedure as the superclass derivation unit is performed, and one layer corresponding to a plurality of superclasses is displayed. It is characterized in that an upper class deriving unit (upper class deriving unit 7 in FIG. 1) for deriving a superclass of the abstraction level is provided. (3) In the class inheritance relationship deriving system according to (1) or (2) above, storage control of each superclass derived by the superclass deriving unit and the superclass deriving unit is performed. A class storage unit (class storage unit 8 in FIG. 1) and a superclass input unit (superclass input unit in FIG. 1) for inputting each superclass stored in this class storage unit as a new input class into the superclass derivation unit. 9), the input class, and the superclasses derived by the superclass derivation unit and the superclass derivation unit, respectively, are displayed in a class inheritance relationship display unit (class inheritance in FIG. 1) in which the respective inheritance relationships are associated with each other. A relationship display unit 10), and a word / phrase registration control unit (word / phrase registration control unit 11 in FIG. 1) that controls word / phrase registration in the abstract word registration unit. And wherein the providing.

【0010】[0010]

【作用】本発明においては、語句と、その語句を抽象化
した語句との関連を階層化して抽象語登録部に登録し、
この抽象語登録部を検索することにより、語句とその抽
象化された語句とを、人手を介さず自動的に関連づける
ことができる。このことにより、各クラス固有の情報の
類似性の見過ごしや、抽象化される語句の複数の開発者
間における不統一を回避でき、さらに、開発者が開発の
対象毎に行っていた同一語句の抽象化の繰り返しを減ら
すことができる。
In the present invention, the relation between the word and the word and the word which is abstracted from the word is hierarchized and registered in the abstract word registering unit,
By searching the abstract word registration unit, the word and the abstracted word can be automatically associated with each other without human intervention. By this, it is possible to avoid overlooking the similarity of information unique to each class and avoid inconsistency in the abstracted word among multiple developers. Furthermore, the same word that the developer did for each development target can be avoided. You can reduce the repetition of abstraction.

【0011】[0011]

【実施例】以下、本発明の実施例を、図面により詳細に
説明する。図1は、本発明のクラス継承関係導出システ
ムの本発明に係わる構成の一実施例を示すブロック図で
ある。本図において、1は磁気記憶媒体等にデータなど
を記憶するディスク装置、2はCRT(Cathode
Ray Tube、陰極線管)等に表示を行うディス
プレイ装置、3はキーボードやマウス等からなる入力装
置、4はCPU(Central Processin
g Unit、中央処理装置)やメモリ等からなり、本
発明に係わるオブジェクト指向のソフトウェア開発にお
けるクラス継承関係導出処理を行う情報処理装置であ
る。
Embodiments of the present invention will now be described in detail with reference to the drawings. FIG. 1 is a block diagram showing an embodiment of a configuration according to the present invention of a class inheritance relationship deriving system of the present invention. In the figure, 1 is a disk device for storing data on a magnetic storage medium, and 2 is a CRT (Cathode).
A display device for displaying on a Ray Tube, a cathode ray tube, etc., 3 is an input device composed of a keyboard, a mouse, etc., 4 is a CPU (Central Process)
(g Unit, central processing unit), memory, etc., and is an information processing device that performs class inheritance relationship derivation processing in object-oriented software development according to the present invention.

【0012】情報処理装置4は、クラス固有の情報につ
いての抽象的な意味を表す各々の語句を階層化して抽象
語辞書5a、5bとして登録する抽象語登録部5と、抽
象語登録部5を検索して、入力されたクラスのスーパー
クラスを導出するスーパークラス導出部6と、スーパー
クラス導出部6で導出した複数のスーパークラスを、さ
らに抽象度の高いクラスにまとめる上位クラス導出部7
と、スーパークラス導出部6および上位クラス導出部7
のそれぞれが導出した各スーパークラスをディスク装置
1に格納するクラス格納部8と、ディスク装置1に格納
された各スーパークラスを新たな入力クラスとしてスー
パークラス導出部に入力するスーパークラス入力部9
と、スーパークラス導出部6および上位クラス導出部7
のそれぞれが導出した各スーパークラスと入力装置3か
ら入力されたクラスの各継承関係を図形表示するクラス
継承関係表示部10と、抽象語登録部5への語句の登録
処理を行う語句登録制御部11とにより構成されてい
る。
The information processing device 4 includes an abstract word registration unit 5 for hierarchically registering each word representing an abstract meaning of class-specific information as an abstract word dictionary 5a, 5b, and an abstract word registration unit 5. A superclass deriving unit 6 that searches and derives a superclass of the input class, and a superclass deriving unit 7 that combines a plurality of superclasses derived by the superclass deriving unit 6 into a class with a higher degree of abstraction.
And the superclass derivation unit 6 and superclass derivation unit 7
Class storage unit 8 for storing each superclass derived by each of the above in the disk device 1, and superclass input unit 9 for inputting each superclass stored in the disk device 1 into the superclass deriving unit as a new input class.
And the superclass derivation unit 6 and superclass derivation unit 7
Class inheritance relationship display unit 10 that graphically displays each inheritance relationship between each superclass derived from each of the above and each class input from the input device 3, and a phrase registration control unit that performs a process of registering a phrase in the abstract word registration unit 5. 11 and 11.

【0013】このような構成において、システムが起動
されると、語句登録制御部11は、ディスク装置1に予
め格納されている抽象語辞書、あるいは、入力装置3か
ら入力される抽象語を抽象語登録部5に転送し、抽象語
登録部5には、クラス名や属性名、操作名等、クラス固
有の情報についての抽象的な意味を表す各々の語句が、
より抽象度の高い語句に順次に関連付けられ、抽象度レ
ベル毎に階層化され、複数の抽象語辞書5a、5bとし
て登録される。そして、入力装置3から処理対象のクラ
スが入力されると、スーパークラス導出部6は、入力さ
れたクラスのクラス名に対する一階層うえの抽象度レベ
ルの語句を抽象語登録部5から読み出し、この読み出し
た語句と同じ抽象度レベルで、入力されたクラスの各語
句に対応する抽象化された各語句を抽象語登録部5から
読み出し、これらの各語句と抽象語登録部5に登録され
ていない入力クラスの各語句を組み合わせて、入力クラ
スのクラス名の一階層うえの抽象度レベルの語句をクラ
ス名として、入力クラスに対応するスーパークラスを導
出する。
In such a configuration, when the system is started, the word / phrase registration control unit 11 causes the abstract word dictionary stored in advance in the disk device 1 or the abstract word input from the input device 3 to be an abstract word. When transferred to the registration unit 5, the abstract word registration unit 5 stores each word representing an abstract meaning of class-specific information such as a class name, an attribute name, an operation name, etc.
Words having a higher degree of abstraction are sequentially associated, hierarchized for each abstraction level, and registered as a plurality of abstract word dictionaries 5a and 5b. Then, when the class to be processed is input from the input device 3, the superclass derivation unit 6 reads out the phrase of the level of abstraction one level higher than the class name of the input class from the abstract word registration unit 5, Each abstracted word corresponding to each word of the input class is read from the abstract word registration unit 5 at the same level of abstraction as the read word, and these words and the abstract word registration unit 5 are not registered. The words of the input class are combined and the word of the class name of the input class one level above the abstraction level is used as the class name to derive the superclass corresponding to the input class.

【0014】さらに、上位クラス導出部7は、このよう
にしてスーパークラス導出部6が導出した同一抽象度レ
ベルの複数のスーパークラスの各々のクラス名を一階層
抽象化した語句を、抽象語登録部5から読み出し、各々
読み出した語句が同一であれば、この同一語句をクラス
名として、スーパークラス導出部6と同じ手順により、
複数のスーパークラスに対応する一階層うえの抽象度レ
ベルのスーパークラスを導出する。このようにして、ス
ーパークラス導出部6および上位クラス導出部7のそれ
ぞれで導出された各スーパークラスは、クラス格納部8
により、ディスク装置1に格納され、さらに、スーパー
クラス入力部9により、ディスク装置1からスーパーク
ラス導出部6に新たな入力クラスとして入力される。そ
して、スーパークラス導出部6は、このスーパークラス
入力部9を介して入力されたスーパークラスに対する抽
象化を行う。クラス継承関係表示部10は、入力装置1
からスーパークラス導出部6に入力された入力クラス
や、スーパークラス導出部6と上位クラス導出部7のそ
れぞれが導出した各スーパークラス等を、それぞれの継
承関係で関連付けて、ディスプレイ装置2で図形表示す
る。
Further, the superordinate class deriving unit 7 registers, as an abstract word, a phrase in which the class names of a plurality of superclasses of the same abstraction level derived by the superclass deriving unit 6 are abstracted by one layer. If the words read from the unit 5 are the same, the same words are used as the class name, and the same procedure as the superclass deriving unit 6 is performed.
Derive the superclass at the upper level of abstraction corresponding to multiple superclasses. In this way, each superclass derived by the superclass derivation unit 6 and the superordinate class derivation unit 7 is stored in the class storage unit 8
Then, the data is stored in the disk device 1 and is further input from the disk device 1 to the superclass deriving unit 6 as a new input class by the superclass input unit 9. Then, the superclass deriving unit 6 abstracts the superclass input via the superclass input unit 9. The class inheritance relationship display unit 10 includes the input device 1
The input class input to the superclass deriving unit 6 from each other, the superclasses derived by the superclass deriving unit 6 and the upper class deriving unit 7, and the like are associated with each other in the inheritance relationship, and displayed on the display device 2. To do.

【0015】以下、図2〜図5に基づき、本実施例のク
ラス継承関係導出システムの動作を、具体的な例を用い
て説明する。図2は、図1における抽象語登録部の登録
内容の一例を示す説明図である。本例は、図1における
抽象語登録部5の抽象語辞書5a、5bの構成例を示
し、本図における辞書番号(「1」、「2」、「3」)
は抽象度のレベルを表しており、辞書番号の下に続く各
番号列は、各語句の項番であり、また、各語句の(図
中、と記載)右側の数字は、一階層うえの抽象度レベル
の語句の項番である。例えば、辞書番号「1」の項番
「1」の「民間機」をより一般化(抽象化20)したも
のが、辞書番号「2」の項番「1」の「飛行機」であ
り、さらに抽象度レベルを上げた(抽象化21)ものが
辞書番号「3」の項番「1」の「乗り物」である。辞書
番号「2」の項番「3」の語句「乗組員数」の右側の数
字には「0」が登録され、この語句「乗組員数」を抽象
化した語句が無いことを示している。
The operation of the class inheritance relationship deriving system of this embodiment will be described below with reference to FIGS. 2 to 5 using a concrete example. FIG. 2 is an explanatory diagram showing an example of registered contents of the abstract word registration unit in FIG. This example shows a configuration example of the abstract word dictionaries 5a and 5b of the abstract word registration unit 5 in FIG. 1, and the dictionary numbers (“1”, “2”, “3”) in this figure.
Represents the level of abstraction, each number string following the dictionary number is the item number of each word, and the number to the right of each word (marked as in the figure) is one level higher. This is the item number of the word of abstraction level. For example, a more generalized (abstract 20) version of the “civil aircraft” with the item number “1” of the dictionary number “1” is the “airplane” with the item number “1” of the dictionary number “2”. The one having the higher abstraction level (abstraction 21) is the "vehicle" of the item number "1" of the dictionary number "3". "0" is registered in the number on the right side of the phrase "number of crews" of the item number "3" of the dictionary number "2", indicating that there is no phrase abstracting this phrase "number of crews".

【0016】図3は、図1におけるスーパークラス導出
部に入力されるクラスの内容の一例を示す説明図であ
る。本図において、31は、クラス名が「民間機」、属
性が「乗務員数」と「最大飛行速度」で、操作が「飛
行」の「民間機」クラスであり、32は、クラス名「旅
客機」、属性「飛行人数」と「最高速度」、操作「飛
行」の「旅客機」クラス、33は、クラス名「モーター
ボート」、属性「乗船人数」と「最大ノット数」、操作
「航行」の「モーターボート」クラス、そして、34
は、クラス名が「客船」、属性が「乗組員数」と「最大
ノット数」、操作が「航行」の「客船」クラスである。
これらの「民間機」クラス31、「旅客機」クラス3
2、「モーターボート」クラス33、「客船」クラス3
4の各入力クラスが、図1のスーパークラス導出部6に
入力され、次の図4に示すようなスーパークラスが導出
される。
FIG. 3 is an explanatory diagram showing an example of the contents of the class input to the superclass deriving unit in FIG. In the figure, 31 is the class name "commercial aircraft", the attributes "number of crew" and "maximum flight speed", the operation is "flying""commercialaircraft" class, 32 is the class name "passenger aircraft" , "Flight number" and "maximum speed", "passenger" class of operation "fly", 33 is the class name "motor boat", attribute "number of passengers" and "max knots", operation "navigation" Motorboat "class and 34
Is a "passenger ship" class with the class name "passenger ship", the attributes "number of crew members" and "maximum knots", and operation "navigation".
These "commercial aircraft" class 31, "passenger aircraft" class 3
2, "motor boat" class 33, "passenger boat" class 3
Each of the input classes 4 is input to the superclass derivation unit 6 of FIG. 1, and the superclass as shown in the next FIG. 4 is derived.

【0017】図4は、図1におけるスーパークラス導出
部によるスーパークラスの導出例を示す説明図である。
本例は、図1のスーパークラス導出部6により、図3に
おける各入力クラス(「民間機」クラス31、「旅客
機」クラス32、「モーターボート」クラス33、「客
船」クラス34)に対するスーパークラス(「飛行機」
クラス41、「船」クラス42)を導出したものであ
る。以下、その導出動作を説明する。まず初めに「民間
機」クラス31が入力されると、「民間機」クラス31
に固有の情報に対して、図1の抽象語登録部5を検索す
る。例えば、図2における抽象化20で示されるよう
に、「民間機」に対しては「飛行機」が、また、同様
に、「乗務員数」に対して「乗組員数」が読み出され
る。「最大飛行速度」と「飛行」は、図2の登録内容に
おいては、抽象度レベル「2」の辞書に登録されてお
り、そのレベルは「飛行機」という語句と同じであり、
抽象化しないでこのままの単語を用いる。
FIG. 4 is an explanatory diagram showing an example of deriving a superclass by the superclass deriving unit in FIG.
In this example, the superclass derivation unit 6 of FIG. 1 performs superclasses for each of the input classes (“civil aircraft” class 31, “passenger aircraft” class 32, “motorboat” class 33, “passenger boat” class 34) in FIG. "airplane"
It is derived from class 41, "ship" class 42). The derivation operation will be described below. First of all, when the "Civilian" class 31 is entered, the "Civilian" class 31
The abstract word registration unit 5 of FIG. 1 is searched for the information unique to the. For example, as shown by the abstraction 20 in FIG. 2, “airplane” is read for “commercial aircraft”, and similarly, “crew number” is read for “crew number”. “Maximum flight speed” and “flying” are registered in the dictionary of abstraction level “2” in the registration content of FIG. 2, and the level is the same as the phrase “airplane”,
Use the word as it is without abstraction.

【0018】これらの単語を用いて構成することで、
「民間機」クラス31のスーパークラスとして「飛行
機」クラス41が導出される。全く同様にして、残りの
3つのクラス、「旅客機」クラス32、「モーターボー
ト」クラス33、「客船」クラス34の各スーパークラ
スも導き出される。すなわち、「旅客機」クラス32に
対して「飛行機」クラス41が、また、「モーターボー
ト」クラス33と「客船」クラス34に対して「船」ク
ラス44が導出される。尚、「旅客機」クラス32にお
いては、その属性に「最高速度」があり、この「最高速
度」は、図2における抽象語辞書では、抽象度レベル
「3」で抽象度レベル「2」の「飛行機」より高いの
で、「飛行機」クラス41の属性「最大飛行速度」に合
わせる。このようにして導出された「飛行機」クラス4
1と「船」クラス42のスーパークラスは、さらに、次
の図5において説明するように、図1における上位クラ
ス導出部7により一体化される。
By constructing using these words,
The “airplane” class 41 is derived as a super class of the “civil aircraft” class 31. In exactly the same way, the remaining three classes, the "passenger plane" class 32, the "motorboat" class 33, and the "passenger ship" class 34 are derived. That is, the “airplane” class 41 is derived for the “passenger aircraft” class 32, and the “ship” class 44 is derived for the “motor boat” class 33 and the “passenger ship” class 34. In the "passenger aircraft" class 32, there is "maximum speed" in its attribute, and this "maximum speed" is "3" at the abstraction level dictionary and "2" at the abstraction level "2" in the abstract word dictionary in FIG. Since it is higher than “airplane”, it is adjusted to the attribute “maximum flight speed” of “airplane” class 41. "Airplane" class 4 derived in this way
1 and the superclass of the "ship" class 42 are further integrated by the upper class derivation unit 7 in FIG. 1, as will be described in FIG. 5 below.

【0019】図5は、図1における上位クラス導出部に
よるスーパークラスの一体化動作例を示す説明図であ
る。本例は、図1のスーパークラス導出部6により、
「民間機」クラス31、「旅客機」クラス32、「モー
ターボート」クラス33、「客船」クラス34のそれぞ
れに対応して導出されたスーパークラスである「飛行
機」クラス41と「船」クラス42を、図1における上
位クラス導出部7が、図2で示した登録内容の抽象語辞
書を用いて一体化した場合のクラスの継承関係を示すも
のである。
FIG. 5 is an explanatory diagram showing an example of superclass integration operation by the upper class derivation unit in FIG. In this example, the superclass deriving unit 6 in FIG.
The “airplane” class 41 and the “ship” class 42, which are superclasses derived corresponding to each of the “commercial aircraft” class 31, the “passenger aircraft” class 32, the “motorboat” class 33, and the “passenger boat” class 34, FIG. 3 is a diagram showing a class inheritance relationship when the upper class derivation unit 7 in FIG. 1 is integrated using the abstract word dictionary of registered contents shown in FIG.

【0020】すなわち、「飛行機」クラス41と「船」
クラス42のそれぞれのクラス名「飛行機」と「船」
は、図2の抽象語辞書において、抽象度レベル「3」の
「乗り物」で一致する。そのために、図1における上位
クラス導出部7は、まず、「飛行機」クラス41のクラ
ス名である「飛行機」という語句に対して、図2の抽象
化21により、「乗り物」を抽象語として読み出す。ま
た、属性である「乗組員数」という語句に関しては、図
2の抽象語辞書の抽象度レベル「2」の項番「3」にお
いて示されるように、その「乗組員数」の抽象語を指す
アドレスは「0」である。これは「乗組員数」の抽象語
は登録されていないことを示しているため、この語句を
流用する。
That is, "airplane" class 41 and "ship"
Class name of each class 42 "Airplane" and "Ship"
In the abstract word dictionary of FIG. 2 match with “vehicle” at the abstraction level “3”. Therefore, the upper class derivation unit 7 in FIG. 1 first reads “vehicle” as an abstract word for the word “airplane”, which is the class name of the “airplane” class 41, by the abstraction 21 in FIG. 2. . As for the word "crew number", which is an attribute, as shown in the item number "3" of the abstraction level "2" of the abstract word dictionary in FIG. 2, an address that points to the abstract word of the "crew number". Is "0". This indicates that the abstract word "number of crew members" is not registered, so this term is used.

【0021】また、同じ属性の語句「最大飛行速度」に
関しては、図2の抽象語辞書の抽象度レベル「3」の項
番「3」における「最高速度」を読み出し、操作の語句
「飛行」に対しては、図2の抽象語辞書の抽象度レベル
「3」の項番「2」における「移動」を読み出す。この
ようにして導出した「飛行機」クラス41のスーパーク
ラスは、「乗り物」クラス51となる。同様にして、
「船」クラス42に対するスーパークラスである「乗り
物」クラス51を導出する。そして、「飛行機」クラス
41と「船」クラス42のスーパークラスを「乗り物」
クラス51に一体化する。この結果、本図に示すクラス
継承関係が導き出され、このクラス継承関係図は、図1
におけるクラス継承関係表示部10により、ディスプレ
イ装置2に表示出力される。
Regarding the phrase "maximum flight speed" having the same attribute, "maximum velocity" in the item number "3" of the abstraction level "3" in the abstract word dictionary of FIG. 2 is read out, and the operation phrase "flying" is read. 2), "move" in the item number "2" of the abstraction level "3" of the abstract word dictionary of FIG. 2 is read. The super class of the “airplane” class 41 thus derived is the “vehicle” class 51. Similarly,
A "vehicle" class 51, which is a super class for the "ship" class 42, is derived. Then, "Vehicles" will be assigned to the superclasses of "Airplane" class 41 and "Ship" class 42.
Integrated into class 51. As a result, the class inheritance relationship shown in this figure is derived.
Displayed on the display device 2 by the class inheritance relationship display unit 10 in.

【0022】図6は、図1におけるクラス継承関係導出
システムの本発明に係わる処理動作例を示すフローチャ
ートである。クラスが入力されると(ステップ10
1)、入力されたクラス固有の情報であるクラス名、属
性名、操作名に対し抽象語辞書から抽象化された単語を
読み出す(ステップ102)。この読み出したクラス名
に対する単語をさらに抽象化した単語が抽象語辞書に登
録されているかどうかを調べ、スーパークラスを構成す
るか否かを判定する(ステップ103)。登録されてい
た場合、抽象語辞書から読み出した語句を用いてスーパ
ークラスを構成する(ステップ104)。尚、登録され
ていない単語は元の単語を用いる。
FIG. 6 is a flow chart showing an example of the processing operation according to the present invention of the class inheritance relationship deriving system in FIG. Once the class is entered (step 10
1) First, an abstracted word is read from the abstract word dictionary for the class name, the attribute name, and the operation name, which are the input information unique to the class (step 102). It is checked whether a word obtained by further abstracting the word corresponding to the read class name is registered in the abstract word dictionary, and it is determined whether or not to form a superclass (step 103). If it is registered, the superclass is constructed using the words and phrases read from the abstract word dictionary (step 104). The original word is used as the unregistered word.

【0023】読み込むクラスがある間(ステップ10
5)、抽象語辞書を用いてスーパークラスを導出する
(ステップ101〜104)。このようにして、複数の
スーパークラスが導出されると、各スーパークラスを比
較してクラスの一体化を行い(ステップ106)、クラ
スの継承関係を表示し(ステップ107)、かつ、各ス
ーパークラスを格納して(ステップ108)、処理を終
了する。尚、このようにして格納したスーパークラス
を、システム入力することで、さらに抽象化されたクラ
ス継承関係を導出できる。
While there are classes to read (step 10)
5) The superclass is derived using the abstract word dictionary (steps 101 to 104). In this way, when a plurality of superclasses are derived, the superclasses are compared to integrate the classes (step 106), the inheritance relationships of the classes are displayed (step 107), and Is stored (step 108), and the process ends. By inputting the superclass stored in this way into the system, a further abstracted class inheritance relationship can be derived.

【0024】以上、図1〜図6を用いて説明したよう
に、本実施例のクラス継承関係導出システムでは、抽象
語登録部において、語句とその抽象化された語句とを階
層的に関連づけており、入力クラスのスーパークラスの
導出を、この抽象語登録部を検索して行うことにより、
各クラス固有の情報の類似性を効率的に発見して、クラ
ス継承関係を効率的に導出することができる。このこと
により、従来技術において発生していた、各クラス固有
の情報の類似性の見過ごしや、複数の開発者間において
抽象化される語句の不統一を回避でき、さらに、開発者
が開発の対象毎に行っていた同一語句の抽象化の繰り返
しを減らすことができ、オブジェクト指向ソフトウェア
の開発効率を向上させることができる。
As described above with reference to FIGS. 1 to 6, in the class inheritance relationship deriving system of this embodiment, the abstract word registration unit hierarchically associates the words with the abstracted words. By deriving the superclass of the input class by searching this abstract word registration unit,
The similarity of information unique to each class can be efficiently discovered, and the class inheritance relationship can be efficiently derived. As a result, it is possible to avoid oversight of similarity of information unique to each class and inconsistency of words and phrases abstracted among multiple developers, which occur in the conventional technology. It is possible to reduce the number of repetitions of abstraction of the same word performed each time and improve the development efficiency of object-oriented software.

【0025】尚、本発明は、図1〜図6を用いて説明し
た実施例に限定されるものではなく、その要旨を逸脱し
ない範囲において種々変更可能である。例えば、本実施
例では、スーパークラス導出部で導出したスーパークラ
スに対して、直接、上位クラス導出部によるクラスの一
体化を行っているが、スーパークラス導出部で導出した
スーパークラスを、一旦、ディスク装置に格納し、この
格納したスーパークラスを読み出して、上位クラス導出
部によるクラスの一体化を行っても良い。
The present invention is not limited to the embodiments described with reference to FIGS. 1 to 6, and various modifications can be made without departing from the scope of the invention. For example, in the present embodiment, the superclass derived by the superclass derivation unit is directly integrated with the superclass derivation unit, but the superclass derived by the superclass derivation unit is It may be stored in the disk device, the stored superclass may be read out, and the upper class derivation unit may integrate the classes.

【0026】[0026]

【発明の効果】本発明によれば、人手を介さず、クラス
継承関係の導出を行うことができ、オブジェクト指向ソ
フトウエアの開発効率の向上と、プログラムの整合性の
向上、および、プログラム品質の向上ができ、高信頼で
高性能なオブジェクト指向ソフトウェアの効率的な開発
が可能である。
According to the present invention, the class inheritance relationship can be derived without human intervention, the development efficiency of object-oriented software can be improved, the consistency of programs can be improved, and the program quality can be improved. It is possible to improve and efficiently develop highly reliable and high performance object-oriented software.

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

【図1】本発明のクラス継承関係導出システムの本発明
に係わる構成の一実施例を示すブロック図である。
FIG. 1 is a block diagram showing an embodiment of a configuration according to the present invention of a class inheritance relationship deriving system of the present invention.

【図2】図1における抽象語登録部の登録内容の一例を
示す説明図である。
FIG. 2 is an explanatory diagram showing an example of registration contents of an abstract word registration unit in FIG.

【図3】図1におけるスーパークラス導出部に入力され
るクラスの内容の一例を示す説明図である。
FIG. 3 is an explanatory diagram showing an example of content of a class input to a superclass deriving unit in FIG.

【図4】図1におけるスーパークラス導出部によるスー
パークラスの導出例を示す説明図である。
FIG. 4 is an explanatory diagram showing an example of deriving a super class by a super class deriving unit in FIG.

【図5】図1における上位クラス導出部によるスーパー
クラスの一体化動作例を示す説明図である。
5 is an explanatory diagram showing an example of a superclass unifying operation by a higher class deriving unit in FIG. 1. FIG.

【図6】図1におけるクラス継承関係導出システムの本
発明に係わる処理動作例を示すフローチャートである。
FIG. 6 is a flowchart showing an example of processing operation according to the present invention of the class inheritance relationship deriving system in FIG.

【図7】クラスを表現する説明図である。FIG. 7 is an explanatory diagram showing a class.

【図8】クラス継承関係の表記法を示す説明図である。FIG. 8 is an explanatory diagram showing a notation of class inheritance relationship.

【図9】スーパークラスのクラス継承関係を導出する手
順を示す説明図である。
FIG. 9 is an explanatory diagram showing a procedure for deriving a class inheritance relationship of superclasses.

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

1 ディスク装置 2 ディスプレイ装置 3 入力装置 4 情報処理装置 5 抽象語登録部 5a、5b 抽象語辞書 6 スーパークラス導出部 7 上位クラス導出部 8 クラス格納部 9 スーパークラス入力部 10 クラス継承関係表示部 11 語句登録制御部 20、21 抽象化 31 「民間機」クラス 32 「旅客機」クラス 33 「モーターボート」クラス 34 「客船」クラス 41 「飛行機」クラス 42 「船」クラス 51 「乗り物」クラス 71 クラス 81 「バス」クラス 82 「タクシー」クラス 83 「自動車」クラス 84 三角形 91 「民間機」クラス 92 「旅客機」クラス 93 「飛行機」クラス DESCRIPTION OF SYMBOLS 1 Disk device 2 Display device 3 Input device 4 Information processing device 5 Abstract word registration unit 5a, 5b Abstract word dictionary 6 Super class derivation unit 7 Upper class derivation unit 8 Class storage unit 9 Super class input unit 10 Class inheritance relation display unit 11 Word registration control section 20, 21 Abstraction 31 "Civilian aircraft" class 32 "Passenger aircraft" class 33 "Motorboat" class 34 "Passenger boat" class 41 "Airplane" class 42 "Ship" class 51 "Vehicle" class 71 Class 81 "Bus" "Class 82" Taxi "class 83" Car "class 84 Triangle 91" Civilian "class 92" Passenger "class 93" Airplane "class

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 オブジェクト指向ソフトウェア開発での
クラス設計において、クラス名を含むクラス固有の情報
についての抽象的な意味を表す各々の語句を、より抽象
度の高い語句に順次に関連付け、抽象度レベル毎に階層
化して登録する抽象語登録手段と、入力されたクラスの
クラス名に対する一階層うえの抽象度レベルで、該クラ
ス名を含む上記入力クラスの各語句の抽象化された各語
句を上記抽象語登録手段を検索して読み出し、該読み出
した各語句と上記抽象語登録手段に登録されていない上
記入力クラスの各語句を組み合わせて、上記入力クラス
のクラス名を抽象化した語句をクラス名とした上記入力
クラスのスーパークラスを導出するスーパークラス導出
手段とを設けることを特徴とするクラス継承関係導出シ
ステム。
1. In class design in object-oriented software development, words and phrases representing an abstract meaning of class-specific information including a class name are sequentially associated with words and phrases having a higher abstraction level, and the abstraction level is set. The abstract word registration means for hierarchically registering each class, and the abstracted words of each word of the input class including the class name at the level of abstraction one level above the class name of the input class The abstract word registration means is searched and read, and the read words and phrases and the words and phrases of the input class that are not registered in the abstract word registration means are combined to abstract the class name of the input class into a class name. And a superclass deriving means for deriving a superclass of the above-mentioned input class.
【請求項2】 請求項1に記載のクラス継承関係導出シ
ステムにおいて、上記スーパークラス導出手段により導
出した同一抽象度レベルの複数のスーパークラスの各々
のクラス名に対応する一階層うえの抽象度レベルの語句
を、上記抽象語登録手段を検索して読み出し、各々読み
出した語句が同一であれば、該同一の語句をクラス名と
して、上記スーパークラス導出手段と同じ手順により、
上記複数のスーパークラスに対応する一階層うえの抽象
度レベルのスーパークラスを導出する上位クラス導出手
段を設けることを特徴とするクラス継承関係導出システ
ム。
2. The class inheritance relationship deriving system according to claim 1, wherein the superclass deriving means derives one level higher abstraction level corresponding to each class name of a plurality of superclasses of the same abstraction level. The phrase is read by searching the abstract word registering means, and if the read phrases are the same, the same phrase is used as a class name by the same procedure as the superclass deriving means.
A class inheritance relationship deriving system, characterized in that a superordinate class deriving means for deriving a superclass at an upper level of abstraction corresponding to the plurality of superclasses is provided.
【請求項3】 請求項1、もしくは、請求項2のいずれ
かに記載のクラス継承関係導出システムにおいて、上記
スーパークラス導出手段および上位クラス導出手段のそ
れぞれが導出した各スーパークラスの格納制御を行うク
ラス格納手段と、該クラス格納手段により格納された各
スーパークラスを新たな入力クラスとして上記スーパー
クラス導出手段に入力するスーパークラス入力手段と、
上記入力クラスと、上記スーパークラス導出手段および
上位クラス導出手段のそれぞれが導出した各スーパーク
ラスとを、それぞれの継承関係を関連付けた図形で表示
するクラス継承関係表示手段と、上記抽象語登録手段へ
の語句の登録制御を行う語句登録制御手段とを設けるこ
とを特徴とするクラス継承関係導出システム。
3. The class inheritance relationship deriving system according to claim 1 or 2, wherein storage control of each superclass derived by each of the superclass deriving means and the upper class deriving means is performed. Class storing means, superclass inputting means for inputting each superclass stored by the class storing means to the superclass deriving means as a new input class,
To the class inheritance relationship display means for displaying the input class and each superclass derived by each of the superclass derivation means and the superclass derivation means in a graphic form in which the respective inheritance relationships are associated, and to the abstract word registration means. A class inheritance relationship deriving system, which is provided with a phrase registration control means for controlling registration of the phrase.
JP5262333A 1993-10-20 1993-10-20 Class succession relation derivation system Pending JPH07121372A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5262333A JPH07121372A (en) 1993-10-20 1993-10-20 Class succession relation derivation system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5262333A JPH07121372A (en) 1993-10-20 1993-10-20 Class succession relation derivation system

Publications (1)

Publication Number Publication Date
JPH07121372A true JPH07121372A (en) 1995-05-12

Family

ID=17374312

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5262333A Pending JPH07121372A (en) 1993-10-20 1993-10-20 Class succession relation derivation system

Country Status (1)

Country Link
JP (1) JPH07121372A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102066479B1 (en) * 2018-10-10 2020-01-15 주식회사 알링크 Conductive filter unit, conductive filter module comprising conductive filter unit, and fine dust removal system comprising conductive filter module
JPWO2020090454A1 (en) * 2018-11-01 2021-09-02 日立Astemo株式会社 Software management device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102066479B1 (en) * 2018-10-10 2020-01-15 주식회사 알링크 Conductive filter unit, conductive filter module comprising conductive filter unit, and fine dust removal system comprising conductive filter module
JPWO2020090454A1 (en) * 2018-11-01 2021-09-02 日立Astemo株式会社 Software management device

Similar Documents

Publication Publication Date Title
US6279005B1 (en) Method and apparatus for generating paths in an open hierarchical data structure
JP3009215B2 (en) Natural language processing method and natural language processing system
JPH05324713A (en) Method and system for natural language processing
JPH0630066B2 (en) Table type language translation method
JPH02255914A (en) Automatic program producing device
KR20050033420A (en) Method and apparatus for identifying semantic structures from text
JPH02109127A (en) Specification processing method
JP2005182795A (en) System and method for indexing each level of inner structure of string over language having vocabulary and grammar
Sauer et al. Queueing network software for systems modelling
JPH08180069A (en) Word dictionary retrieval device
US7174545B2 (en) Apparatus and method for producing display application software for embedded systems
US20040004612A1 (en) Method and system for processing graphics simulation data
US4817032A (en) User programmable data processor
JPH07121372A (en) Class succession relation derivation system
JPH10289245A (en) Image processor and its control method
JP2002007177A (en) Method for defining multi-database
Smith Rapid software prototyping
JPH06266769A (en) Synonym information preparing device
US20020143748A1 (en) Method and system for providing a generic scalar function
JP3307461B2 (en) Inference equipment
LaBozzetta et al. Interactive graphics for geometry generation-A program with a contemporary design
Wilhite Foundation techniques for the development of a computer-aided engineering system for aerospace vehicles
Gentry Requirements for a geometry programming language for CFD applications
JP2020135877A (en) Method and system for automatic extraction of synonymous loan word using transliteration model
JPH0546393A (en) Expert system