JPH11219287A - Software development supporting device - Google Patents

Software development supporting device

Info

Publication number
JPH11219287A
JPH11219287A JP2055498A JP2055498A JPH11219287A JP H11219287 A JPH11219287 A JP H11219287A JP 2055498 A JP2055498 A JP 2055498A JP 2055498 A JP2055498 A JP 2055498A JP H11219287 A JPH11219287 A JP H11219287A
Authority
JP
Japan
Prior art keywords
event
class
source code
information
processing
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
JP2055498A
Other languages
Japanese (ja)
Inventor
Yoshihiro Otsuka
義浩 大塚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2055498A priority Critical patent/JPH11219287A/en
Publication of JPH11219287A publication Critical patent/JPH11219287A/en
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a software development supporting device provided with a class method mounting supporting part for automatically generating event calling logic for being the help of a developer performing complicated method mounting work. SOLUTION: A source code generation function 12 is provided with the class method mounting supporting part 30 provided with an event information obtaining part 17 for obtaining event information from the event information 11, an event-to-method relative information generation part 18 for obtaining a method corresponding to the event of the obtained event information from class information and relating them, an event processing code generation part 19 for generating a source code for calling the event based on the related event and method and a source code synthesis and output part for synthesizing the source code generated from a class diagram and the source code of an event processing.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】この発明は、計算機上でオブ
ジェクト指向ソフトウェア開発の方法論に係わり、中で
も特に、OMTによるクラス図、或いは、イベントトレ
ース図及びクラス図からオブジェクト指向言語のソース
コードを自動生成するソースコード生成部を備えたソフ
トウェア開発支援装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method for developing object-oriented software on a computer, and in particular, to automatically generate source code of an object-oriented language from a class diagram by OMT, or an event trace diagram and a class diagram. The present invention relates to a software development support device including a source code generation unit.

【0002】[0002]

【従来の技術】従来の技術について説明する前に、まず
オブジェクト指向ソフトウェア開発分野において使用さ
れる用語の意味について説明する。
2. Description of the Related Art Before describing conventional techniques, the meanings of terms used in the field of object-oriented software development will be described first.

【0003】オブジェクト指向アプローチでは、実世界
を「もの(=オブジェクト)」と、「もの」同士の「関
係」を定義した関係定義情報で構成し、システムを「も
の」と「関係」を表現したものとして構築する。
In the object-oriented approach, the real world is composed of “things (= objects)” and relation definition information defining “relationships” between “things”, and the system is expressed as “things” and “relationships”. Build as things.

【0004】オブジェクトは、オブジェクトの役割を果
たすのに必要な「属性」データと、「メソッド」と呼ば
れる手続き(プロシージャ)とで構成される。
[0004] An object is composed of "attribute" data necessary to fulfill the role of the object and a procedure called a "method".

【0005】オブジェクト指向では、個々のオブジェク
トに共通な性質を抽象化し、クラスというモデルを考
え、これを用いてシステムを表現する。クラスを使って
作成されたモデルをクラス図と呼ぶ。
In the object orientation, properties common to individual objects are abstracted, a model called a class is considered, and a system is expressed using the model. A model created using a class is called a class diagram.

【0006】プログラムの実行時に、クラスを型として
生成させたものをインスタンスと呼ぶ。
When a program is executed, a class generated as a type is called an instance.

【0007】従来例1.次に、従来例について説明す
る。クラス図の表現方法としてよく知られている方法と
して、オブジェクト指向方法論(OMT)がある。ま
た、OMTではイベントトレース図と呼ばれるクラス間
におけるイベントの発生順序を記述する図が用いられ
る。計算機上でOMTを支援する装置の一例として、米
国Rational社のツールRose/C++がよく
知られている。この装置では、クラス図やイベントトレ
ース図など各種の図の作成/編集が可能である。また、
この装置ではオブジェクト指向プログラミング言語の1
つであるC++のソースコード生成機能を持ち、クラス
図上の各クラスの定義をもとにC++のソースコードを
生成する。
Conventional Example 1. Next, a conventional example will be described. A well-known method for expressing a class diagram is an object-oriented methodology (OMT). In the OMT, a diagram called an event trace diagram that describes the order in which events occur between classes is used. As an example of a device that supports OMT on a computer, a tool Rose / C ++ manufactured by the US company Rational is well known. With this device, various diagrams such as a class diagram and an event trace diagram can be created / edited. Also,
This device uses one of the object-oriented programming languages
It has a C ++ source code generation function, and generates C ++ source code based on the definition of each class on the class diagram.

【0008】図4は、Rose/C++の機能を表わし
たブロック図である。この装置は、クラス図エディタ
1、イベントトレース図エディタ6及びソースコード生
成部であるC++ソースコード生成機能12を主要な機
能として持つ。この装置は、他にも各種エディタを持っ
ているが、本明細書では省略する。
FIG. 4 is a block diagram showing the function of Rose / C ++. This device has, as main functions, a class diagram editor 1, an event trace diagram editor 6, and a C ++ source code generation function 12, which is a source code generation unit. This device has various other editors, but is omitted in this specification.

【0009】図5は、クラス図の例を示したもので、図
には互いに矢印線で接続された3つの矩形が表現されて
いる。これら3つの矩形はクラスを示しており、51は
Driverクラス、52はAutomobileクラ
ス、53はEngineクラスを表わしている。また、
各クラスの間を結ぶ矢印線は、お互いの関係を示してお
り、54はクラス名表示領域、55は属性のリスト表示
領域、56はメソッドのリスト表示領域である。また、
矩形間の矢印線である関係57の左側にある菱形のマー
ク57aは集約をあらわし、Automobileクラ
スがEngineクラスを含んでいることを示してい
る。Rose/C++では、クラス図エディタ1を用い
て、図5のようなクラス図を作成することができる。R
ose/C++では、クラス図表示部2に図を表示し、
ユーザはクラス図要素編集部3によって、クラス図上の
要素であるクラスや属性、メソッド、関係などを編集す
る。さらに、ユーザはクラス図要素仕様編集部4によっ
て、各要素の名前や定義など詳細情報を入力していく。
そしてさらに、コード生成プロパティ編集部5によっ
て、ソースコード生成のために必要な情報を入力してい
く。
FIG. 5 shows an example of a class diagram, in which three rectangles connected by arrows are shown. These three rectangles indicate classes, 51 indicates a Driver class, 52 indicates an Automobile class, and 53 indicates an Engine class. Also,
Arrow lines connecting the classes indicate the mutual relationship, 54 is a class name display area, 55 is an attribute list display area, and 56 is a method list display area. Also,
A diamond-shaped mark 57a on the left side of the relationship 57, which is an arrow line between rectangles, indicates aggregation, and indicates that the Automobile class includes the Engine class. In Rose / C ++, a class diagram as shown in FIG. 5 can be created using the class diagram editor 1. R
Inose / C ++, a diagram is displayed on the class diagram display unit 2,
The user edits classes, attributes, methods, relationships, and the like, which are elements on the class diagram, by using the class diagram element editing unit 3. Further, the user uses the class diagram element specification editing unit 4 to input detailed information such as the name and definition of each element.
Further, the code generation property editing unit 5 inputs information necessary for generating the source code.

