JP2010198457A - Source code creation device and source code creation program - Google Patents
Source code creation device and source code creation program Download PDFInfo
- Publication number
- JP2010198457A JP2010198457A JP2009044121A JP2009044121A JP2010198457A JP 2010198457 A JP2010198457 A JP 2010198457A JP 2009044121 A JP2009044121 A JP 2009044121A JP 2009044121 A JP2009044121 A JP 2009044121A JP 2010198457 A JP2010198457 A JP 2010198457A
- Authority
- JP
- Japan
- Prior art keywords
- source code
- executed
- appending
- activity
- determination
- 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
Links
- 238000000034 method Methods 0.000 claims abstract description 279
- 230000000694 effects Effects 0.000 claims abstract description 150
- 238000012545 processing Methods 0.000 claims abstract description 55
- 230000001360 synchronised effect Effects 0.000 claims abstract description 30
- 238000010586 diagram Methods 0.000 claims abstract description 28
- 239000002131 composite material Substances 0.000 claims abstract description 26
- 238000013461 design Methods 0.000 description 9
- 230000004044 response Effects 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 2
- 150000001875 compounds Chemical class 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000033772 system development Effects 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
【課題】アクティビティ情報、及び処理に対応するソースコードからアクティビティ図が示す処理を行なうためのソースコードを作成するソースコード作成装置、ソースコード作成プログラムを提供する。
【解決手段】単一処理か複合処理かを判定する第1判定処理、同期処理か順次処理かを判定する第2判定処理、終了したことを通知するための複合処理が存在するか否か判定する第3判定処理、最初に実行する順次処理を認識する第1認識処理、いずれの処理が実行中であるかを認識する第2認識処理、実行中の処理の次に実行する処理が存在するか否かを判定する第4判定処理、順次処理を実行した際に実行中の処理の次に実行する複数の処理が存在する場合に、いずれの処理を次に実行するかを判定する第5判定処理、同期処理において同時に実行する複数の処理を認識する第3認識処理、及び実行中の各処理の終了を同期させるための終了同期処理をソースコードに追記する。
【選択図】図4A source code creation device and a source code creation program for creating a source code for performing processing shown in an activity diagram from activity information and source code corresponding to the processing are provided.
A first determination process for determining whether the process is a single process or a composite process, a second determination process for determining whether the process is a synchronous process or a sequential process, and determining whether there is a composite process for notifying completion There are a third determination process to be performed, a first recognition process for recognizing a sequential process to be executed first, a second recognition process for recognizing which process is being executed, and a process to be executed next to the process being executed. A fourth determination process for determining whether or not there is a plurality of processes to be executed next to a process that is being executed when the sequential processes are executed; A third recognition process for recognizing a plurality of processes executed simultaneously in the determination process and the synchronization process, and an end synchronization process for synchronizing the end of each process being executed are added to the source code.
[Selection] Figure 4
Description
本発明は、ソースコード作成装置、ソースコード作成プログラムに関する。 The present invention relates to a source code creation device and a source code creation program.
特許文献1には、オブジェクト指向システム開発において、テスト性、及びメインテナンス性に優れたサブシステムを構成するためのソフトウェア・インタフェース・デザインパターンが開示されている。
特許文献2には、自然言語で記述されたシステムの振る舞いを記したシナリオを作成し、定型化された分析方法に従い図解編集装置を用いて分析作業を行うことで、オブジェクトモデルを構築することを目的とした分析方法と支援装置が開示されている。
In
本発明は順序処理、同期処理、及び分岐処理を含む処理で構成されるアクティビティ図を示すアクティビティ情報、及び前記処理に対応するソースコードからアクティビティ図が示す処理を行なうためのソースコードを作成するソースコード作成装置、ソースコード作成プログラムを提供することを目的とする。 The present invention provides activity information indicating an activity diagram composed of processes including sequence processing, synchronization processing, and branch processing, and a source for generating source code for performing the processing indicated by the activity diagram from the source code corresponding to the processing It is an object to provide a code creation device and a source code creation program.
上記目的を達成するために、請求項1の発明は、順序処理、同期処理、及び分岐処理を含む処理で構成されるアクティビティ図を示すアクティビティ情報、及び前記処理に対応するソースコードを取得する取得手段と、前記取得手段により取得されたアクティビティ情報に示される前記処理が単一処理か複合処理かを前記処理毎に判定する第1判定処理を前記ソースコードに追記する第1追記手段と、前記第1判定処理により複合処理と判定された処理が、同期処理か順次処理かを判定する第2判定処理を前記ソースコードに追記する第2追記手段と、前記処理を実行した際に、前記処理が終了した場合に終了したことを通知するための前記第1判定処理により判定された複合処理が存在するか否か判定する第3判定処理を前記ソースコードに追記する第3追記手段と、前記第2判定処理により判定された順次処理のうち、最初に実行する処理を示す開始処理を認識する第1認識処理を前記ソースコードに追記する第4追記手段と、前記順次処理を実行した際に、いずれの処理が実行中であるかを認識する第2認識処理を前記ソースコードに追記する第5追記手段と、前記順次処理を実行した際に、実行中の処理の次に実行する処理が存在するか否かを判定する第4判定処理を前記ソースコードに追記する第6追記手段と、前記順次処理を実行した際に、実行中の処理の次に実行する複数の処理が存在する場合に、いずれの処理を次に実行するかを判定する第5判定処理を前記ソースコードに追記する第7追記手段と、前記第2判定処理により判定された同期処理において実行する複数の処理を認識する第3認識処理を前記ソースコードに追記する第8追記手段と、実行中の各処理の終了を同期させるための終了同期処理を前記ソースコードに追記する第9追記手段と、を有する。
In order to achieve the above object, the invention of
上記目的を達成するために、請求項2の発明は、コンピュータを、順序処理、同期処理、及び分岐処理を含む処理で構成されるアクティビティ図を示すアクティビティ情報、及び前記処理に対応するソースコードを取得する取得手段と、前記取得手段により取得されたアクティビティ情報に示される前記処理が単一処理か複合処理かを前記処理毎に判定する第1判定処理を前記ソースコードに追記する第1追記手段と、前記第1判定処理により複合処理と判定された処理が、同期処理か順次処理かを判定する第2判定処理を前記ソースコードに追記する第2追記手段と、前記処理を実行した際に、前記処理が終了した場合に終了したことを通知するための前記第1判定処理により判定された複合処理が存在するか否か判定する第3判定処理を前記ソースコードに追記する第3追記手段と、前記第2判定処理により判定された順次処理のうち、最初に実行する処理を示す開始処理を認識する第1認識処理を前記ソースコードに追記する第4追記手段と、前記順次処理を実行した際に、いずれの処理が実行中であるかを認識する第2認識処理を前記ソースコードに追記する第5追記手段と、前記順次処理を実行した際に、実行中の処理の次に実行する処理が存在するか否かを判定する第4判定処理を前記ソースコードに追記する第6追記手段と、前記順次処理を実行した際に、実行中の処理の次に実行する複数の処理が存在する場合に、いずれの処理を次に実行するかを判定する第5判定処理を前記ソースコードに追記する第7追記手段と、前記第2判定処理により判定された同期処理において実行する複数の処理を認識する第3認識処理を前記ソースコードに追記する第8追記手段と、実行中の各処理の終了を同期させるための終了同期処理を前記ソースコードに追記する第9追記手段と、として機能させるためのソースコード作成プログラムである。
In order to achieve the above-mentioned object, the invention of
請求項1記載の発明によれば、順序処理、同期処理、及び分岐処理を含む処理で構成されるアクティビティ図を示すアクティビティ情報、及び前記処理に対応するソースコードからアクティビティ図が示す処理を行なうためのソースコードを作成するソースコード作成装置を提供することができる。 According to the first aspect of the present invention, in order to perform the process shown in the activity diagram from the activity information indicating the activity diagram configured by the process including the order process, the synchronization process, and the branch process, and the source code corresponding to the process. It is possible to provide a source code creation device for creating the source code of the source code.
請求項2記載の発明によれば、順序処理、同期処理、及び分岐処理を含む処理で構成されるアクティビティ図を示すアクティビティ情報、及び前記処理に対応するソースコードからアクティビティ図が示す処理を行なうためのソースコードを作成するソースコード作成プログラムを提供することができる。 According to the second aspect of the present invention, in order to perform the process shown in the activity diagram from the activity information indicating the activity diagram composed of the process including the order process, the synchronization process, and the branch process, and the source code corresponding to the process. It is possible to provide a source code creation program for creating the source code.
以下、図面を参照して、本発明の実施の形態について詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
次に、図2を用いて、ソースコード作成装置12の構成について説明する。ソースコード作成装置12は、CPU(Central Processing Unit)18と、HDD(Hard Disk Drive)20と、RAM(Random Access Memory)22と、ネットワークI/F部24と、ROM(Read Only Memory)26と、表示部28と、操作入力部30と、バス32とを含む。
Next, the configuration of the source
CPU18は、ソースコード作成装置12の全体の動作を司るものであり、後述するソースコード作成装置12の処理を示すフローチャートは、CPU18により実行される。HDD20は、各データベース、ソース作成プログラムなどのプログラム、OS(Operating System)などが記録される不揮発性の記憶装置である。RAM22は、OSやプログラムやデータが展開される揮発性の記憶装置である。ネットワークI/F部24は、ネットワークに接続するためのものであり、NIC(Network Interface Card)やそのドライバで構成される。ROM26は、ソースコード作成装置12の起動時に動作するブートプログラムなどが記憶されている不揮発性の記憶装置である。表示部28は、ソースコード作成装置12に関する情報をオペレータに表示するものである。操作入力部30は、オペレータがソースコード作成装置12の操作や情報を入力する際に用いられるものである。バス32は、情報のやりとりが行われる際に使用される。
The
次にアクティビティ図について説明する。アクティビティ図は、順序処理、同期処理、及び分岐処理を含む処理で構成されるため、まずこれらの処理の一例を、図2を用いて説明する。 Next, an activity diagram will be described. Since the activity diagram is composed of processing including order processing, synchronization processing, and branch processing, an example of these processing will be described with reference to FIG.
図2(A)は、順序処理を示すアクティビティ図の一例である。同図の順序処理は、ステップ101の単一Activity1、及びステップ102の単一Activity2の処理を順番に実行することを示している。
FIG. 2A is an example of an activity diagram showing order processing. The order process in FIG. 11 indicates that the process of the
図2(B)は、同期処理を示すアクティビティ図の一例である。同図の同期処理は、ステップ201の単一Activity3、及びステップ202の単一Activity4の処理をそれぞれ独立して実行し、ステップ201、202の処理が終了すると、ステップ203の単一Activity5を実行することを示している。
FIG. 2B is an example of an activity diagram showing the synchronization process. In the synchronization process of FIG. 9, the
同図(C)は、分岐処理を示すアクティビティ図の一例である。同図の分岐処理は、ステップ301の単一Activity6を実行後に、条件A、Bにより分岐する処理である。条件Aの場合は、ステップ302の単一Activity7の処理が実行され、条件Bの場合は、ステップ303の単一Activity8の処理を実行後、ステップ302の処理を実行することを示している。
FIG. 6C is an example of an activity diagram showing branch processing. The branch process in FIG. 6 is a process that branches according to conditions A and B after executing the single activity 6 in step 301. In the case of condition A, the process of single activity 7 in step 302 is executed. In the case of condition B, the process of step 302 is executed after the process of single activity 8 in
以上が順序処理、同期処理、及び分岐処理の一例であるが、これらを組み合わせた処理を、図3を用いて説明する。図3に示されるActivity図は、順序Activity1を実行する処理を示している。この順序Activity1は、同期Activity1、単一Activity15を実行するようになっている。 The above is an example of the order process, the synchronization process, and the branch process. A process combining these processes will be described with reference to FIG. The Activity diagram shown in FIG. 3 shows processing for executing the order Activity1. In this order Activity1, synchronous Activity1 and single Activity15 are executed.
更に、同期Activity1は、順序Activity2と同期Activity2を実行するようになっている。このうち、順序Activity2は、分岐処理が含まれ、その分岐処理は単一Activity9を実行後に、条件により単一Activity10又は単一Activity11の処理が実行され、単一Activity11の処理を実行した場合は、その後単一Activity10の処理を実行するようになっている。
Furthermore, the
一方、同期Activity2は、同期処理が含まれ、その同期処理は、単一Activity12と順序Activity3を独立して実行する処理である。更に順序Activity3は、単一Activity13、単一Activity14を順番に実行する処理である。
On the other hand, the
以上がアクティビティ図の説明である。次に、図4を用いて本実施の形態に係るデザインパターンを、クラス図を用いて説明する。 The above is the description of the activity diagram. Next, the design pattern according to the present embodiment will be described using a class diagram with reference to FIG.
まず、同図に示されるActivityオブジェクト50は、取得したアクティビティ情報の各アクティビティを定義するものである。また、Activityオブジェクト50と単一Activityオブジェクト52及び複合Activityオブジェクト54との継承関係を示すR9は、処理が単一処理か複合処理かを前記処理毎に判定する第1判定処理を示している。
First, the
複合Activityオブジェクト54と同期Activityオブジェクト56及び順序Activityオブジェクト58との継承関係を示すR10は、複合処理と判定された処理が、同期処理か順次処理かを判定する第2判定処理を示している。
R10 indicating the inheritance relationship between the
Activityオブジェクト50と複合Activityオブジェクト54との関連を示すR7は、処理を実行した際に、処理が終了した場合に終了したことを通知するための第1判定処理により判定された複合処理が存在するか否か判定する第3判定処理を示している。
R7 indicating the relationship between the
順序Activityオブジェクト58と順序Activity仕様オブジェクト60との関連を示すR1、順序Activity仕様オブジェクト60と順序オブジェクト68との関連を示すR2、順序Activity仕様オブジェクト60とActivityオブジェクト50との関連を示すR4、及び順序オブジェクト68は、第2判定処理により判定された順次処理のうち、最初に実行する処理を示す開始処理を認識する第1認識処理を示している。
R1 indicating the relationship between the sequence
また、関連R3、R4及び順序オブジェクト68は、順次処理を実行した際に、いずれの処理が実行中であるかを認識する第2認識処理を示している。
The relations R3, R4 and the
更に、順序オブジェクト68の再帰関連を示すR8、上記R3、R4、及び順序オブジェクト68は、順次処理を実行した際に、実行中の処理の次に実行する処理が存在するか否かを判定する第4判定処理を示している。
Further, R8 indicating the recursive relationship of the
再帰関連R8、分岐オブジェクト62、順序オブジェクト68、及び関連R4は、順次処理を実行した際に、実行中の処理の次に実行する複数の処理が存在する場合に、いずれの処理を次に実行するかを判定する第5判定処理を示している。
When the recursive association R8, the
また、Activityオブジェクト50と同期Activity仕様オブジェクト64との関連を示すR6、同期Activity仕様オブジェクト64と同期Activityオブジェクト56との関連を示すR5、及び同期Activityオブジェクト56は、同期処理において実行する複数の処理を認識する第3認識処理を示している。
R6 indicating the relationship between the
同期Activityオブジェクト56の属性である実行中Activity数は、同期Activityが現在実行中のActivityの数を示しており、現在実行中の全てのActivityの終了を同期させるために使用する。同期オブジェクト66は、Activityオブジェクト50と同期Activity仕様64との関連クラスである。
The number of activities being executed, which is an attribute of the
以上説明したクラス図に示される処理を実行するためのソースコードをアクティビティ図に示される各処理を行なうソースコードに追記する。具体的には、図5のフローチャートを用いて説明する。このフローチャートに示されるソースコード作成処理は、CPU18により実行される。
The source code for executing the processing shown in the class diagram described above is added to the source code for performing each processing shown in the activity diagram. Specifically, this will be described with reference to the flowchart of FIG. The source code creation process shown in this flowchart is executed by the
まずステップ401で、例えば予めHDD20に記憶されているアクティビティ情報、処理を示すソースコードを取得する。処理を示すソースコードの一例として、各処理を示す関数を示すソースコードが挙げられる。そしてこれらのソースコードは、テキストファイルで記憶されている。従って、以下の追記する処理では、このテキストファイルに各処理を示すソースコードが追記されることとなる。
First, in
次のステップ402で、上述した第1判定処理をソースコードに追記し、ステップ403で、上述した第2判定処理をソースコードに追記し、ステップ404で上述した第3判定処理をソースコードに追記し、ステップ405で上述した第1認識処理をソースコードに追記し、ステップ406で上述した第2認識処理をソースコードに追記し、ステップ407で上述した第4判定処理をソースコードに追記し、ステップ408で上述した第5判定処理をソースコードに追記し、ステップ409で上述した第3認識処理をソースコードに追記し、ステップ410で上述した終了同期処理をソースコードに追記して処理を終了する。
In step 402, the first determination process described above is added to the source code. In
これにより、上記図4に示したクラス図の処理がアクティビティ図に示される処理に追加されることで、アクティビティ図が示す処理を実行するためのソースコードが作成される。 As a result, the processing of the class diagram shown in FIG. 4 is added to the processing shown in the activity diagram, so that source code for executing the processing shown in the activity diagram is created.
次に、図6を用いて、順序Activityオブジェクト58、及び同期Activityオブジェクト56の振る舞いについて説明する。
Next, the behavior of the
同図(A)は、順序Activityオブジェクト58の振る舞いを示している。ステップ501は、最初に実行する処理を獲得するもので、関連R1、R2で関係する順序をR3に関係させる。次のステップ502で関連R3、R4で関連づけられたActivityを実行し、実行したActivityに、自順序Activity(複合Activity)をR7で関連させ、実行したActivityから実行完了の通知を受けると、ステップ503でR3、R8で関係する順序から分岐の判定メソッド(図4の分岐オブジェクト62参照)の結果を元に選択した順序をR3に設定する。R3に設定されていればそれを実行し、設定されていなければステップ503を終えてステップ504の終了処理を行なう終了中に移行する。ステップ504では、R7に複合Activityが設定されていれば、その複合Activityに実行完了を通知し、振る舞いを終了する。
FIG. 4A shows the behavior of the
同図(B)は、同期Activityオブジェクト56の振る舞いを示している。まず、ステップ601で、R5、R6で関係する全てのActivityの実行を開始し、実行したActivityの個数を実行中のActivity数(図4の同期Activityオブジェクト56参照)に設定し、更に実行した全てのActivityのR7に自同期Activity(複合Activity)を設定する。
FIG. 5B shows the behavior of the
次のステップ602では、実行したActivityから実行完了通知を受けるとActivity数を1減算する。Activity数が0となる、すなわち実行した全てのActivityが終了すると、次のステップ603に移行する。ステップ603では、R7に複合Activityが設定されていれば、その複合Activityに実行完了を通知し、振る舞いを終了する。
In the
次に図7を用いて、図3に示したActivity図に示される処理を実行した際の各オブジェクトの動きについて説明する。 Next, the movement of each object when the process shown in the Activity diagram shown in FIG. 3 is executed will be described with reference to FIG.
まず、ステップ701で、Actor1が順序Activity1を実行すると、ステップ702で同期Activity1が実行される。そして、ステップ703で順序Activity2が、ステップ704で同期Activity2がそれぞれ同期Activity1により実行される。更にステップ705で単一Activity9が順序Activity2により実行される。
First, when Actor1 executes the order Activity1 in Step 701, Synchronous Activity1 is executed in Step 702. Then, in step 703, the
次のステップ706で、単一Activity12が同期Activity2により実行され、ステップ707で順序Activity3が同期Activity2により実行される。そしてステップ708で単一Activity13が順序Activity3により実行される。
In the next step 706, a
単一Activity12の実行が完了すると、ステップ709で実行が完了したことを示す実行完了が同期Activity2に通知される。また、単一Activity9の実行が完了すると、ステップ710で実行完了が順序Activity2に通知される。これを受けて、ステップ711で単一Activity10が順序Activity2により実行される。
When the execution of the
次のステップ712で、順序Activity3が単一Activity13により実行され、ステップ713で単一Activity14が順序Activity3により実行される。そしてステップ708で単一Activity13が順序Activity3により実行される。
In the next step 712, the
また、単一Activity14の実行が完了すると、ステップ714で実行完了が順序Activity3に通知される。これを受けて、ステップ715で実行完了が順序Activity3に通知される。更にこれを受けて、ステップ716で実行完了が同期Activity1に通知される。
When the execution of the
単一Activity10の実行が完了すると、ステップ717で実行完了が順序Activity2に通知される。これを受けて、ステップ718で実行完了が同期Activity1に通知される。更にこれを受けて、ステップ719で実行完了が順序Activity1に通知される。
When the execution of the
次のステップ720で、単一Activity15が順序Activity1により実行され、ステップ721で実行完了が順序Activity1に通知される。これを受けて、ステップ722で実行完了がActor1に通知される。
In the next step 720, the
上述した実施形態では、図4に示したデザインパターンを用いて説明したが、このデザインパターンはC++言語用に作成されたものである。図4に示したデザインパターンをC言語用に作成したものを、図8に示す。図8に示すデザインパターンは、単にC言語用としたものであるので、図4に示したデザインパターンと同じ処理を示している。 In the embodiment described above, the design pattern shown in FIG. 4 has been described, but this design pattern is created for the C ++ language. FIG. 8 shows the design pattern shown in FIG. 4 created for the C language. Since the design pattern shown in FIG. 8 is simply for the C language, it shows the same processing as the design pattern shown in FIG.
なお、以上説明した図7のシーケンス図の処理の流れは一例であり、本発明の主旨を逸脱しない範囲内で処理順序を入れ替えたり、新たなステップを追加したり、不要なステップを削除したりすることができることは言うまでもない。 Note that the processing flow of the sequence diagram of FIG. 7 described above is an example, and the processing order is changed, new steps are added, and unnecessary steps are deleted without departing from the gist of the present invention. It goes without saying that you can do it.
12 ソースコード作成装置
18 CPU
20 HDD
22 RAM
50 Activityオブジェクト
52 単一Activityオブジェクト
54 複合Activityオブジェクト
56 同期Activityオブジェクト
58 順序Activityオブジェクト
60 順序Activity仕様オブジェクト
62 分岐オブジェクト
64 同期Activity仕様オブジェクト
66 同期オブジェクト
68 順序オブジェクト
12
20 HDD
22 RAM
50
Claims (2)
前記取得手段により取得されたアクティビティ情報に示される前記処理が単一処理か複合処理かを前記処理毎に判定する第1判定処理を前記ソースコードに追記する第1追記手段と、
前記第1判定処理により複合処理と判定された処理が、同期処理か順次処理かを判定する第2判定処理を前記ソースコードに追記する第2追記手段と、
前記処理を実行した際に、前記処理が終了した場合に終了したことを通知するための前記第1判定処理により判定された複合処理が存在するか否か判定する第3判定処理を前記ソースコードに追記する第3追記手段と、
前記第2判定処理により判定された順次処理のうち、最初に実行する処理を示す開始処理を認識する第1認識処理を前記ソースコードに追記する第4追記手段と、
前記順次処理を実行した際に、いずれの処理が実行中であるかを認識する第2認識処理を前記ソースコードに追記する第5追記手段と、
前記順次処理を実行した際に、実行中の処理の次に実行する処理が存在するか否かを判定する第4判定処理を前記ソースコードに追記する第6追記手段と、
前記順次処理を実行した際に、実行中の処理の次に実行する複数の処理が存在する場合に、いずれの処理を次に実行するかを判定する第5判定処理を前記ソースコードに追記する第7追記手段と、
前記第2判定処理により判定された同期処理において実行する複数の処理を認識する第3認識処理を前記ソースコードに追記する第8追記手段と、
実行中の各処理の終了を同期させるための終了同期処理を前記ソースコードに追記する第9追記手段と、
を有するソースコード作成装置。 Activity information indicating an activity diagram composed of processing including sequence processing, synchronization processing, and branch processing, and an acquisition unit for acquiring source code corresponding to the processing;
First appending means for appending a first determination process to the source code for determining whether the process indicated by the activity information acquired by the acquiring means is a single process or a composite process;
A second appending unit for appending a second determination process to the source code for determining whether the process determined as the composite process by the first determination process is a synchronous process or a sequential process;
When the process is executed, a third determination process for determining whether or not there is a composite process determined by the first determination process for notifying that the process has ended when the process is completed is the source code A third appending means for appending to,
A fourth appending means for appending a first recognition process to the source code for recognizing a start process indicating a process to be executed first among the sequential processes determined by the second determination process;
A fifth appending means for appending a second recognition process to the source code for recognizing which process is being performed when the sequential process is performed;
A sixth appending means for appending a fourth determination process to the source code for determining whether or not there is a process to be executed next to the process being executed when the sequential process is performed;
When there are a plurality of processes to be executed next to the process being executed when the sequential processes are executed, a fifth determination process for determining which process to execute next is added to the source code. A seventh appending means;
An eighth appending means for appending, to the source code, a third recognition process for recognizing a plurality of processes executed in the synchronization process determined by the second determination process;
Ninth appending means for appending an end synchronization process for synchronizing the end of each process being executed to the source code;
A source code creating device.
順序処理、同期処理、及び分岐処理を含む処理で構成されるアクティビティ図を示すアクティビティ情報、及び前記処理に対応するソースコードを取得する取得手段と、
前記取得手段により取得されたアクティビティ情報に示される前記処理が単一処理か複合処理かを前記処理毎に判定する第1判定処理を前記ソースコードに追記する第1追記手段と、
前記第1判定処理により複合処理と判定された処理が、同期処理か順次処理かを判定する第2判定処理を前記ソースコードに追記する第2追記手段と、
前記処理を実行した際に、前記処理が終了した場合に終了したことを通知するための前記第1判定処理により判定された複合処理が存在するか否か判定する第3判定処理を前記ソースコードに追記する第3追記手段と、
前記第2判定処理により判定された順次処理のうち、最初に実行する処理を示す開始処理を認識する第1認識処理を前記ソースコードに追記する第4追記手段と、
前記順次処理を実行した際に、いずれの処理が実行中であるかを認識する第2認識処理を前記ソースコードに追記する第5追記手段と、
前記順次処理を実行した際に、実行中の処理の次に実行する処理が存在するか否かを判定する第4判定処理を前記ソースコードに追記する第6追記手段と、
前記順次処理を実行した際に、実行中の処理の次に実行する複数の処理が存在する場合に、いずれの処理を次に実行するかを判定する第5判定処理を前記ソースコードに追記する第7追記手段と、
前記第2判定処理により判定された同期処理において実行する複数の処理を認識する第3認識処理を前記ソースコードに追記する第8追記手段と、
実行中の各処理の終了を同期させるための終了同期処理を前記ソースコードに追記する第9追記手段と、
として機能させるためのソースコード作成プログラム。 Computer
Activity information indicating an activity diagram composed of processing including sequence processing, synchronization processing, and branch processing, and an acquisition unit for acquiring source code corresponding to the processing;
First appending means for appending a first determination process to the source code for determining whether the process indicated by the activity information acquired by the acquiring means is a single process or a composite process;
A second appending unit for appending a second determination process to the source code for determining whether the process determined as the composite process by the first determination process is a synchronous process or a sequential process;
When the process is executed, a third determination process for determining whether or not there is a composite process determined by the first determination process for notifying that the process has ended when the process is completed is the source code A third appending means for appending to,
A fourth appending means for appending a first recognition process to the source code for recognizing a start process indicating a process to be executed first among the sequential processes determined by the second determination process;
A fifth appending means for appending a second recognition process to the source code for recognizing which process is being performed when the sequential process is performed;
A sixth appending means for appending a fourth determination process to the source code for determining whether or not there is a process to be executed next to the process being executed when the sequential process is performed;
When there are a plurality of processes to be executed next to the process being executed when the sequential processes are executed, a fifth determination process for determining which process to execute next is added to the source code. A seventh appending means;
An eighth appending means for appending, to the source code, a third recognition process for recognizing a plurality of processes executed in the synchronization process determined by the second determination process;
Ninth appending means for appending an end synchronization process for synchronizing the end of each process being executed to the source code;
Source code creation program to function as
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009044121A JP2010198457A (en) | 2009-02-26 | 2009-02-26 | Source code creation device and source code creation program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009044121A JP2010198457A (en) | 2009-02-26 | 2009-02-26 | Source code creation device and source code creation program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010198457A true JP2010198457A (en) | 2010-09-09 |
Family
ID=42823100
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009044121A Pending JP2010198457A (en) | 2009-02-26 | 2009-02-26 | Source code creation device and source code creation program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010198457A (en) |
-
2009
- 2009-02-26 JP JP2009044121A patent/JP2010198457A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5376509B2 (en) | Execution history trace method | |
CN104204975B (en) | Sequencer debugging auxiliary device | |
JP2009265810A (en) | Status transition test support device, status transition test support program and status transition test support method | |
JP2012221380A (en) | Automatic program generation device, method and computer program | |
CN106709985B (en) | Virtual sacrifice three-dimensional scene generation method and device | |
CN108897569A (en) | The method for cleaning and computer readable storage medium of iOS engineering discarded record | |
CN106815022A (en) | A kind of general UI interface creating methods and device based on tree data structure | |
US9342064B2 (en) | Motion SFC program component creation device | |
US20130263143A1 (en) | Information processing method and system | |
CN111506306A (en) | Method and device for compiling Ansible script and electronic equipment | |
CN107220044B (en) | Method and device for driving business object based on meta-model | |
JP2010198457A (en) | Source code creation device and source code creation program | |
JP4889338B2 (en) | Screen program layout changing method, information processing apparatus, program, and recording medium | |
JP2008293186A (en) | Method and apparatus for automatically generating steel plant control program | |
JP2008052356A (en) | Source code automatic generation device | |
JP2008052359A (en) | Test case generation device, test case generation method, and test case generator | |
JP2010198479A (en) | System for automatically executing application test | |
JP6025955B1 (en) | Program analysis apparatus and program analysis method | |
JP2018022433A (en) | Control program, apparatus, and method | |
CN116431627A (en) | Electronic equipment database table generation method, system, equipment and medium | |
JP3930255B2 (en) | System specification information processing apparatus, system specification information processing method, and program | |
JP2016042317A (en) | Software design support apparatus and method | |
CN113238742A (en) | Method, device, terminal and medium for modifying and replaying direct-current control protection page program | |
JP2016081126A (en) | Job control language automatic generation program | |
KR20210061156A (en) | System and method of providing civil model linking 3 dimensional model and analysis model |