【0010】図6は、イベントトレース図の例を示した
ものであり、図において、58で示すUserはDri
verクラスのインスタンス、59で示すMyCarは
Automobileクラスのインスタンス、60で示
すTheEngineはEngineクラスのインスタ
ンスである。各インスタンス間の矢印線は、イベントを
示している。61で示すイベントは、UserからMy
Carへ送られるStartEngine()イベント
である。62で示すイベントはMyCarからTheE
ngineへ送られるStart()イベントであり、
StartEngine()イベントの次に発生する。
このように、イベントトレース図は、いくつかのクラス
のインスタンス間で送出されるイベント及びそれらのイ
ベントの順序を表現している。Rose/C++では、
このようなイベントトレース図を作成することができ
る。Rose/C++では、イベントトレース図表示部
7に図を表示し、ユーザはイベントトレース図要素編集
部8によって、イベントトレース図上の要素であるイン
スタンスやイベントを編集する。さらに、ユーザはイベ
ントトレース図要素仕様編集部9によって、各要素の名
前や定義など詳細情報を入力していく。
FIG. 6 shows an example of an event trace diagram. In FIG. 6, User indicated by 58 is Dri.
An instance of the ver class, MyCar denoted by 59 is an instance of the Automobile class, and TheEngine denoted by 60 is an instance of the Engine class. Arrow lines between each instance indicate events. The event indicated by 61 is from User to My
A StartEngine () event sent to Car. The event indicated by 62 is from MyCar to TheE
Start () event sent to ngine
Occurs after the StartEngine () event.
Thus, the event trace diagram represents the events dispatched between instances of several classes and the order of those events. In Rose / C ++,
Such an event trace diagram can be created. In Rose / C ++, a diagram is displayed on the event trace diagram display unit 7, and the user edits an instance or an event, which is an element on the event trace diagram, by the event trace diagram element editing unit 8. Further, the user uses the event trace diagram element specification editing unit 9 to input detailed information such as the name and definition of each element.

【0011】オブジェクト指向アプローチによる分析及
び設計の成果物であるこれらのクラス図やイベントトレ
ース図は、C++などのオブジェクト指向プログラミン
グ言語によってプログラムを実装する上で重要な設計図
となる。Rose/C++の場合、ソースコード生成機
能12によってC++ソースコードのスケルトンを生成
することができる。ソースコード生成機能12では、ク
ラス定義取得部13によって、クラス図エディタ1で作
成したクラス図のクラス情報を記憶したクラス情報10
からクラスごとの定義情報を抽出し、これらの定義情報
をクラス定義変換部14によってC++ソースコードに
置き換える。そして、ソースコード出力部15によっ
て、ソースコードを生成し、生成したソースコードをソ
ースコード16に記憶する。
[0011] These class diagrams and event trace diagrams, which are the products of analysis and design by the object-oriented approach, are important design diagrams when implementing programs using an object-oriented programming language such as C ++. In the case of Rose / C ++, the skeleton of the C ++ source code can be generated by the source code generation function 12. In the source code generation function 12, the class definition obtaining unit 13 stores the class information 10 in which the class information of the class diagram created by the class diagram editor 1 is stored.
Then, the definition information for each class is extracted from, and the definition information is replaced with the C ++ source code by the class definition conversion unit. Then, the source code output unit 15 generates a source code, and stores the generated source code in the source code 16.

【0012】イベントトレース図は、実行時の動作を示
すシナリオであり、各インスタンス間でのイベントの発
生順を示す。イベントトレース図で示されるイベント
は、受信側のインスタンスの元となるクラスが持つメソ
ッドに等しい。例えば、図6のイベントトレース図で
は、StartEngine()イベントは、受信側の
インスタンスであるMyCarのクラスAutomob
ileが持つメソッドStartEngine()と等
しい。図6のイベントトレース図でもそうなっており、
これらの情報はプログラムの実装において重要である。
しかし、Rose/C++が生成するソースコードはク
ラス図の情報だけを元にしており、イベントトレース図
の情報は全くソースコードに反映されない。
The event trace diagram is a scenario showing the operation at the time of execution, and shows the order of occurrence of events between the instances. The event shown in the event trace diagram is equal to the method of the class that is the source of the receiving instance. For example, in the event trace diagram of FIG. 6, the StartEngine () event is the class Automob of MyCar, which is an instance on the receiving side.
It is equal to the method StartEngine () of ile. This is also the case in the event trace diagram in FIG.
This information is important in the implementation of the program.
However, the source code generated by Rose / C ++ is based only on the information in the class diagram, and the information in the event trace diagram is not reflected in the source code at all.

【0013】また、Rose/C++では、クラスのイ
ンスタンス生成や削除、属性の値参照や設定といった単
純なメソッドについては、その処理本体まで実装してく
れる。しかし、その他ユーザが定義した単純でないよう
なメソッドについては、処理本体のない骨組みのみを生
成する。このようなユーザ定義のメソッドの処理本体
は、エディタ上で開発者の手作業による記述が必要であ
る。以下、これらの点について説明する。
[0013] In Rose / C ++, simple methods such as instance creation and deletion of classes, reference and setting of attribute values are implemented up to the processing body. However, for other non-simple methods defined by the user, only a skeleton without a processing body is generated. The processing body of such a user-defined method needs to be manually described by a developer on an editor. Hereinafter, these points will be described.

【0014】図6のイベントトレース図では、クラスD
river、Automobile、Engineのそ
れぞれのインスタンスUser、MyCar、TheE
ngineがある。そして、インスタンスUserから
インスタンスMyCarへ送信されるイベントStar
tEngine()、インスタンスMyCarからイン
スタンスTheEngineへ送信されるイベントSt
art()の2つのイベントがある。そして、イベント
StartEngine()が送信された後、イベント
Start()が送信されている。イベントStart
Engine()はインスタンスMyCarのメソッ
ド、イベントStart()はインスタンスTheEn
gineのメソッドであるとすると、C++ソースコー
ドでの実装において、クラスAutomobileのメ
ソッドStartEngine()の処理本体に、クラ
スEngineのメソッドStart()を呼び出す処
理を手作業で記述する必要がある。
In the event trace diagram of FIG.
River, Automobile, and Engine instances User, MyCar, and TheE, respectively.
nine. Then, the event Star transmitted from the instance User to the instance MyCar
tEngine (), an event St transmitted from the instance MyCar to the instance TheEngine
There are two events, art (). Then, after the event StartEngine () is transmitted, the event Start () is transmitted. Event Start
Engine () is a method of instance MyCar, event Start () is an instance of TheEn
If it is a method of Gine, in the implementation in the C ++ source code, it is necessary to manually describe the process of calling the method Start () of the class Engine in the processing body of the method StartEngine () of the class Mobile.

【0015】従来例2.他の従来例として、特開平9−
22358号の発明がある。特開平9−22358号の
発明の第1の目的は、ある業務を実現するためのクラス
を設計する初期段階で、オブジェクト指向アプローチに
精通していない者であっても、クラスの持つべきメソッ
ドを少ない工数で自動生成することができるクラス別メ
ソッドの自動生成方法を提供することにある。また、第
2の目的は、再利用性が高く、品質の良いクラスとなる
ように、クラスの持つべきメソッドを自動生成すること
ができるクラス別メソッドの自動生成方法を提供するこ
とにある。さらに、第3の目的は、クラスが持つべきメ
ソッドのコードを自動生成し、単純な実装作業を軽減す
ることができるクラス別メソッドの自動生成方法を提供
することにある。
Conventional example 2. Another conventional example is disclosed in
There is an invention of No. 22358. A first object of the invention of Japanese Patent Application Laid-Open No. 9-22358 is that, at an initial stage of designing a class for realizing a certain business, even if a person who is not familiar with the object-oriented approach can find a method that the class should have. An object of the present invention is to provide a method for automatically generating a method for each class that can be automatically generated with a small number of steps. A second object is to provide a method for automatically generating a method for each class, which can automatically generate a method to be possessed by a class so that the class has high reusability and high quality. Further, a third object is to provide a method for automatically generating a method for each class, which can automatically generate code of a method to be possessed by a class and can reduce a simple mounting work.

【0016】前記第1の目的を達成するために、複数の
クラス属性にそれぞれ対応した複数のメソッド生成パタ
ーン情報をパターン情報記憶手段に予め蓄積しておき、
目的とする処理機能を実現する上で必要となるクラスの
メソッドを生成する際に、クラスの名称、属性等の情報
からなるクラス定義情報及びクラス同士の関係を定める
クラス間関係情報とを定義した後、前記クラス定義情報
とクラス間関係情報とを比較し、クラス定義情報で定義
されたクラスの属性が他のクラスと関係しない単純属性
か、他のクラスと関係する関係属性かを判定し、その判
定結果の属性に対応したメソッド生成パターン情報を前
記パターン情報記憶手段から読み出し、そのメソッド生
成パターン情報を展開して前記クラス定義情報及びクラ
ス間関係情報で定義された各クラスのメソッドを生成す
ることを特徴とする。また、第2の目的を達成するため
に、関係属性を有するクラスのメソッドを生成した後、
関係するクラスの型がクラス定義情報に定義されている
か否かを判定し、定義されていなければ、その型の属性
に対応するメソッドを削除することを特徴とする。さら
に、第3の目的を達成するために、各クラスのメソッド
を生成した後、そのメソッドをコード化することを特徴
とする。
In order to achieve the first object, a plurality of method generation pattern information respectively corresponding to a plurality of class attributes are previously stored in pattern information storage means,
When generating a method of a class required to realize the target processing function, class definition information consisting of information such as class names and attributes, and inter-class relationship information that defines the relationship between classes are defined. Thereafter, comparing the class definition information and the inter-class relationship information, determine whether the attribute of the class defined in the class definition information is a simple attribute not related to another class or a related attribute related to another class, The method generation pattern information corresponding to the attribute of the determination result is read from the pattern information storage unit, and the method generation pattern information is expanded to generate a method of each class defined by the class definition information and the interclass relation information. It is characterized by the following. Also, in order to achieve the second object, after generating a method of a class having a relation attribute,
It is characterized in that it is determined whether or not the type of the related class is defined in the class definition information, and if not, the method corresponding to the attribute of the type is deleted. Further, in order to achieve the third object, a method is characterized in that after a method of each class is generated, the method is coded.

【0017】[0017]

【発明が解決しようとする課題】以上のように、従来例
1において説明したソースコード生成機能を備えたオブ
ジェクト指向分析/設計支援装置によれば、クラスのイ
ンスタンス生成や削除、クラスの属性の値参照/設定を
行うような単純なメソッドを除き、ほとんどのメソッド
を手作業で記述しなければならないという問題点があっ
た。また、作成したイベントトレース図の情報は、ソー
スコード生成機能で生成されるソースコードへ全く反映
されないという問題点があった。
As described above, according to the object-oriented analysis / design support apparatus having the source code generation function described in the first conventional example, the generation and deletion of class instances and the values of class attributes are provided. There was a problem that most methods had to be written by hand except for a simple method such as reference / setting. Further, there is a problem that the information of the created event trace diagram is not reflected at all in the source code generated by the source code generation function.

【0018】また、従来例2において説明した特開平9
−22358号の発明は、基本的なパターンのメソッド
を自動生成させるという発明であり、方法論や手段に違
いはあるものの、その趣旨に近いことを実現したものと
して、米国Rational社製品Rose/C++が
リリースされている。
Further, Japanese Patent Application Laid-Open No.
The invention of US Pat. No. 22,358 is an invention in which a method of a basic pattern is automatically generated. Although there are differences in methodologies and means, a product close to the gist of Rose / C ++, a product of the US-Ratio, Inc. Has been released.

【0019】この発明は、上記問題点に鑑みてなされた
もので、ソフトウェア開発支援装置にメソッド実装支援
部を備えることによって、複雑なメソッドの実装作業を
行う開発者の手助けとなるソフトウェア開発支援装置を
提供することを目的とする。
The present invention has been made in view of the above problems, and includes a method development support unit in a software development support device, thereby assisting a developer who performs a complicated method mounting operation. The purpose is to provide.

【0020】[0020]

【課題を解決するための手段】この発明に係るソフトウ
ェア開発支援装置は、OMT(OMTはobjectm
odeling techniqueの略、オブジェク
ト指向を使ってシステム分析や設計を進めるオブジェク
ト指向分析/設計開発方法論の1つ)の少なくともクラ
スとメソッドとクラス間の関係とをクラス情報として入
力し図示するクラス図の作成/編集作業を支援するクラ
ス図エディタと、OMTの少なくともクラスのインスタ
ンスとイベントの発生順序とをイベント情報として入力
し図示するイベントトレース図の作成/編集作業を支援
するイベントトレース図エディタと、前記クラス図エデ
ィタによって作成したクラス図のクラス情報をもとに処
理本体のソースコードを自動生成するソースコード生成
部とを有するソフトウェア開発支援装置において、前記
ソースコード生成部は、前記クラス図エディタにより入
力されたクラス情報と、前記イベントトレース図エディ
タにより入力されたイベント情報とをもとにイベントと
メソッドとを関連づけてイベントに対応するメソッドを
呼び出す処理のソースコードを作成して、前記生成した
ソースコードを、前記処理本体のソースコードに実装さ
せるクラスメソッド実装支援部を備えたことを特徴とす
る。
According to the present invention, there is provided a software development support apparatus including an OMT (OMT is an objectm).
An abbreviation of modeling technique, which is one of the object-oriented analysis / design development methodologies for promoting system analysis and design using object-oriented). At least classes, methods, and relationships between classes are input as class information and a class diagram is created and illustrated. A class diagram editor for supporting the editing / editing operation, an event trace diagram editor for inputting at least an instance of the OMT class and the order of occurrence of the event as event information, and supporting the creation / editing of an event trace diagram to be illustrated; A source code generation unit that automatically generates a source code of a processing main body based on class information of a class diagram created by a diagram editor, wherein the source code generation unit is configured to be input by the class diagram editor. Class information And a source code for a process of associating an event with a method based on the event information input by the event trace diagram editor and invoking a method corresponding to the event. It has a class method implementation support unit to be implemented in the source code of the main body.

【0021】前記クラスメソッド実装支援部は、前記ク
ラス図エディタにより入力されたクラス情報と、前記イ
ベントトレース図エディタにより入力されたイベント情
報をもとにイベントとメソッドを関連づけてイベント対
メソッド相対情報を生成するイベント対メソッド相対情
報生成部と、前記イベント対メソッド相対情報生成部に
より生成されたイベント対メソッド相対情報よりイベン
トに対応するメソッドを呼び出す処理のソースコードを
生成するイベント処理コード生成部と、前記イベント処
理コード生成により作成されたソースコードを、前記処
理本体のソースコードに合成するソースコード合成出力
部とを備えたことを特徴とする。
The class method implementation support unit associates an event with a method based on the class information input by the class diagram editor and the event information input by the event trace diagram editor to generate event-to-method relative information. An event-to-method relative information generating unit to generate, and an event processing code generating unit to generate a source code of a process of calling a method corresponding to the event from the event-to-method relative information generated by the event-to-method relative information generating unit; A source code synthesizing output unit for synthesizing a source code created by the event processing code generation into a source code of the processing body.

【0022】この発明に係るソフトウェア開発支援装置
は、OMT(OMTはobjectmodeling
techniqueの略、オブジェクト指向を使ってシ
ステム分析や設計を進めるオブジェクト指向分析/設計
開発方法論の1つ)の少なくともクラスとメソッドとク
ラス間の関係とをクラス情報として入力し図示するクラ
ス図の作成/編集作業を支援するクラス図エディタと、
OMTの少なくともクラスのインスタンスとイベントの
発生順序とをイベント情報として入力し図示するイベン
トトレース図の作成/編集作業を支援するイベントトレ
ース図エディタと、前記クラス図エディタによって作成
したクラス図の情報をもとに処理本体のソースコードを
自動生成するソースコード生成部とを有するソフトウェ
ア開発支援装置において、前記ソースコード生成部は、
前記クラス図エディタにより入力されたクラス情報と、
前記イベントトレース図エディタにより入力されたイベ
ント情報をもとにイベントとメソッドとを関連づけてイ
ベント対メソッド相対情報を生成するイベント対メソッ
ド相対情報生成部と、前記イベント対メソッド相対情報
生成部により生成されたイベント対メソッド相対情報よ
りイベントに対応するメソッドを呼び出す処理のソース
コードを生成するイベント処理コード生成部と、前記イ
ベント処理コード生成部により生成されたソースコード
を、前記処理本体のソースコードに合成するソースコー
ド合成出力部とを備えたことを特徴とする。
The software development support device according to the present invention is an OMT (OMT is an object modeling).
abbreviation of "technique", which is one of the object-oriented analysis / design development methodologies for promoting system analysis and design using object-orientation). A class diagram editor that supports editing work,
An event trace diagram editor for inputting at least an instance of the OMT class and an event occurrence order as event information and supporting creation / editing of an event trace diagram to be illustrated, and information of the class diagram created by the class diagram editor. And a source code generation unit for automatically generating the source code of the processing body, the source code generation unit,
Class information input by the class diagram editor,
An event-to-method relative information generating unit that generates event-to-method relative information by associating an event with a method based on the event information input by the event trace diagram editor; An event processing code generation unit that generates a source code of a process for calling a method corresponding to the event from the event-to-method relative information, and combining the source code generated by the event processing code generation unit with the source code of the processing body And a source code synthesizing output unit.

【0023】前記イベントトレース図エディタは、入力
されたイベント情報のイベントに対応するメソッドが、
前記クラス図エディタにより入力されたクラス情報に存
在するか否かを検索して、存在していない場合に、前記
イベント情報よりクラスを決定して、決定したクラスに
対して前記イベントをメソッドとして追加定義するイベ
ントトレース図要素仕様編集部を備えたことを特徴とす
る。
In the event trace diagram editor, a method corresponding to an event of the input event information includes:
A search is made as to whether or not it exists in the class information input by the class diagram editor, and if not, a class is determined from the event information, and the event is added as a method to the determined class. An event trace diagram element specification editing unit to be defined is provided.

【0024】前記ソフトウェア開発支援装置は、さら
に、プログラムルーチンで汎用的に用いる処理のパター
ンを処理部品として記憶する処理部品庫を備え、前記イ
ベントトレース図エディタは、入力されたイベント情報
に対して前記処理部品庫に記憶された処理部品を指定す
る処理部品割当部を備えたことを特徴とする。
The software development support apparatus further includes a processing component storage for storing processing patterns generally used in a program routine as processing components. A processing component allocating unit that specifies a processing component stored in the processing component storage is provided.

【0025】前記イベント処理コード生成部は、前記イ
ベント対メソッド相対情報をもとにイベントに対するメ
ソッドを呼び出す処理のソースコードを生成するととも
に、前記処理部品割当部によりイベント情報に対して指
定された処理部品を前記処理部品庫より取得してソース
コードを生成することを特徴とする。
The event processing code generation unit generates a source code of a process for calling a method for an event based on the event-to-method relative information, and generates a process code specified for the event information by the processing component allocation unit. The method is characterized in that a part is acquired from the processing parts storage and a source code is generated.

【0026】[0026]

【発明の実施の形態】実施の形態1.以下、本発明の第
1の実施形態について、図1,図5,図6に基づいて説
明する。図1は、本実施形態におけるシステム全体構成
を示したブロック図である。なお、従来例1で述べた図
4と同じ要素には同じ符号をつけ、説明は省略する。図
1において、17はイベント情報11からイベントと送
受信両側のインスタンスの情報を抽出するイベント情報
取得部、18はイベント情報取得部17より得たイベン
トとクラス定義取得部13より検索したイベントに対応
するメソッドとの関連付けを行い、イベント対メソッド
相対情報を生成するイベント対メソッド相対情報生成
部、19はイベント対メソッド相対情報をもとに、イベ
ントの受信側のインスタンスに対応するクラスのメソッ
ドの処理本体へ埋め込む、つまり、メソッドの処理本体
から呼び出す別のインスタンスのメソッドのソースコー
ドを生成するイベント処理コード生成部である。30は
クラスメソッド実装支援部であり、イベント情報取得部
17とイベント対メソッド相対情報生成部18とイベン
ト処理コード生成部19とソースコード合成出力部20
より構成される。また、20はクラス定義変換部14及
びイベント処理コード生成部19が生成したソースコー
ドを適切に合成し、ソースコード16を出力するソース
コード合成出力部である。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiment 1 Hereinafter, a first embodiment of the present invention will be described with reference to FIGS. FIG. 1 is a block diagram showing the overall configuration of the system according to the present embodiment. The same elements as those in FIG. 4 described in the first conventional example are denoted by the same reference numerals, and description thereof will be omitted. In FIG. 1, reference numeral 17 denotes an event information acquisition unit that extracts information on the event and instances on both sides of transmission and reception from the event information 11, and 18 corresponds to the event obtained from the event information acquisition unit 17 and the event retrieved from the class definition acquisition unit 13. An event-to-method relative information generation unit 19 for associating with a method and generating event-to-method relative information. A processing body 19 of a method of a class corresponding to an instance on the event receiving side based on the event-to-method relative information. Is an event processing code generation unit that generates source code of a method of another instance called from the processing body of the method. Reference numeral 30 denotes a class method implementation support unit, which includes an event information acquisition unit 17, an event-to-method relative information generation unit 18, an event processing code generation unit 19, and a source code synthesis output unit 20.
It is composed of Reference numeral 20 denotes a source code synthesis output unit that appropriately synthesizes source codes generated by the class definition conversion unit 14 and the event processing code generation unit 19 and outputs a source code 16.

【0027】次に、図5のクラス図及び図6のイベント
トレース図をもとにクラスメソッドを実装する例とし
て、図2のフローチャートを参照しながら、本実施の形
態におけるイベント処理部品生成の動作について説明す
る。
Next, as an example of implementing a class method based on the class diagram of FIG. 5 and the event trace diagram of FIG. 6, an operation of generating an event processing component in the present embodiment will be described with reference to a flowchart of FIG. Will be described.

【0028】まず、図5のクラス図では、Driver
クラス、Automobileクラス及びEngine
クラスを定義しており、それぞれのクラス間に関連を定
義している。開発者はクラス図要素仕様編集部4によ
り、EngineクラスがAutomobileクラス
に集約されることを定義する。また、図6のイベントト
レース図では、図5のクラス図で定義した3つのクラス
に対応するそれぞれのインスタンスを定義しており、そ
れぞれの間にイベントを定義している。開発者はイベン
トトレース図要素仕様編集部9により、Driverク
ラスのインスタンスUserからAutomobile
クラスのインスタンスMyCarへ送信されるイベント
に、AutomobileクラスのメソッドStart
Engine()を指定する。さらに、Automob
ileクラスのインスタンスMyCarからEngin
eクラスのインスタンスTheEngineへ送信され
るイベントに、EngineクラスのメソッドStar
t()を指定する。
First, in the class diagram of FIG.
Class, Automobile Class and Engine
Classes are defined, and associations are defined between each class. The developer uses the class diagram element specification editing unit 4 to define that the Engine class is aggregated into the Automobile class. Also, in the event trace diagram of FIG. 6, each instance corresponding to the three classes defined in the class diagram of FIG. 5 is defined, and an event is defined between each of them. The developer uses the event trace diagram element specification editing unit 9 to convert the Mobile class instance User into an Automobile.
The event sent to the instance MyCar of the class includes the method Start of the Automobile class.
Specify Engine (). In addition, Automob
From the instance MyCar of the ile class to Engin
The event sent to the instance TheEngine of the e class includes the method Star of the
Specify t ().

【0029】開発者がソースコード生成機能12に対し
て実行を命令すると、クラス定義取得部13は、クラス
情報10からクラスの定義情報を取得し、イベント情報
取得部17は、イベント情報11からイベント及び送受
信側のインスタンスの情報を取得する(ステップ10
1)。
When the developer instructs the source code generation function 12 to execute, the class definition obtaining unit 13 obtains the class definition information from the class information 10, and the event information obtaining unit 17 reads the event information from the event information 11. And information on the instances on the transmitting and receiving sides (step 10).
1).

【0030】次に、イベント対メソッド相対情報生成部
18は、イベント情報取得部17が取得したイベントの
受信側インスタンス情報をもとに、クラス情報の中から
該当するクラスを検索し、イベントに定義されたメソッ
ドが該当するクラスのものであることを確認する(ステ
ップ102)。
Next, the event-to-method relative information generation unit 18 searches for the corresponding class from the class information based on the receiver instance information of the event acquired by the event information acquisition unit 17 and defines the class as an event. It is confirmed that the provided method belongs to the corresponding class (step 102).

【0031】具体的には、イベント情報取得部17がS
tart()というイベントを取得し、このイベントの
受信側インスタンスTheEngineがEngine
クラスであることを知る。そして、イベント対メソッド
相対情報生成部18は、クラス情報の中からEngin
eクラスを見つけ、Engineクラスにあるメソッド
Start()がイベントstart()と同一である
ことを確認する。
Specifically, the event information acquisition unit 17
An event called "start ()" is acquired, and the receiving instance "TheEngine" of the event is "Engine".
Know that it is a class. Then, the event-to-method relative information generation unit 18 determines from the class information
Find the e class and make sure that the method Start () in the Engine class is the same as the event start ().

【0032】さらに、イベント対メソッド相対情報生成
部18は、イベントの送信側インスタンスが直前に受信
したイベントの情報を得て、そのイベントに相当するメ
ソッドを確認する(ステップ103)。
Further, the event-to-method relative information generation unit 18 obtains information on the event received immediately before by the event transmitting side instance, and checks the method corresponding to the event (step 103).

【0033】具体的には、送信側インスタンスMyCa
rにおいて、イベントStart()が呼ばれる直前の
イベントStartEngine()を取得し、そのイ
ベントがAutomobileクラスのメソッドである
ことを確認する。
Specifically, the transmitting instance MyCa
In r, the event StartEngine () immediately before the event Start () is called is acquired, and it is confirmed that the event is a method of the Automobile class.

【0034】イベント対メソッド相対情報生成部18
は、対象のイベント(ここでは、イベントStar
t())と受信側インスタンスによって示されるクラス
が持つメソッドとを組み合わせて、また一方で、送信側
インスタンスにおいて、対象のイベントの直前に受信し
たイベント(ここでは、イベントStartEngin
e())とそれを受けたインスタンスによって示される
クラスが持つメソッドとを組み合わせて、これら2つの
組み合わせを関連付けた情報を生成する(ステップ10
4)。
Event-to-method relative information generator 18
Is the target event (here, the event Star
t ()) and the method of the class indicated by the receiving instance are combined, and the event received immediately before the target event (here, the event StartEngine
e ()) and the method of the class indicated by the instance receiving it are combined to generate information that associates these two combinations (step 10).
4).

【0035】具体的には、イベント情報の1つであるイ
ンスタンスTheEngineとそのクラス情報の1つ
であるメソッドStart()とイベント情報の1つで
あるイベントStart()を組み合わせて、一方で、
インスタンスMyCarとそのメソッドStartEn
gine()とイベントStartEngine()と
を組み合わせて、これら2つの情報を関連付けた情報を
生成する。
Specifically, an instance TheEngine which is one of the event information, a method Start () which is one of the class information thereof, and an event Start () which is one of the event information are combined.
Instance MyCar and its method StartEn
Gine () and the event StartEngine () are combined to generate information that associates these two pieces of information.

【0036】イベント処理コード生成部19は、イベン
ト対メソッド相対情報生成部18が生成した情報をもと
に、C++ソースコードを生成し、どのメソッドに生成
したソースコードを埋め込むかを指定した情報を付加す
る(ステップ106)。
The event processing code generation unit 19 generates a C ++ source code based on the information generated by the event-to-method relative information generation unit 18 and stores information specifying which method to embed the generated source code in. It is added (step 106).

【0037】具体的には、インスタンスTheEngi
neのメソッドStart()を呼び出す処理をC++
ソースコードで生成して、この処理はインスタンスMy
CarのメソッドStartEngine()の中で行
われることを指定する情報を付加しておく。
Specifically, the instance TheEngi
Calling the method Start () of ne is C ++
Generated in source code, this process is an instance My
Information specifying that the operation is performed in the method StartEngine () of Car is added.

【0038】各イベントごとに、対応するメソッドの情
報取得からC++ソースコード生成までのステップ10
2〜ステップ106の処理を繰り返す(ステップ10
7)。
Step 10 from acquisition of information on the corresponding method to generation of C ++ source code for each event
Steps 2 to 106 are repeated (step 10
7).

【0039】クラス定義変換部14は、クラス定義取得
部13からクラス定義情報を受け取り、C++ソースコ
ードへ変換する(ステップ108)。
The class definition conversion unit 14 receives the class definition information from the class definition acquisition unit 13 and converts it into C ++ source code (step 108).

【0040】具体的には、図5のクラス図にあるDri
verクラス、Automobileクラス、Engi
neクラスの定義とメソッドの定義の骨組みをC++ソ
ースコードに生成する。
Specifically, Dri in the class diagram of FIG.
ver class, Automobile class, Engi
Generate skeleton of ne class definition and method definition in C ++ source code.

【0041】最後に、ソースコード合成出力部20にお
いて、クラス定義変換部14が生成したC++ソースコ
ードの指定の位置へ、イベント処理コード生成部19が
生成したC++ソースコードを挿入する(ステップ10
9)。
Finally, in the source code synthesis output unit 20, the C ++ source code generated by the event processing code generation unit 19 is inserted into a designated position of the C ++ source code generated by the class definition conversion unit 14 (step 10).
9).

【0042】具体的には、Automobileクラス
のメソッドStartEngine()の定義の骨組み
の中に、インスタンスTheEngineのメソッドS
tart()を呼び出す処理のC++ソースコードを挿
入する。
More specifically, in the skeleton of the definition of the method StartEngine () of the Automobile class, the method S of the instance TheEngine is included.
Insert the C ++ source code of the process that calls start ().

【0043】以上のようにして、図5及び図6に示した
クラス図およびイベントトレース図から、クラスメソッ
ドの処理本体を補足する形で実装することができるの
で、開発者の実装作業における手作業の負担を減らすこ
とができる。
As described above, since the class diagram and the event trace diagram shown in FIGS. 5 and 6 can be implemented in a form supplementing the processing body of the class method, the manual work in the implementation work of the developer can be performed. Burden can be reduced.

【0044】実施の形態2.次に、本発明の第2の実施
の形態について説明する。本実施の形態におけるシステ
ムの全体構成は、図1と同じである。
Embodiment 2 Next, a second embodiment of the present invention will be described. The overall configuration of the system in the present embodiment is the same as FIG.

【0045】イベントトレース図エディタ6において、
新たにイベントを定義する。このとき、イベントトレー
ス図要素仕様編集部は、イベントに対応するメソッドが
クラス情報10に設定されていない場合、ここで新たに
メソッドを定義すると、受信側インスタンスのもととな
るクラスに、イベントトレース図エディタ上で新規に定
義したメソッドを自動的に追加し、クラス情報10に格
納する。
In the event trace diagram editor 6,
Define a new event. At this time, if the method corresponding to the event is not set in the class information 10, the event trace diagram element specification editing unit, if a new method is defined here, sets the event trace A method newly defined on the diagram editor is automatically added and stored in the class information 10.

【0046】このようにすると、イベントトレース図を
作成する過程において、イベントトレース図エディタ上
での追加作業を反映して、クラス図の修正が自動的に行
われるため、開発者の設計作業の負担を減らすことがで
きる。
In this way, in the process of creating the event trace diagram, the class diagram is automatically corrected by reflecting the additional work on the event trace diagram editor. Can be reduced.

【0047】実施の形態3.次に、本発明の第3の実施
の形態について、図3に基づいて説明する。図3は、本
実施の形態におけるシステムの全体構成を示したブロッ
ク図である。なお、第1の実施の形態と同じ要素には同
じ符号をつけ、説明を省略する。図3において、21は
各イベントに処理部品を割り当てる処理部品割当部、2
2は汎用的な各種処理部品を格納して管理する処理部品
庫である。処理部品とは、プログラムルーチンで用いる
条件分岐制御や反復制御などの基本的な処理を部品化し
たもの、さらに、それらを組み合わせて部品化したもの
など、各種パターンの処理部品であるとする。
Embodiment 3 Next, a third embodiment of the present invention will be described with reference to FIG. FIG. 3 is a block diagram showing the overall configuration of the system according to the present embodiment. The same elements as those in the first embodiment are denoted by the same reference numerals, and description thereof will be omitted. In FIG. 3, reference numeral 21 denotes a processing component allocating unit that allocates a processing component to each event;
A processing component storage 2 stores and manages various general-purpose processing components. The processing component is assumed to be a processing component of various patterns such as a component obtained by combining basic processes such as conditional branch control and iterative control used in a program routine, and a component obtained by combining the components.

【0048】本実施の形態におけるイベント処理部品
は、実施の形態1で説明したイベント処理コード生成部
19が生成するC++ソースコードのことである。この
ため、イベント処理部品の生成動作については説明を省
略して、追加した動作を説明する。
The event processing component in the present embodiment is the C ++ source code generated by the event processing code generator 19 described in the first embodiment. Therefore, the description of the operation of generating the event processing component will be omitted, and the added operation will be described.

【0049】イベントトレース図エディタ6上で、処理
部品割当部21によって各イベントごとに処理部品の指
定を必要に応じて行う。このときに、別に指定したメソ
ッドとの処理順の指定も同時に行う。イベント情報11
には、これらの処理部品情報や処理順情報も格納され
る。
On the event trace diagram editor 6, a processing component is designated for each event by the processing component allocation unit 21 as necessary. At this time, the processing order with the separately specified method is also specified. Event information 11
The processing component information and the processing order information are also stored in the.

【0050】ソースコード生成の際、イベント処理コー
ド生成部19において、イベント対メソッド相対情報生
成部18が生成した情報をもとに、C++ソースコード
を生成し、どのメソッドに生成したソースコードを埋め
込むかを指定した情報を付加する。このとき、生成した
ソースコードには、処理部品割当部21で指定した処理
部品の呼出しコードも追加され、その情報は処理部品庫
22から取得することによって補われる。
At the time of source code generation, the event processing code generator 19 generates C ++ source code based on the information generated by the event-to-method relative information generator 18 and embeds the generated source code in any method. Is added. At this time, the calling code of the processing component specified by the processing component allocating unit 21 is also added to the generated source code, and the information is supplemented by obtaining the information from the processing component storage 22.

【0051】このようにすると、クラスメソッドの処理
本体をイベント呼出しだけでなく、既存の処理部品の呼
出しもさらに補足する形で実装することができるので、
開発者の実装作業における手作業の負担を減らすことが
できる。
In this way, the processing body of the class method can be implemented not only by calling an event, but also by complementing the calling of an existing processing component.
It is possible to reduce the burden of manual work in the implementation work of the developer.

【0052】[0052]

【発明の効果】本発明によれば、クラスメソッド実装支
援部、特に、イベント処理コード生成部を備えたことに
より、イベントトレース図を元にメソッド呼出しの処理
コードを自動的に生成することができ、クラスメソッド
の処理本体への実装を補なうことが可能になる。これに
より、イベントトレース図の情報を有効に生かすことが
できる効果がある。
According to the present invention, the provision of the class method implementation support unit, particularly, the event processing code generation unit enables automatic generation of the method call processing code based on the event trace diagram. It is possible to supplement the implementation of the class method in the processing body. Thereby, there is an effect that the information of the event trace diagram can be effectively used.

【0053】また、この発明によれば、クラス情報とイ
ベントトレース図要素仕様編集部を連携させることによ
り、クラス図とイベントトレース図とを対応させた一元
管理が実現でき、ミスの少ない設計作業を行うことがで
きる効果がある。
Further, according to the present invention, by linking the class information and the event trace diagram element specification editing unit, a unified management in which the class diagram and the event trace diagram correspond to each other can be realized, and the design work with few errors can be realized. There are effects that can be performed.

【0054】また、この発明によれば、処理部品庫を導
入することにより、クラスメソッドの処理本体をイベン
トトレース図上で各イベントに割り当てることが可能に
なる。これにより、さらにクラスメソッドの処理本体を
追加して自動生成させることができ、実装作業の工程を
短縮できる。
Further, according to the present invention, by introducing the processing component storage, it becomes possible to allocate the processing body of the class method to each event on the event trace diagram. As a result, the processing body of the class method can be further added and automatically generated, and the process of the mounting operation can be shortened.

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

【図1】 本発明の第1の実施の形態に係るソフトウェ
ア開発支援装置の全体構成を示すブロック図である。
FIG. 1 is a block diagram showing an overall configuration of a software development support device according to a first embodiment of the present invention.

【図2】 第1の実施の形態におけるソースコード生成
機能のフローチャート図である。
FIG. 2 is a flowchart of a source code generation function according to the first embodiment.

【図3】 本発明の第3の実施の形態に係るソフトウェ
ア開発支援装置の全体構成を示すブロック図である。
FIG. 3 is a block diagram showing an overall configuration of a software development support device according to a third embodiment of the present invention.

【図4】 従来例の装置の全体構成を示すブロック図で
ある。
FIG. 4 is a block diagram showing the overall configuration of a conventional device.

【図5】 クラス図の一部を示す図である。FIG. 5 is a diagram showing a part of a class diagram.

【図6】 クラス図に定義されたクラスのインスタンス
間のイベントを示したイベントトレース図である。
FIG. 6 is an event trace diagram showing events between instances of a class defined in the class diagram.

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

1 クラス図エディタ、2 クラス図表示部、3 クラ
ス図要素編集部、4クラス図要素仕様編集部、5 コー
ド生成プロパティ編集部、6 イベントトレース図エデ
ィタ、7 イベントトレース図表示部、8 イベントト
レース図要素編集部、9 イベントトレース図要素仕様
編集部、10 クラス情報、11 イベント情報、12
ソースコード生成機能、13 クラス定義取得部、1
4 クラス定義変換部、15 ソースコード出力部、1
6 ソースコード、17 イベント情報取得部、18
イベント対メソッド相対情報生成部、19 イベント処
理コード生成部、20 ソースコード合成出力部、21
処理部品割当部、22処理部品庫、30 クラスメソ
ッド実装支援部、51 Driverクラス、52 A
utomobileクラス、53 Engineクラ
ス、54 クラス名表示領域、55 属性のリスト表示
領域、56 メソッドのリスト表示領域、57 関係、
57a 菱形のマーク、58 Driverクラスのイ
ンスタンスUser、59 Automobileクラ
スのインスタンスMyCar、60Engineクラス
のインスタンスTheEngine、61 Start
Engine()イベント、62 Start()イベ
ント。
1 Class diagram editor, 2 Class diagram display unit, 3 Class diagram element editing unit, 4 Class diagram element specification editing unit, 5 Code generation property editing unit, 6 Event trace diagram editor, 7 Event trace diagram display unit, 8 Event trace diagram Element editing unit, 9 Event trace diagram element specification editing unit, 10 class information, 11 event information, 12
Source code generation function, 13 Class definition acquisition unit, 1
4 class definition converter, 15 source code output unit, 1
6 Source code, 17 Event information acquisition unit, 18
Event-to-method relative information generation section, 19 event processing code generation section, 20 source code synthesis output section, 21
Processing component allocation unit, 22 processing component storage, 30 class method implementation support unit, 51 Driver class, 52 A
umobile class, 53 Engine class, 54 class name display area, 55 attribute list display area, 56 method list display area, 57 relation,
57a Diamond-shaped mark, 58 User instance of Driver class, 59 MyCar instance of Automobile class, 60Engine instance of TheEngine class, 61 Start
An Engine () event, a 62 Start () event.

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】 OMT(OMTはobject mod
eling techniqueの略、オブジェクト指
向を使ってシステム分析や設計を進めるオブジェクト指
向分析/設計開発方法論の1つ)の少なくともクラスと
メソッドとクラス間の関係とをクラス情報として入力し
図示するクラス図の作成/編集作業を支援するクラス図
エディタと、 OMTの少なくともクラスのインスタンスとイベントの
発生順序とをイベント情報として入力し図示するイベン
トトレース図の作成/編集作業を支援するイベントトレ
ース図エディタと、 前記クラス図エディタによって作成したクラス図のクラ
ス情報をもとに処理本体のソースコードを自動生成する
ソースコード生成部とを有するソフトウェア開発支援装
置において、 前記ソースコード生成部は、前記クラス図エディタによ
り入力されたクラス情報と、前記イベントトレース図エ
ディタにより入力されたイベント情報とをもとにイベン
トとメソッドとを関連づけてイベントに対応するメソッ
ドを呼び出す処理のソースコードを作成して、前記生成
したソースコードを、前記処理本体のソースコードに実
装させるクラスメソッド実装支援部を備えたことを特徴
とするソフトウェア開発支援装置。
An OMT (OMT is an object mod)
An abbreviation for "eling technique", which is one of the object-oriented analysis / design development methodologies that promote system analysis and design using object-oriented design). A class diagram editor for supporting the editing / editing operation, an event trace diagram editor for inputting at least an instance of the OMT class and the order of occurrence of the event as event information, and supporting the creation / editing of an illustrated event trace diagram; A source code generation unit that automatically generates source code of a processing body based on class information of a class diagram created by a diagram editor, wherein the source code generation unit is input by the class diagram editor. Class information and Based on the event information input by the event trace diagram editor, a source code for a process of associating an event with a method and calling a method corresponding to the event is created, and the generated source code is processed by the processing body. A software development support device, comprising: a class method implementation support unit for implementing the method in a source code.
【請求項2】 前記クラスメソッド実装支援部は、前記
クラス図エディタにより入力されたクラス情報と、前記
イベントトレース図エディタにより入力されたイベント
情報をもとにイベントとメソッドを関連づけてイベント
対メソッド相対情報を生成するイベント対メソッド相対
情報生成部と、 前記イベント対メソッド相対情報生成部により生成され
たイベント対メソッド相対情報よりイベントに対応する
メソッドを呼び出す処理のソースコードを生成するイベ
ント処理コード生成部と、 前記イベント処理コード生成により作成されたソースコ
ードを、前記処理本体のソースコードに合成するソース
コード合成出力部とを備えたことを特徴とする請求項1
記載のソフトウェア開発支援装置。
2. The method according to claim 1, wherein the class method implementation support unit associates the event with the method based on the class information input by the class diagram editor and the event information input by the event trace diagram editor. An event-to-method relative information generation unit that generates information; and an event processing code generation unit that generates a source code of a process for calling a method corresponding to the event from the event-to-method relative information generated by the event-to-method relative information generation unit. And a source code synthesizing output unit for synthesizing a source code created by generating the event processing code into a source code of the processing body.
Software development support device as described.
【請求項3】 OMT(OMTはobject mod
eling techniqueの略、オブジェクト指
向を使ってシステム分析や設計を進めるオブジェクト指
向分析/設計開発方法論の1つ)の少なくともクラスと
メソッドとクラス間の関係とをクラス情報として入力し
図示するクラス図の作成/編集作業を支援するクラス図
エディタと、 OMTの少なくともクラスのインスタンスとイベントの
発生順序とをイベント情報として入力し図示するイベン
トトレース図の作成/編集作業を支援するイベントトレ
ース図エディタと、 前記クラス図エディタによって作成したクラス図の情報
をもとに処理本体のソースコードを自動生成するソース
コード生成部とを有するソフトウェア開発支援装置にお
いて、 前記ソースコード生成部は、前記クラス図エディタによ
り入力されたクラス情報と、前記イベントトレース図エ
ディタにより入力されたイベント情報をもとにイベント
とメソッドとを関連づけてイベント対メソッド相対情報
を生成するイベント対メソッド相対情報生成部と、 前記イベント対メソッド相対情報生成部により生成され
たイベント対メソッド相対情報よりイベントに対応する
メソッドを呼び出す処理のソースコードを生成するイベ
ント処理コード生成部と、 前記イベント処理コード生成部により生成されたソース
コードを、前記処理本体のソースコードに合成するソー
スコード合成出力部とを備えたことを特徴とするソフト
ウェア開発支援装置。
3. An OMT (OMT is an object mod)
An abbreviation for "eling technique", which is one of the object-oriented analysis / design development methodologies that promote system analysis and design using object-oriented design). A class diagram editor for supporting the editing / editing operation, an event trace diagram editor for inputting at least an instance of the OMT class and the order of occurrence of the event as event information, and supporting the creation / editing of an illustrated event trace diagram; A software development support device having a source code generation unit for automatically generating a source code of a processing body based on information of a class diagram created by a diagram editor, wherein the source code generation unit is input by the class diagram editor. Class information and the An event-to-method relative information generating unit that generates event-to-method relative information by associating an event with a method based on the event information input by the event trace diagram editor; and an event-to-method relative information generating unit. An event processing code generation unit that generates a source code of a process for calling a method corresponding to the event from the event-to-method relative information; and combining the source code generated by the event processing code generation unit with a source code of the processing body. A software development support device comprising a source code synthesis output unit.
【請求項4】 前記イベントトレース図エディタは、入
力されたイベント情報のイベントに対応するメソッド
が、前記クラス図エディタにより入力されたクラス情報
に存在するか否かを検索して、存在していない場合に、
前記イベント情報よりクラスを決定して、決定したクラ
スに対して前記イベントをメソッドとして追加定義する
イベントトレース図要素仕様編集部を備えたことを特徴
とする請求項2または3記載のソフトウェア開発支援装
置。
4. The event trace diagram editor searches whether or not a method corresponding to an event of the input event information exists in the class information input by the class diagram editor, and does not exist. In case,
4. The software development support device according to claim 2, further comprising an event trace diagram element specification editing unit that determines a class from the event information and additionally defines the event as a method for the determined class. .
【請求項5】 前記ソフトウェア開発支援装置は、さら
に、プログラムルーチンで汎用的に用いる処理のパター
ンを処理部品として記憶する処理部品庫を備え、 前記イベントトレース図エディタは、入力されたイベン
ト情報に対して前記処理部品庫に記憶された処理部品を
指定する処理部品割当部を備えたことを特徴とする請求
項2または3記載のソフトウェア開発支援装置。
5. The software development support device further includes a processing component storage for storing processing patterns generally used in a program routine as processing components. 4. The software development support device according to claim 2, further comprising a processing component allocating unit that specifies a processing component stored in the processing component storage.
【請求項6】 前記イベント処理コード生成部は、前記
イベント対メソッド相対情報をもとにイベントに対する
メソッドを呼び出す処理のソースコードを生成するとと
もに、前記処理部品割当部によりイベント情報に対して
指定された処理部品を前記処理部品庫より取得してソー
スコードを生成することを特徴とする請求項5記載のソ
フトウェア開発支援装置。
6. The event processing code generation unit generates a source code of a process for calling a method for an event based on the event-to-method relative information, and is specified for the event information by the processing component allocation unit. 6. The software development support device according to claim 5, wherein the processing component obtained from the processing component storage and generates a source code.
JP2055498A 1998-02-02 1998-02-02 Software development supporting device Pending JPH11219287A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2055498A JPH11219287A (en) 1998-02-02 1998-02-02 Software development supporting device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2055498A JPH11219287A (en) 1998-02-02 1998-02-02 Software development supporting device

Publications (1)

Publication Number Publication Date
JPH11219287A true JPH11219287A (en) 1999-08-10

Family

ID=12030387

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2055498A Pending JPH11219287A (en) 1998-02-02 1998-02-02 Software development supporting device

Country Status (1)

Country Link
JP (1) JPH11219287A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010073062A (en) * 2008-09-19 2010-04-02 Ricoh Co Ltd Image processor, image processing method and program
US7930679B2 (en) 2004-04-28 2011-04-19 Fujitsu Limited Source-code-generation supporting method and computer product

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7930679B2 (en) 2004-04-28 2011-04-19 Fujitsu Limited Source-code-generation supporting method and computer product
JP2010073062A (en) * 2008-09-19 2010-04-02 Ricoh Co Ltd Image processor, image processing method and program

Similar Documents

Publication Publication Date Title
JPH0744729A (en) Animation generation method
EP2110741A1 (en) A method and a system for transforming an object model
JPH11219287A (en) Software development supporting device
US7480895B2 (en) Web application development tool
JP2002342078A (en) Program development system and method
JPH0391039A (en) Program for test for software and method for preparing test data
JP3067707B2 (en) Client / server program generation method
CN117075885B (en) Visual task execution method of relay protection equipment
JPH07129382A (en) Spiral type object oriented software development supporting system and software developing method
JP3019874B2 (en) Program generation / synthesis apparatus and method
JP2000056956A (en) Device and method for converting request specification model into other system model
Green et al. Software technology for embedded systems
JP3210203B2 (en) Program test method and SQL simulator
CN116243893A (en) Low code output method
JP2002287961A (en) System and method for developing service application
CN115268887A (en) Micro application engineering generation method, system and equipment based on domain model
CN116880824A (en) System and method for automatically generating and constructing zero code back-end service
CN116433787A (en) Picture generation method, device, equipment and medium thereof
JPH10269070A (en) Method for comparing and correcting request specification constituting elements
CN116661748A (en) Engine resource conversion method, device, equipment and storage medium
Hartrum et al. Software system integration methodology using formal specifications
CN116450112A (en) Method, device, equipment and medium for processing attribute editing by using serialization
JPH0659871A (en) Software development device
KR20210041781A (en) An integrated development system for a SyncML serverapplication development
JPH01282651A (en) Control item automatic control system for comprehensiveness degress control