JPH08190410A - Device and method for assisting software development - Google Patents

Device and method for assisting software development

Info

Publication number
JPH08190410A
JPH08190410A JP238295A JP238295A JPH08190410A JP H08190410 A JPH08190410 A JP H08190410A JP 238295 A JP238295 A JP 238295A JP 238295 A JP238295 A JP 238295A JP H08190410 A JPH08190410 A JP H08190410A
Authority
JP
Japan
Prior art keywords
allocation
plant
software
result
software development
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
JP238295A
Other languages
Japanese (ja)
Inventor
Bunjiro Takashima
文次郎 高島
Hiroshi Tsukimoto
洋 月本
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP238295A priority Critical patent/JPH08190410A/en
Publication of JPH08190410A publication Critical patent/JPH08190410A/en
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • Programmable Controllers (AREA)

Abstract

PURPOSE: To provide a software development assisting device which automatically allocates constituent elements of a plant to control specifications. CONSTITUTION: The constitution of a plant is inputted as the combination of plural elements through a constitution input means 1. The control specifications of software are inputted as the combination of one or two operations for the elements through a control specification input means 2. An allocating means 3 allocates the respective elements included in the plant to the respective operations included in the control specifications according to a given allocation rule. An output means 4 outputs the allocation result. The allocation result is corrected through a correcting means 5. An updating means 6 updates the allocation rule on the basis of the allocation result and the correction result as the allocation result after the correction. A generating means 7 generates the software which controls the plant on the basis of the control specifications and allocation result.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、ソフトウェアの開発を
支援するソフトウェア開発支援装置及びソフトウェア開
発支援方法の改良に関するもので、とくに、石油化学産
業などの各種製造業においてプラントを制御するための
シーケンス制御ソフトウェアの作成に適したものであ
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to improvement of a software development support device and software development support method for supporting software development, and particularly to a sequence for controlling a plant in various manufacturing industries such as petrochemical industry. It is suitable for creating control software.

【0002】[0002]

【従来の技術】従来から、ソフトウェアの開発を支援す
るソフトウェア開発支援装置及びソフトウェア開発支援
方法が知られている。ソフトウェア開発支援装置(方
法)は、ソフトウェアに対する要求である仕様に基づい
て、ソフトウェアの記述・生成・試験などを行う作業を
支援する。ソフトウェア開発支援装置の代表的な適用分
野は石油化学プラントなど各種プラントを制御するため
のシーケンス制御ソフトウェアである。
2. Description of the Related Art Conventionally, a software development supporting device and a software development supporting method for supporting software development have been known. The software development support device (method) supports the work of describing, creating, and testing the software based on the specifications that are the requirements for the software. A typical application field of the software development support device is sequence control software for controlling various plants such as a petrochemical plant.

【0003】この場合、制御仕様はソフトウェアに対す
る要求であってソフトウェア自体ではない。このため、
自然言語で与えられることが多く、また、制御対象であ
る具体的な機器名を特定して記述されることは少ない。
従来では、開発者は、まず、制御仕様を、複数の操作に
分割し、それら操作の組み合わせとして記述する。ここ
で「操作」とは、一定の対象に対する制御の単位となる
ステップである。制御仕様の段階では、各操作における
対象は「攪拌機を起動」のようにある程度一般的に記述
され、「何番の攪拌機を」のように具体的には通常記述
されない。
In this case, the control specification is a request for software, not the software itself. For this reason,
It is often given in natural language, and is rarely described by specifying a specific device name to be controlled.
Conventionally, a developer first divides a control specification into a plurality of operations and describes them as a combination of those operations. Here, the "operation" is a step that is a unit of control for a certain target. At the stage of control specification, the object in each operation is generally described to some extent, such as “start the stirrer”, and is not usually specifically described such as “what stirrer is”.

【0004】そして、次の段階として、制御仕様の各操
作とプラント構成とを照合することによって各操作の対
象として具体的な機器を手作業で割り当てる。なお、実
際の開発はソフトウェアを構成する部品ごとに行われ、
各部品を合成してソフトウェア全体が構成される。
Then, in the next step, by collating each operation of the control specification with the plant configuration, a specific device is manually assigned as a target of each operation. In addition, actual development is performed for each component that makes up the software,
The whole software is constructed by synthesizing each part.

【0005】[0005]

【発明が解決しようとする課題】しかしながら、上記の
ような従来のソフトウェア開発支援装置(方法)では、
シーケンス制御ソフトウェアを開発するような場合、制
御対象とするプラントが大規模化するにしたがって手作
業による割り当て作業の回数は飛躍的に増大する。この
ため、開発者であるユーザの負担も増大し、その開発工
数も多大なものとなる。このため、開発効率の優れたソ
フトウェア開発支援装置が求められていた。また、開発
効率を向上することによってユーザの負担を軽減すれ
ば、設計内容に一層留意し、ソフトウェアの避けるべき
不具合を一層確実に減少させることができる。
However, in the conventional software development support device (method) as described above,
In the case of developing sequence control software, the number of manual assignment tasks increases dramatically as the control target plant grows in scale. Therefore, the burden on the user who is the developer also increases, and the number of man-hours for development increases. Therefore, a software development support device having excellent development efficiency has been demanded. Further, if the burden on the user is reduced by improving the development efficiency, it is possible to pay more attention to the design content and to more surely reduce the defects that the software should avoid.

【0006】本発明は、上記のような従来技術の問題点
を解決するために提案されたもので、その目的は、制御
仕様にプラントの構成要素を自動的に割り当てるソフト
ウェア開発支援装置及びソフトウェア開発支援方法を提
供することである。また、本発明の他の目的は、割り当
て結果の確認・修正の容易なソフトウェア開発支援装置
及びソフトウェア開発支援方法を提供することである。
また、本発明の他の目的は、より的確な割り当てを行う
ソフトウェア開発支援装置及びソフトウェア開発支援方
法を提供することである。また、本発明の他の目的は、
情報の理解・操作を効率的に行えるソフトウェア開発支
援装置及びソフトウェア開発支援方法を提供することで
ある。
The present invention has been proposed in order to solve the above-mentioned problems of the prior art, and its object is a software development support device and software development for automatically assigning plant constituent elements to control specifications. It is to provide a support method. Another object of the present invention is to provide a software development support device and a software development support method in which the allocation result can be easily confirmed and modified.
Another object of the present invention is to provide a software development support device and a software development support method for performing more accurate allocation. Further, another object of the present invention is to
An object of the present invention is to provide a software development support device and a software development support method capable of efficiently understanding and operating information.

【0007】[0007]

【課題を解決するための手段】上記の目的を達成するた
め、請求項1の発明は、プラントを制御するソフトウェ
アの開発を支援するソフトウェア開発支援装置におい
て、前記プラントの構成を、複数の要素の組み合わせと
して入力する構成入力手段と、前記ソフトウェアの制御
仕様を、要素に対する操作を一又は二以上組み合わせた
ものとして入力する制御仕様入力手段と、与えられた割
り当てルールに基づいて、制御仕様に含まれる前記各操
作に、前記プラントに含まれる各要素を割り当てる割り
当て手段と、を有することを特徴とする。
In order to achieve the above object, the invention of claim 1 is a software development supporting apparatus for supporting the development of software for controlling a plant, wherein the configuration of the plant is composed of a plurality of elements. A configuration input means for inputting as a combination, a control specification input means for inputting the control specification of the software as a combination of one or more operations for elements, and a control specification based on a given allocation rule. An allocation unit that allocates each element included in the plant to each operation is provided.

【0008】また、請求項2の発明は、請求項1記載の
ソフトウェア開発支援装置において、前記割り当ての結
果を出力する出力手段と、割り当ての結果を修正するた
めの修正手段と、を有することを特徴とする。
The invention according to claim 2 is the software development support apparatus according to claim 1, further comprising output means for outputting the result of the allocation, and modifying means for modifying the result of the allocation. Characterize.

【0009】また、請求項3の発明は、請求項2記載の
ソフトウェア開発支援装置において、前記割り当て結果
及び前記修正後の前記割り当て結果である修正結果に基
づいて、前記割り当てルールを更新する更新手段を有す
ることを特徴とする。
According to a third aspect of the invention, in the software development supporting apparatus according to the second aspect, the updating means for updating the allocation rule based on the allocation result and the modification result which is the modified allocation result. It is characterized by having.

【0010】また、請求項4の発明は、請求項1記載の
ソフトウェア開発支援装置において、プラントの各要素
を表すグラフィックシンボルである設備画像を用いて前
記プラント及び前記割り当てに関する情報の入出力を行
うグラフィカル・ユーザ・インタフェースを有すること
を特徴とする。
According to a fourth aspect of the present invention, in the software development support apparatus according to the first aspect, the facility image which is a graphic symbol representing each element of the plant is used to input and output information regarding the plant and the allocation. It is characterized by having a graphical user interface.

【0011】また、請求項5の発明は、請求項1記載の
ソフトウェア開発支援装置において、前記制御仕様及び
前記割り当ての結果に基づいて、前記プラントを制御す
るソフトウェアを生成する生成手段を有することを特徴
とする。
The invention according to claim 5 is the software development support apparatus according to claim 1, further comprising a generation means for generating software for controlling the plant based on the control specification and the result of the allocation. Characterize.

【0012】また、請求項6のソフトウェア開発支援方
法は、プラントを制御するソフトウェアの開発を支援す
るソフトウェア開発支援装置において、前記プラントの
構成を、複数の要素の組み合わせとして入力する構成入
力のステップと、前記ソフトウェアの制御仕様を、要素
に対する操作を一又は二以上組み合わせたものとして入
力する制御仕様入力のステップと、与えられた割り当て
ルールに基づいて、制御仕様に含まれる前記各操作に、
前記プラントに含まれる各要素を割り当てる割り当ての
ステップと、を含むことを特徴とする。
The software development support method according to a sixth aspect of the present invention is a software development support apparatus for supporting the development of software for controlling a plant, comprising the step of inputting the configuration of the plant as a combination of a plurality of elements. , A control specification step of inputting the control specification of the software as a combination of one or more operations for elements, and based on a given allocation rule, for each operation included in the control specification,
A step of assigning each element included in the plant.

【0013】また、請求項7の発明は、請求項6記載の
ソフトウェア開発支援方法において、前記割り当ての結
果を出力する出力のステップと、割り当ての結果を修正
するための修正のステップと、を含むことを特徴とす
る。
Further, the invention of claim 7 is the software development supporting method according to claim 6, which includes an output step of outputting the result of the allocation, and a correction step for correcting the result of the allocation. It is characterized by

【0014】また、請求項8の発明は、請求項7記載の
ソフトウェア開発支援方法において、前記割り当て結果
及び前記修正後の前記割り当て結果である修正結果に基
づいて、前記割り当てルールを更新する更新のステップ
を含むことを特徴とする。
The invention of claim 8 is the software development support method according to claim 7, wherein the updating of the allocation rule is performed based on the allocation result and a modification result which is the modified allocation result. It is characterized by including a step.

【0015】また、請求項9の発明は、請求項6記載の
ソフトウェア開発支援方法において、プラントの各要素
を表すグラフィックシンボルである設備画像を用いて前
記プラント及び前記割り当てに関する情報の入出力を行
うグラフィカル・ユーザ・インタフェースを含むことを
特徴とする。
According to a ninth aspect of the invention, in the software development supporting method according to the sixth aspect, the facility image, which is a graphic symbol representing each element of the plant, is used to input and output information regarding the plant and the allocation. It is characterized by including a graphical user interface.

【0016】また、請求項10の発明は、請求項6記載
のソフトウェア開発支援方法において、前記制御仕様及
び前記割り当ての結果に基づいて、前記プラントを制御
するソフトウェアを生成する生成のステップを含むこと
を特徴とする。
The invention according to claim 10 is the method for supporting software development according to claim 6, further comprising a step of generating software for controlling the plant based on the control specification and the result of the allocation. Is characterized by.

【0017】[0017]

【作用】上記のような構成を有する本発明は、次のよう
な作用を有する。すなわち、請求項1,6の発明では、
制御仕様の各操作の対象に、プラントの構成に含まれる
各要素を割り当てる場合の法則性を割り当てルールとし
ておき、ソフトウェア開発では、割り当てルールにした
がって制御仕様の各操作にプラントの具体的な要素が割
り当てられる。このため、ユーザが割り当てを手作業で
行う必要性がなくなり、ソフトウェア開発が効率化され
る。
The present invention having the above structure has the following functions. That is, in the inventions of claims 1 and 6,
The rule of assigning each element included in the plant configuration to each control specification operation is set as an allocation rule, and in software development, each operation of the control specification has a specific element of the plant according to the allocation rule. Assigned. Therefore, it is not necessary for the user to perform the assignment manually, and the software development becomes efficient.

【0018】また、請求項2,7の発明では、割り当て
の結果を自由に修正できるので、ユーザの希望に合致し
たソフトウェア開発支援を得ることができる。
Further, in the inventions of claims 2 and 7, since the result of the allocation can be freely modified, it is possible to obtain software development support that matches the user's wishes.

【0019】また、請求項3,8の発明では、割り当て
結果と修正結果とに基づいて割り当てルールが更新(追
加・修正・削除など)されるので、割り当ての内容が需
要により合致した的確なものとなる。
Further, in the inventions of claims 3 and 8, since the allocation rule is updated (addition / modification / deletion etc.) based on the allocation result and the modification result, the content of the allocation is more accurate than the demand. Becomes

【0020】また、請求項4,9の発明では、プラント
構成の入力、割り当て結果の出力及び修正を設備画像を
用いたグラフィカル・ユーザ・インタフェースを用いて
行うことができるので、情報の理解及び操作が効率化さ
れる。
Further, in the inventions of claims 4 and 9, since the input of the plant configuration, the output of the allocation result and the correction can be performed using the graphical user interface using the facility image, the understanding and operation of the information can be performed. Is made more efficient.

【0021】また、請求項5,10の発明では、制御仕
様及び割り当ての結果(修正された場合を含む)に基づ
いて、プラントを制御するソフトウェアが生成されるの
で、ソフトウェア開発がより高度に自動化され、ソフト
ウェアの信頼性と開発効率を向上する。
Further, in the inventions of claims 5 and 10, the software for controlling the plant is generated based on the control specification and the result of the allocation (including the case where it is modified), so that the software development is highly automated. And improve software reliability and development efficiency.

【0022】[0022]

【実施例】次に、本発明の実施例について図面に従って
具体的に説明する。なお、後述する実施例はコンピュー
タ上に実現され、実施例の各機能は所定の手順(ソフト
ウェア)がこのコンピュータを制御することで実現され
る。
Embodiments of the present invention will now be specifically described with reference to the drawings. The embodiments described below are realized on a computer, and each function of the embodiments is realized by a predetermined procedure (software) controlling the computer.

【0023】したがって、本明細書では、以下、実施例
の各機能を有する仮想的回路ブロック(手段)を想定し
て実施例を説明する。すなわち、本明細書における各
「手段」ないし「部」は実施例の各機能に対応する概念
で、必ずしも特定のハードウェアやソフトウェア・ルー
チンに1対1には対応しない。同一のハードウェア要素
が場合によって異なった手段を構成する。例えば、コン
ピュータはある命令を実行するときにある手段となり別
の命令を実行するときは別の手段となりうる。また、一
つの手段がわずか1命令によって実現される場合もあれ
ば多数の命令によって実現される場合もある。但し、コ
ンピュータの使用は一例であり、本発明の機能の全部又
は一部は、可能ならば、カスタムチップ(専用の集積回
路)のような電子回路上に実現してもよい。
Therefore, in the present specification, the embodiments will be described below assuming a virtual circuit block (means) having each function of the embodiments. That is, each "means" or "unit" in this specification is a concept corresponding to each function of the embodiment, and does not necessarily correspond to a specific hardware or software routine on a one-to-one basis. The same hardware element may in some cases constitute different means. For example, a computer may be one means for executing one instruction and another for executing another instruction. Further, one means may be realized by only one instruction or may be realized by a large number of instructions. However, use of a computer is an example, and all or part of the functions of the present invention may be realized on an electronic circuit such as a custom chip (dedicated integrated circuit) if possible.

【0024】実施例に用いられるコンピュータは、一般
には、CPU(中央演算処理装置)と、RAM(随時書
込読出型記憶素子)からなる主記憶装置とを有する。ま
た、前記コンピュータの規模は自由であり、マイクロコ
ンピュータ・パーソナルコンピュータ・ワークステーシ
ョン・メインフレームなど、いかなる規模のものを用い
てもよい。
The computer used in the embodiment generally has a CPU (central processing unit) and a main memory device comprising a RAM (random writing / reading type memory element). The size of the computer is arbitrary, and any size such as a microcomputer, a personal computer, a workstation, and a mainframe may be used.

【0025】また、前記コンピュータのハードウェア
は、典型的には、キーボードやマウスなどの入力装置
と、ハードディスク装置などの外部記憶装置と、CRT
表示装置やプリンタ印字装置などの出力装置と、必要な
入出力制御回路を含む。
The hardware of the computer is typically an input device such as a keyboard and a mouse, an external storage device such as a hard disk device, and a CRT.
It includes an output device such as a display device and a printer printer, and necessary input / output control circuits.

【0026】但し、ハードウェア構成は自由で、本発明
が実施できる限り、上記の構成要素の一部を追加・変更
・除外してもよい。例えば、実施例は、複数のコンピュ
ータを接続したコンピュータネットワーク上に実現して
もよい。また、CPUの種類は自由であり、CPUを複
数同時に用いたり、単一のCPUをタイムシェアリング
(時分割)で使用し、複数の処理を同時平行的に行って
もよい。
However, the hardware configuration is arbitrary, and as long as the present invention can be implemented, some of the above-mentioned components may be added, changed or excluded. For example, the embodiments may be realized on a computer network in which a plurality of computers are connected. Further, the type of CPU is arbitrary, and a plurality of CPUs may be used at the same time, or a single CPU may be used for time sharing (time sharing) to perform a plurality of processes simultaneously in parallel.

【0027】また、他の入力装置(例えば、タッチパネ
ル・ライトペン・トラックボールなどのポインティング
デバイスや、デジタイザ・イメージ読取装置やビデオカ
メラなどの画像入力装置・音声識別装置・各種センサな
ど)を用いてもよい。また、他の外部記憶装置(例え
ば、フロッピーディスク装置・RAMカード装置・磁気
テープ装置・光学ディスク装置・光磁気ディスク装置・
バブルメモリ装置・フラッシュメモリなど)を用いても
よい。また、他の出力装置(例えば、液晶表示装置・プ
ラズマディスプレイ装置・ビデオプロジェクター・LE
D表示装置・音響発生回路・音声合成回路など)を用い
てもよい。
Further, other input devices (for example, a pointing device such as a touch panel, a light pen, a trackball, an image input device such as a digitizer, an image reading device, a video camera, a voice recognition device, various sensors, etc.) are used. Good. Also, other external storage devices (for example, floppy disk device, RAM card device, magnetic tape device, optical disk device, magneto-optical disk device,
Bubble memory device, flash memory, etc.) may be used. In addition, other output devices (for example, liquid crystal display device, plasma display device, video projector, LE
D display device, sound generation circuit, voice synthesis circuit, etc.) may be used.

【0028】また、前記コンピュータにおいて実施例を
実現するためのソフトウェアの構成としては、典型的に
は、実施例の各機能を実現するためのアプリケーション
ソフトウェアが、OS(オペレーティングシステム)上
で実行される態様が考えられる。また、実施例を実現す
るためのソフトウェアの態様としては、典型的には、高
級言語やアセンブラからコンパイル(翻訳)された機械
語が考えられる。但し、前記コンピュータのソフトウェ
ア構成も自由であり、本発明が実施できる限り、ソフト
ウェア構成を変更してもよい。例えば、必ずしもOSを
用いる必要はなく、また、ソフトウェアの表現形式も自
由であり、BASICのようなインタプリタ(逐次解釈
実行型)言語を用いてもよい。
Further, as a software configuration for implementing the embodiment in the computer, typically, application software for implementing each function of the embodiment is executed on an OS (operating system). Embodiments are possible. Further, as a form of software for implementing the embodiment, typically, a machine language compiled (translated) from a high-level language or an assembler can be considered. However, the software configuration of the computer is also free, and the software configuration may be changed as long as the present invention can be implemented. For example, it is not always necessary to use the OS, the expression format of the software is free, and an interpreter (sequential interpretation execution type) language such as BASIC may be used.

【0029】また、ソフトウェアの格納態様も自由であ
り、ROM(読出し専用メモリ)に格納しておいてもよ
く、また、ハードディスク装置のような外部記憶装置に
格納しておき、コンピュータの起動時や処理の開始時に
主メモリ上にロード(読み込み)してもよい。また、ソ
フトウェアを複数の部分に分割して外部記憶装置に格納
しておき、処理内容に応じて必要なモジュールのみを随
時主メモリ上にロード(読み込み)してもよい。さら
に、ソフトウェアの部分ごとに異なった態様で格納して
もよい。
The software can be stored in any manner, and may be stored in a ROM (read-only memory). Alternatively, the software may be stored in an external storage device such as a hard disk drive at the time of starting the computer. It may be loaded into the main memory at the start of processing. Alternatively, the software may be divided into a plurality of parts and stored in an external storage device, and only the necessary modules may be loaded (read) into the main memory at any time according to the processing content. Further, each software portion may be stored in a different manner.

【0030】また、本実施例における各手順の各ステッ
プは、その性質に反しない限り、実行順序を変更し、複
数同時に実行し、また、実行ごとに異なった順序で実行
してもよい。このような順序の変更は、例えば、ユーザ
が実行可能な処理を選択するなどメニュー形式のインタ
ーフェース手法によって実現することができる。
The execution order of each step of each procedure in this embodiment may be changed, a plurality of steps may be executed at the same time, or a different order may be executed for each execution, as long as the nature thereof is not violated. Such an order change can be realized by a menu-type interface method, such as a user selecting an executable process.

【0031】また、本明細書において「入力」というと
きは、本来の情報の入力のみならず、情報の入力と密接
に関連する他の処理を含む。このような処理は、例え
ば、入力内容のエコーバックや修正・編集である。ま
た、「入力」は、必ずしもコンピュータ外部からの入力
には限定されず、所定のメモリ領域又はディスク装置か
ら情報を読み出すことによっても行われる。また、本明
細書において「出力」というときは、本来の情報の出力
のみならず、情報の出力と密接に関連する他の処理を含
む。このような処理は、例えば、出力すべき範囲の入力
や、画面スクロールの指示である。また、「出力」は、
必ずしもコンピュータ外部への出力には限定されず、所
定のメモリ領域又はディスク装置に情報を書き込むこと
によっても行われる。なお、対話的入出力手順によって
入力と出力を一体的操作によって実現してもよく、この
ような一体的操作によって、選択・指定・特定などの処
理を行ってもよい。
In the present specification, the term "input" includes not only the original input of information but also other processing closely related to the input of information. Such processing is, for example, echo back or correction / editing of input contents. In addition, “input” is not necessarily limited to input from outside the computer, and is also performed by reading information from a predetermined memory area or disk device. Further, in this specification, the term “output” includes not only the original output of information but also other processing closely related to the output of information. Such processing is, for example, input of a range to be output or an instruction for screen scrolling. Also, "output" is
The output is not necessarily limited to the outside of the computer, and may be performed by writing information in a predetermined memory area or a disk device. It should be noted that input and output may be realized by an integrated operation by an interactive input / output procedure, and processing such as selection, designation, and specification may be performed by such an integrated operation.

【0032】また、本明細書におけるデータ(情報)や
データの格納手段は前記コンピュータ上においていかな
る態様で存在してもよい。例えば、データのハードウェ
ア上の所在部分は、主記憶装置・外部記憶装置・CPU
のレジスタやキャッシュメモリなどいかなる部分でもよ
い。また、データの保持態様も自由である。例えば、デ
ータは、ファイル形式で保持されるのみならず、メモリ
やディスクなどの記憶装置を物理的アドレスで直接アク
セスすることによって実現してもよい。また、データの
表現形式も自由で、例えば、文字列を表すコードの単位
は、文字単位でも単語単位でもよい。また、データは必
要とされる一定時間だけ保持されれば十分で、その後消
滅してもよく、保持時間の長短は自由である。また、辞
書データのように当面変更されない情報は、ROMに格
納してもよい。
The data (information) and the data storage means in the present specification may exist in any form on the computer. For example, the location portion of data on the hardware is the main storage device / external storage device / CPU.
It may be any part such as a register or a cache memory. Further, the data retention mode is also free. For example, the data is not only retained in the file format, but may be realized by directly accessing a storage device such as a memory or a disk by a physical address. In addition, the expression format of the data is arbitrary, and for example, the unit of the code representing the character string may be a character unit or a word unit. Further, it is sufficient that the data is retained for the required fixed time, and the data may be deleted thereafter, and the retention time is free. Information that is not changed for the time being, such as dictionary data, may be stored in the ROM.

【0033】また、本明細書において、特定の情報への
言及は確認的で、言及されない情報の存在を否定するも
のではない。すなわち、本発明の動作では、動作に必要
な一般的な情報やその格納領域、例えば、各種ポイン
タ、スタック、カウンタ、フラグ、パラメータ、ワーク
エリア、バッファなどが適宜用いられる。
Further, in the present specification, reference to specific information is a confirmation and does not deny the existence of information not referred to. That is, in the operation of the present invention, general information necessary for the operation and its storage area, for example, various pointers, stacks, counters, flags, parameters, work areas, buffers, etc. are appropriately used.

【0034】実施例の各部分が処理に要する情報は、特
に記載がない場合、当該情報を保持している他の部分か
ら獲得される。このような情報の獲得は、例えば、当該
情報を格納している変数やメモリをアクセスすることに
よって実現することができる。なお、情報の消去・抹消
は、当該情報の内容自体を必ずしも記憶領域から現実に
削除せず、消去を表すフラグを設定するなど、情報の意
味付けの変更によって行うことができる。
The information required by each part of the embodiment for processing is obtained from the other part holding the information unless otherwise specified. Such acquisition of information can be realized, for example, by accessing a variable or memory that stores the information. The information can be erased / erased by not actually deleting the content itself of the information from the storage area but by changing the meaning of the information, such as setting a flag indicating the deletion.

【0035】(1)実施例の構成 以下、本発明の一実施例であるソフトウェア開発支援装
置(以下「本装置」という)及びソフトウェア開発支援
方法について、図面に従って具体的に説明する。
(1) Configuration of Embodiments A software development support apparatus (hereinafter referred to as “this apparatus”) and a software development support method according to an embodiment of the present invention will be specifically described below with reference to the drawings.

【0036】本装置は、プラントを制御するソフトウェ
アの開発を支援するもので、請求項1〜10に相当す
る。また、本実施例の目的は、制御仕様にプラントの構
成要素を自動的に割り当てるソフトウェア開発支援装置
及びソフトウェア開発支援方法を提供することである。
また、本実施例の他の目的は、割り当て結果の確認・修
正の容易なソフトウェア開発支援装置及びソフトウェア
開発支援方法を提供することである。また、本実施例の
他の目的は、より的確な割り当てを行うソフトウェア開
発支援装置及びソフトウェア開発支援方法を提供するこ
とである。また、本実施例の他の目的は、情報の理解・
操作を効率的に行えるソフトウェア開発支援装置及びソ
フトウェア開発支援方法を提供することである。
This device supports the development of software for controlling the plant and corresponds to claims 1 to 10. Further, an object of the present embodiment is to provide a software development supporting apparatus and a software development supporting method for automatically allocating plant constituent elements to control specifications.
Another object of the present embodiment is to provide a software development support device and a software development support method in which the allocation result can be easily confirmed and modified. Another object of the present embodiment is to provide a software development support device and a software development support method for performing more accurate allocation. The other purpose of this embodiment is to understand information
It is to provide a software development supporting device and a software development supporting method capable of operating efficiently.

【0037】図1は、本装置の構成を示す機能ブロック
図である。すなわち、本装置は、図1に示すように、プ
ラントの構成を、複数の要素の組み合わせとして入力す
る構成入力手段1と、前記ソフトウェアの制御仕様を、
要素に対する操作を一又は二以上組み合わせたものとし
て入力する制御仕様入力手段2と、与えられた割り当て
ルールに基づいて、制御仕様に含まれる各操作に、プラ
ントに含まれる各要素を割り当てる割り当て手段3と、
を有する。また、本装置は、割り当ての結果を出力する
出力手段4と、割り当ての結果を修正するための修正手
段5と、を有する。
FIG. 1 is a functional block diagram showing the configuration of this apparatus. That is, the present apparatus, as shown in FIG. 1, includes a configuration input means 1 for inputting a plant configuration as a combination of a plurality of elements, and a control specification of the software.
Control specification input means 2 for inputting one or two or more operations for elements, and allocation means 3 for allocating each element included in the plant to each operation included in the control specification based on a given allocation rule. When,
Have. Further, the present apparatus has an output means 4 for outputting the result of allocation and a correction means 5 for correcting the result of allocation.

【0038】また、本装置は、割り当て結果及び修正後
の割り当て結果である修正結果に基づいて、割り当てル
ールを更新する更新手段6を有する。なお、本装置は、
プラントの各要素を表すグラフィックシンボルである設
備画像を用いてプラント及び割り当てに関する情報の入
出力を行うグラフィカル・ユーザ・インタフェース(以
下「GUI」という)を有する。GUIは、情報や機能
を表す視覚的図形(グラフィック・シンボル)に基づい
た入出力形式である。
Further, the present apparatus has an updating means 6 for updating the allocation rule based on the allocation result and the modification result which is the modified allocation result. This device is
It has a graphical user interface (hereinafter referred to as “GUI”) that inputs and outputs information regarding plants and allocations by using equipment images, which are graphic symbols representing each element of the plant. The GUI is an input / output format based on visual figures (graphic symbols) representing information and functions.

【0039】また、本装置は、制御仕様及び割り当ての
結果に基づいて、プラントを制御するソフトウェアを生
成する生成手段7を有する。なお、図2は、本装置の実
現に用いられている上記コンピュータのハードウェア構
成を示す概念図であり、入力装置にはマウスを含む。
Further, the present apparatus has a generation means 7 for generating the software for controlling the plant based on the control specification and the result of the allocation. Note that FIG. 2 is a conceptual diagram showing the hardware configuration of the computer used to implement the present device, and the input device includes a mouse.

【0040】(2)実施例の作用及び効果 上記のような構成を有する本実施例は、次のような作用
を有する。ここで、図3は本実施例の動作手順の一例を
示すフローチャートである。
(2) Operation and effect of the embodiment The present embodiment having the above-mentioned structure has the following operation. Here, FIG. 3 is a flowchart showing an example of the operation procedure of the present embodiment.

【0041】[プラント構成の入力]まず、ユーザは構
成入力手段1を通じ、プラントの構成を、複数の要素の
組み合わせとして入力する(ステップ31)。この入力
は、GUIを用いて行うことができる。例えば、複数の
ウインドウを用い、そのうちパレット用ウインドウ上
に、プラントを構成することがある各要素を表す部品を
グラフィックシンボル(前記設備画像に相当する)で表
示しておく。なお、シンボルはソフトウェア開発支援装
置にあらかじめ入力されており、ユーザが自由に追加・
変更できることが望ましい。また、パレットウインドウ
にならんで、別の入力用ウインドウを表示しておく。
[Input of plant configuration] First, the user inputs the plant configuration as a combination of a plurality of elements through the configuration input means 1 (step 31). This input can be performed using the GUI. For example, a plurality of windows are used, and among the windows for pallets, parts representing each element that may form a plant are displayed as graphic symbols (corresponding to the facility images). The symbols are pre-populated in the software development support device, and the user can freely add or
It is desirable to be able to change. Also, another input window is displayed in addition to the palette window.

【0042】プラント構成の入力は次のような要素の追
加を繰り返して行う。すなわち、要素の追加では、ユー
ザがマウスでパレット上のシンボルをポイントし、マウ
スの第1ボタンを押すとシンボルが選択されシンボルの
コピーが現れてマウスポインタに伴って動くようにな
る。この状態で、選択したシンボルをマウスポインタで
画面上を引きずるように移動させ、入力用ウインドウ上
の所望の位置でもう1度第1ボタンをクリックする。す
るとシンボルが入力用ウインドウ上に定着する。要素同
士の接続関係では、入力用ウインドウ上で、接続しよう
とする(例えば)2つのシンボルをそれぞれポイントし
ながら第2ボタンを1回ずつ押すと、2つのシンボル間
に接続線が現れて接続される。
Input of the plant configuration is performed by repeatedly adding the following elements. That is, in adding an element, when the user points the symbol on the palette with the mouse and presses the first mouse button, the symbol is selected and a copy of the symbol appears and moves with the mouse pointer. In this state, the selected symbol is moved by dragging it on the screen with the mouse pointer, and the first button is clicked again at a desired position on the input window. Then, the symbol is fixed on the input window. In the connection relationship between elements, when the second button is pressed once while pointing to (for example) two symbols to be connected on the input window, a connection line appears between the two symbols to connect them. It

【0043】一旦定着したシンボルの移動は、追加と同
様の操作を入力用ウインドウ内で実行することによって
行い、この場合、接続線は角度や位置が移動にともなっ
て自動的に変形することが望ましい。入力完了時に、プ
ラントを構成する各要素には種類ごとの共通の記号と種
類ごとの通し番号による識別名が自動割り当てされる。
The symbol once fixed is moved by executing the same operation as the addition in the input window, and in this case, it is desirable that the connecting line is automatically deformed as the angle and the position move. . At the time of completion of input, a common symbol for each type and an identification name based on a serial number for each type are automatically assigned to each element constituting the plant.

【0044】図4は、入力されたプラント構成の表示例
であり、各要素のシンボルと、接続線と、識別名が表示
されている。この表示例は、容器T001には撹拌器A
G001があり、容器T001の上方にはレベル計LS
001があり、容器T001の下方にはレベル計LS0
02があることを示している。そして、A原料は電磁弁
V001、電動弁CV001、流量計FS001とを通
って容器T001に流れ、B原料はポンプP001、電
磁弁V002を通って容器T001に流れ、容器T00
1内の流体は電磁弁V001を通って容器T001から
出ることを示している。
FIG. 4 is a display example of the input plant configuration, in which symbols of each element, connecting lines, and identification names are displayed. This display example shows that the container T001 has an agitator A
There is G001, and the level meter LS is above the container T001.
001, and the level meter LS0 is below the container T001.
02 is present. Then, the A raw material flows through the solenoid valve V001, the motor-operated valve CV001, and the flow meter FS001 into the container T001, and the B raw material flows through the pump P001 and the solenoid valve V002 into the container T001.
It is shown that the fluid in 1 exits the container T001 through the solenoid valve V001.

【0045】追加され接続されたプラントの構成データ
は、各要素間の接続関係を論理的に表したデータ(以下
「接続リスト」という)として所定のメモリ領域に保存
される。図5は接続リストの例であり、記号後の括弧書
きは接続位置の表示である。
The configuration data of the added and connected plant is stored in a predetermined memory area as data (hereinafter referred to as "connection list") that logically represents the connection relationship between each element. FIG. 5 is an example of the connection list, and the parentheses after the symbol indicate the connection position.

【0046】[制御仕様の入力]次に、ユーザは、制御
仕様入力手段2を通じて、ソフトウェアの制御仕様を、
要素に対する操作を一又は二以上組み合わせたものとし
て入力する(ステップ32)。すなわち、制御仕様は複
数の操作の集合として記述され、各操作は、制御の基本
単位であるステップごとに記述される。各操作は、操作
−対象という組で表される。制御仕様では、操作と対象
を特定できれば十分で、通常は操作と対象の組み合わせ
が期待されるが、操作−対象という表現形式に限定され
るものではない。ここで、図6は制御仕様の例であり、
例えばこのうち「仕込(A原料)」というステップで
は、操作は「仕込」であり、対象は「A原料」となる。
そして、「仕込(A原料)」は「A原料を容器に仕込
む」という意味を持っている。
[Input of control specification] Next, the user inputs the control specification of the software through the control specification input means 2.
The operation for the element is input as one or a combination of two or more (step 32). That is, the control specification is described as a set of a plurality of operations, and each operation is described for each step which is a basic unit of control. Each operation is represented by an operation-object pair. In the control specification, it is sufficient if the operation and the target can be specified, and a combination of the operation and the target is normally expected, but the expression form of the operation-the target is not limited. Here, FIG. 6 is an example of control specifications,
For example, in the step “preparation (A raw material)”, the operation is “preparation” and the target is “A raw material”.
And "preparation (raw material A)" means "prepare raw material A into a container".

【0047】[割り当て]続いて、割り当て手段3が、
与えられた割り当てルールに基づいて、制御仕様に含ま
れる各操作に、プラントに含まれる各要素に割り当て
る。ここで、図7は、割り当てルールの例を示すもの
で、このような割り当てルールがあらかじめソフトウェ
ア開発支援装置に入力されているものとするが、割り当
てルールは、ユーザが適宜変更できることが望ましい。
なお、図7の割り当てルールは説明の便宜上自然言語で
表記しているもので、通常はプログラミング言語による
表現が行われる。
[Assignment] Subsequently, the assigning means 3
Based on the given assignment rule, each operation included in the control specification is assigned to each element included in the plant. Here, FIG. 7 shows an example of an allocation rule, and it is assumed that such an allocation rule is input in advance to the software development support device, but it is desirable that the user can change the allocation rule as appropriate.
Note that the assignment rules in FIG. 7 are expressed in natural language for convenience of description, and are usually expressed in a programming language.

【0048】各ルールは、通常、適用対象を特定する条
件部(前半)と、適用対象に対する処理を選択する処理
部(後半)とを有する。割り当てでは、未割り当ての操
作ごとに(ステップ33)該当する割り当てルールが選
択される(ステップ34)。この場合、条件部が操作な
いし対象に合致するルールが選択され、続いて、当該操
作の対象として、選択されたルールの処理部にしたがっ
た具体的な要素が割り当てられる(ステップ35)。
Each rule usually has a condition part (first half) for specifying an application target and a processing part (second half) for selecting a process for the application target. In the allocation, the corresponding allocation rule is selected for each unallocated operation (step 33) (step 34). In this case, a rule whose condition part matches an operation or an object is selected, and then a specific element according to the processing part of the selected rule is assigned as the object of the operation (step 35).

【0049】例えば、「仕込(A原料)」というステッ
プに対して(図6)条件部(「対象が流体ならば」がマ
ッチするルール110では(図7)、処理部(「その流
体名の書かれているライン上の機器を選択する。」が適
用される結果、図4の機器のうち、「A原料」と書かれ
ているV001、CV001、FS001が割り当てら
れる。同様にして、図6の制御仕様のすべてのステップ
に対して要素が割り当てられた結果は図8のようにな
る。
For example, for the step "preparation (A raw material)" (FIG. 6), the condition section ("If the object is a fluid" is the rule 110 (FIG. 7), the processing section ("the fluid name 4 is applied, V001, CV001, and FS001 described as “A raw material” are assigned among the devices in FIG. 4. Similarly, FIG. FIG. 8 shows the result of assigning elements to all the steps of the control specification of.

【0050】[割り当て結果の表示と修正]続いて、出
力手段4が割り当ての結果を出力し(ステップ36)、
ユーザは必要に応じて修正手段5を通じて割り当ての結
果を修正する。すなわち、割り当て結果の出力では、結
果出力ウインドウを兼ねた修正用ウインドウにプラント
構成が入力時と同様に、要素のシンボルと接続線を用い
て表示される(図9)。そして、割り当て結果が操作
(ステップ)ごとに割り当てられた要素を反転又は着色
表示することによって表示される。このとき、並行して
別のウインドウに、図8のような表形式で割り当て結果
を表示することが望ましい。
[Display and Correction of Allocation Result] Subsequently, the output means 4 outputs the result of allocation (step 36),
The user corrects the allocation result through the correction means 5 as needed. That is, in the output of the allocation result, the plant configuration is displayed in the correction window that also serves as the result output window by using the symbol of the element and the connecting line as in the case of input (FIG. 9). Then, the allocation result is displayed by inverting or coloring the elements allocated for each operation (step). At this time, it is desirable to display the allocation result in parallel in another window in a table format as shown in FIG.

【0051】この際、ユーザは、ステップごとに割り当
て結果が正しいかどうかを判断し、修正すべき結果があ
れば(ステップ37)、その都度又は後に一括して割り
当て結果を修正する(ステップ38)。
At this time, the user judges at each step whether or not the allocation result is correct, and if there is a result to be corrected (step 37), the allocation result is corrected collectively each time or later (step 38). .

【0052】例えば、図9は、前記制御仕様中のステッ
プ「抜出(容器内の流体)」に対する割り当て結果の表
示例を示す。この段階で、ユーザに対して割り当て結果
が正しいかどうかの判定が促される(プロンプト)。割
り当て結果が正しい場合、ユーザはマウスの第1ボタン
又はキーボード上のリターンキーなどを操作することに
よって結果の追認の意思表示をすることができる。割り
当て結果が誤っている場合には、ユーザは、図11のよ
うな画面上の機器を指定することにより割当結果の修正
を行うことができる。
For example, FIG. 9 shows a display example of the allocation result for the step "withdrawal (fluid in container)" in the control specification. At this stage, the user is prompted to determine if the assignment result is correct (prompt). If the assignment result is correct, the user can display the intention to confirm the result by operating the first button of the mouse or the return key on the keyboard. When the allocation result is incorrect, the user can correct the allocation result by designating the device on the screen as shown in FIG.

【0053】すなわち、ステップ「抜出(製品)」の場
合、V003とLS001が割り当てられているが、正
しい割り当てはV003とLS002と考える場合、ユ
ーザは、割り当てからLS001を取り除き、LS00
2を新たに割り当てる。
That is, in the case of the step "extraction (product)", V003 and LS001 are assigned, but when considering correct assignments to be V003 and LS002, the user removes LS001 from the assignment, and LS00
2 is newly allocated.

【0054】このような操作は、例えば、複数のボタン
を有するマウスを用いて次のように行うことができる。
すなわち、誤っている要素をマウスポインタでポイント
しながら第2ボタン(通常否定的意思表示に用いられ
る)をクリックすることによって割り当てをキャンセル
する。続けて、正しい要素をマウスポインタでポイント
しながら第1ボタン(通常肯定的意思表示に用いられ
る)をクリックすることによってキャンセルされた要素
に代えて割り当てる。
Such an operation can be performed as follows using a mouse having a plurality of buttons, for example.
That is, the assignment is canceled by clicking the second button (usually used for negative intent) while pointing the incorrect element with the mouse pointer. Subsequently, the correct element is assigned in place of the canceled element by clicking the first button (usually used for positive intent) while pointing with the mouse pointer.

【0055】[割り当てルールの更新]割り当て結果が
修正された場合、更新手段6は、割り当て結果及び修正
後の割り当て結果である修正結果に基づいて、割り当て
ルールを修正することによって更新する。すなわち、該
当するルールが修正されていない(未処理の)すべての
修正箇所に対して(ステップ39)、その都度又は一括
して、割り当てルールを更新する。なお、この更新に用
いるため、割り当て手段による割り当て結果とユーザに
よる修正結果は、相互に峻別可能なように所定のメモリ
領域に格納しておく。
[Update of Assignment Rule] When the assignment result is modified, the updating means 6 updates the assignment rule based on the modification result which is the allocation result and the modified allocation result. That is, the allocation rules are updated for all the correction points where the corresponding rule has not been modified (unprocessed) (step 39) each time or collectively. In addition, since it is used for this update, the allocation result by the allocation means and the correction result by the user are stored in a predetermined memory area so that they can be distinguished from each other.

【0056】すなわち、更新手段6は、割り当て結果と
修正結果を比較することによって未処理の修正箇所を検
出し(ステップ39)、箇所ごとに、まず、該当するル
ールを選択する(ステップ310)。このルールの検出
は、操作に条件部がマッチするルールを検索して行って
もよいし、割り当てにおいて操作ごとに適用したルール
を記録しておいて行ってもよい。
That is, the updating means 6 detects an unprocessed correction part by comparing the allocation result with the correction result (step 39), and first selects the corresponding rule for each part (step 310). The detection of this rule may be performed by searching for a rule whose condition part matches the operation, or may be performed by recording the rule applied for each operation in the allocation.

【0057】続いて、該当するルールに対しては、修正
の結果を反映した修正が施される(ステップ311)。
例えば、修正前の割当結果(図8)と修正結果(図1
0)とを比較すると、ステップ「抜出(製品)」の割り
当て結果のうちLS001がLS002に変更されてい
る。この割り当てに該当するルールは図7のルール15
0「ライン上にセンサが存在せず、かつ、タンクに2つ
のレベル計があるならば、タンクの上のレベル計を選択
する。」である。この場合、LS001とLS002の
相違点は接続リスト(図5)から取付位置と判断され
る。すなわちLS001は容器T001の上段にあり、
LS002は容器T001の下段にある。
Subsequently, the applicable rule is modified to reflect the result of the modification (step 311).
For example, the allocation result before correction (FIG. 8) and the correction result (FIG. 1)
0), LS001 is changed to LS002 in the allocation result of the step “extraction (product)”. The rule corresponding to this allocation is rule 15 in FIG.
0 "If there is no sensor on the line and the tank has two level meters, select the level meter above the tank." In this case, the difference between LS001 and LS002 is determined to be the attachment position from the connection list (FIG. 5). That is, LS001 is at the top of the container T001,
LS002 is at the bottom of the container T001.

【0058】このような相違に基づいて、「ライン上に
センサが存在せず、かつ、タンクに2つのレベル計があ
り、かつ、出側のラインならば、タンクの下のレベル計
を選択する。」という新しいルール160が生成され
る。
Based on such a difference, "if there is no sensor on the line, and there are two level meters in the tank, and if it is the outgoing line, select the level meter below the tank. . ”Is generated.

【0059】さらに、新たなルールと矛盾する他のルー
ルについても必要な修正が行われる。例えば、前記新た
なルール160は旧ルール150を限定したものである
から、ルール150と矛盾する。そこで、ルール150
にはルール160とは逆の限定を追加して新ルール15
1とする。すなわち、新ルール151の内容は、「ライ
ン上にセンサが存在せず、かつ、タンクに2つのレベル
計があり、かつ、入側のラインならば、タンクの上のレ
ベル計を選択する。」となる(図11)。
Further, other rules that conflict with the new rule are also modified as necessary. For example, the new rule 160 is a limitation of the old rule 150, and thus conflicts with the rule 150. So rule 150
In addition, the new rule 15 is added, which is the opposite of rule 160.
Set to 1. That is, the content of the new rule 151 is “If there is no sensor on the line, there are two level meters in the tank, and if the line is the entry side, the level meter above the tank is selected.” (FIG. 11).

【0060】最後に、生成手段7が、制御仕様及び割り
当ての結果に基づいて、プラントを制御するシーケンス
制御ソフトウェアを生成する。
Finally, the generating means 7 generates the sequence control software for controlling the plant based on the control specification and the result of the allocation.

【0061】以上のように、本実施例では、制御仕様の
各操作の対象に構成データに含まれる各要素を割り当て
る場合の法則性をルール化しておき、ソフトウェア開発
では、割り当てルールにしたがって制御仕様の各操作に
具体的な要素が割り当てられる。このため、ユーザが割
り当てを手作業で行う必要性がなくなり、ソフトウェア
開発が効率化される。
As described above, in this embodiment, the rules for assigning each element included in the configuration data to each operation target of the control specification are made into a rule, and in software development, the control specification is assigned according to the assignment rule. Specific elements are assigned to each operation of. Therefore, it is not necessary for the user to perform the assignment manually, and the software development becomes efficient.

【0062】また、本実施例では、割り当ての結果を修
正できるので、ユーザの希望に合致したソフトウェアを
得ることができる。
Further, in this embodiment, since the result of the allocation can be modified, it is possible to obtain the software that meets the user's wishes.

【0063】また、本実施例では、割り当て結果と修正
結果とに基づいて割り当てルールが更新(追加・修正・
削除など)されるので、割り当ての内容が需要により合
致した的確なものとなる。
Further, in the present embodiment, the allocation rule is updated (addition / modification / modification based on the allocation result and the modification result).
It will be deleted, etc.), so that the contents of the allocation will be more accurate and more suitable for the demand.

【0064】また、本実施例では、プラント構成の入
力、割り当て結果の出力及び修正を設備画像を用いたグ
ラフィカル・ユーザ・インタフェースを用いて行うこと
ができるので、情報の理解及び操作が効率化される。
Further, in this embodiment, since the input of the plant configuration, the output of the allocation result and the correction can be performed by using the graphical user interface using the facility image, the understanding and operation of the information can be made efficient. It

【0065】また、本実施例では、制御仕様及び割り当
ての結果(修正された場合を含む)に基づいて、プラン
トを制御するソフトウェアが生成されるので、ソフトウ
ェア開発がより高度に自動化され、ソフトウェアの信頼
性と開発効率を向上する。
Further, in this embodiment, the software for controlling the plant is generated based on the control specification and the result of the allocation (including the case where it is modified), so that the software development is more highly automated and the software Improve reliability and development efficiency.

【0066】(3)他の実施例 なお、本発明は上記実施例に限定されるものではなく、
実施態様の変更は自由であるから、次に例示するような
他の実施例をも包含するものである。
(3) Other Embodiments The present invention is not limited to the above embodiments,
Since the embodiment can be freely changed, the present invention also includes other embodiments as illustrated below.

【0067】例えば、プラントは、上記実施例に示すよ
うな流体を扱うプラントには限定されず、その種類や規
模は自由である。したがって、本発明は、エネルギーや
固体を扱う装置などいかなるプラントに適用することも
できる。また、プラントの種類ごとに所望の構成要素や
グラフィックシンボルを用いて本発明を実施すればよ
い。
For example, the plant is not limited to the plant handling the fluid as shown in the above embodiment, and its kind and scale are arbitrary. Therefore, the present invention can be applied to any plant such as an apparatus that handles energy or solids. Further, the present invention may be implemented using desired constituent elements and graphic symbols for each type of plant.

【0068】また、プラントの構成の入力形式も自由で
あり、文字列で入力してもよい。また、プラント構成や
制御仕様の表現では、複数の要素や複数の操作をまとめ
たものを単一の要素や操作として扱ったり、そのような
扱いを多段化することより、処理の構造化を図ってもよ
い。
The input format of the plant configuration is also arbitrary, and may be input as a character string. In the representation of the plant configuration and control specifications, the processing is structured by treating a combination of multiple elements and multiple operations as a single element or operation, or by multi-stepping such processing. May be.

【0069】また、制御仕様も上記実施例のような操作
(対象)という形式には限定されず、自然言語で記述さ
れた制御仕様から、操作(対象)という形式を生成する
処理を追加すれば、自然言語で記述された制御仕様を入
力することも可能になるので入力が容易になる。
The control specification is not limited to the operation (target) format as in the above embodiment, and if a process for generating the operation (target) format from the control specification written in natural language is added. Since it is also possible to input a control specification described in natural language, the input becomes easy.

【0070】また、割り当て結果の出力や修正は必ずし
もGUIを用いて行う必要はなく、文字列を用いて行っ
てもよい。また、割り当てルールの更新をユーザが手作
業で行ってもよい。
The output or modification of the allocation result does not necessarily have to be performed using the GUI, but may be performed using a character string. Further, the user may manually update the allocation rule.

【0071】[0071]

【発明の効果】以上説明したように、本発明によれば、
制御仕様にプラントの構成要素が自動的に割り当てられ
るので、ソフトウェア開発の効率と信頼性が向上する。
As described above, according to the present invention,
Automatically assigning plant components to control specifications improves software development efficiency and reliability.

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

【図1】本発明の実施例のソフトウェア設計支援装置の
構成を示す機能ブロック図。
FIG. 1 is a functional block diagram showing a configuration of a software design support device according to an embodiment of the present invention.

【図2】本発明の実施例のソフトウェア開発支援装置の
実現に用いられているコンピュータのハードウェア構成
を示す概念図。
FIG. 2 is a conceptual diagram showing a hardware configuration of a computer used to realize the software development support device according to the embodiment of the present invention.

【図3】本発明の実施例のソフトウェア開発支援装置の
動作手順を示すフローチャート。
FIG. 3 is a flowchart showing an operation procedure of the software development support device according to the embodiment of the present invention.

【図4】本発明の実施例におけるプラントの構成の例を
示す図。
FIG. 4 is a diagram showing an example of the configuration of a plant according to an embodiment of the present invention.

【図5】本発明の実施例における接続リストの例を示す
図。
FIG. 5 is a diagram showing an example of a connection list according to the embodiment of the present invention.

【図6】本発明の実施例における制御仕様の例を示す
図。
FIG. 6 is a diagram showing an example of control specifications in the embodiment of the present invention.

【図7】本発明の実施例における割り当てルールの例を
示す図。
FIG. 7 is a diagram showing an example of an allocation rule according to the embodiment of the present invention.

【図8】本発明の実施例における割り当て結果の例を示
す図。
FIG. 8 is a diagram showing an example of an allocation result in the embodiment of the present invention.

【図9】本発明の実施例における割り当て結果の表示例
を示す図。
FIG. 9 is a diagram showing a display example of an allocation result in the embodiment of the present invention.

【図10】本発明の実施例における修正結果の例を示す
図。
FIG. 10 is a diagram showing an example of a correction result in the embodiment of the present invention.

【図11】本発明の実施例における更新された割り当て
ルールの例を示す図。
FIG. 11 is a diagram showing an example of an updated allocation rule according to the embodiment of the present invention.

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

1…構成入力手段 2…制御仕様入力手段 3…割り当て手段 4…出力手段 5…修正手段 6…更新手段 7…生成手段 DESCRIPTION OF SYMBOLS 1 ... Configuration input means 2 ... Control specification input means 3 ... Allocation means 4 ... Output means 5 ... Correction means 6 ... Update means 7 ... Generation means

Claims (10)

【特許請求の範囲】[Claims] 【請求項1】 プラントを制御するソフトウェアの開発
を支援するソフトウェア開発支援装置において、 前記プラントの構成を、複数の要素の組み合わせとして
入力する構成入力手段と、 前記ソフトウェアの制御仕様を、要素に対する操作を一
又は二以上組み合わせたものとして入力する制御仕様入
力手段と、 与えられた割り当てルールに基づいて、制御仕様に含ま
れる前記各操作に、前記プラントに含まれる各要素を割
り当てる割り当て手段と、を有することを特徴とするソ
フトウェア開発支援装置。
1. A software development support apparatus for supporting the development of software for controlling a plant, comprising: a configuration input means for inputting the configuration of the plant as a combination of a plurality of elements; and a control specification of the software for operating the elements. Control specification input means for inputting as one or a combination of two or more, and an allocation means for allocating each element included in the plant to each operation included in the control specification based on a given allocation rule, A software development support device characterized by having.
【請求項2】 前記割り当ての結果を出力する出力手段
と、 割り当ての結果を修正するための修正手段と、 を有することを特徴とする請求項1記載のソフトウェア
開発支援装置。
2. The software development support apparatus according to claim 1, further comprising: an output unit that outputs the result of the allocation, and a correction unit that corrects the result of the allocation.
【請求項3】 前記割り当て結果及び前記修正後の前記
割り当て結果である修正結果に基づいて、前記割り当て
ルールを更新する更新手段を有することを特徴とする請
求項2記載のソフトウェア開発支援装置。
3. The software development support apparatus according to claim 2, further comprising update means for updating the allocation rule based on the allocation result and a modification result which is the modified allocation result.
【請求項4】 プラントの各要素を表すグラフィックシ
ンボルである設備画像を用いて前記プラント及び前記割
り当てに関する情報の入出力を行うグラフィカル・ユー
ザ・インタフェースを有することを特徴とする請求項1
記載のソフトウェア開発支援装置。
4. A graphical user interface for inputting and outputting information relating to the plant and the allocation using an equipment image which is a graphic symbol representing each element of the plant.
The described software development support device.
【請求項5】 前記制御仕様及び前記割り当ての結果に
基づいて、前記プラントを制御するソフトウェアを生成
する生成手段を有することを特徴とする請求項1記載の
ソフトウェア開発支援装置。
5. The software development support apparatus according to claim 1, further comprising a generation unit that generates software for controlling the plant based on the control specification and the result of the allocation.
【請求項6】 プラントを制御するソフトウェアの開発
を支援するソフトウェア開発支援装置において、 前記プラントの構成を、複数の要素の組み合わせとして
入力する構成入力のステップと、 前記ソフトウェアの制御仕様を、要素に対する操作を一
又は二以上組み合わせたものとして入力する制御仕様入
力のステップと、 与えられた割り当てルールに基づいて、制御仕様に含ま
れる前記各操作に、前記プラントに含まれる各要素を割
り当てる割り当てのステップと、を含むことを特徴とす
るソフトウェア開発支援方法。
6. A software development support device for supporting the development of software for controlling a plant, comprising a step of inputting a configuration of the plant as a combination of a plurality of elements, and a control specification of the software for the elements. A step of inputting a control specification that inputs one or more operations, and an allocation step that allocates each element included in the plant to each operation included in the control specification based on a given allocation rule. And a software development support method comprising:
【請求項7】 前記割り当ての結果を出力する出力のス
テップと、 割り当ての結果を修正するための修正のステップと、 を含むことを特徴とする請求項6記載のソフトウェア開
発支援方法。
7. The software development support method according to claim 6, further comprising: an output step of outputting the allocation result, and a correction step of correcting the allocation result.
【請求項8】 前記割り当て結果及び前記修正後の前記
割り当て結果である修正結果に基づいて、前記割り当て
ルールを更新する更新のステップを含むことを特徴とす
る請求項7記載のソフトウェア開発支援方法。
8. The software development support method according to claim 7, further comprising an updating step of updating the allocation rule based on the allocation result and a modification result which is the modified allocation result.
【請求項9】 プラントの各要素を表すグラフィックシ
ンボルである設備画像を用いて前記プラント及び前記割
り当てに関する情報の入出力を行うグラフィカル・ユー
ザ・インタフェースを含むことを特徴とする請求項6記
載のソフトウェア開発支援方法。
9. The software according to claim 6, further comprising a graphical user interface for inputting and outputting information regarding the plant and the allocation by using an equipment image which is a graphic symbol representing each element of the plant. Development support method.
【請求項10】 前記制御仕様及び前記割り当ての結果
に基づいて、前記プラントを制御するソフトウェアを生
成する生成のステップを含むことを特徴とする請求項6
記載のソフトウェア開発支援方法。
10. The method according to claim 6, further comprising a generation step of generating software that controls the plant based on the control specification and the result of the allocation.
Described software development support method.
JP238295A 1995-01-11 1995-01-11 Device and method for assisting software development Pending JPH08190410A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP238295A JPH08190410A (en) 1995-01-11 1995-01-11 Device and method for assisting software development

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP238295A JPH08190410A (en) 1995-01-11 1995-01-11 Device and method for assisting software development

Publications (1)

Publication Number Publication Date
JPH08190410A true JPH08190410A (en) 1996-07-23

Family

ID=11527692

Family Applications (1)

Application Number Title Priority Date Filing Date
JP238295A Pending JPH08190410A (en) 1995-01-11 1995-01-11 Device and method for assisting software development

Country Status (1)

Country Link
JP (1) JPH08190410A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001202122A (en) * 2000-01-21 2001-07-27 Yuji Naka Method for controlling batch plant, recording medium storing batch plant control program and batch plant control device
JP2016535333A (en) * 2013-10-18 2016-11-10 テトラ・ラヴァル・ホールディングス・アンド・ファイナンス・ソシエテ・アノニムTetra Laval Holdings & Finance S.A. Method for designing a processing plant

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001202122A (en) * 2000-01-21 2001-07-27 Yuji Naka Method for controlling batch plant, recording medium storing batch plant control program and batch plant control device
JP2016535333A (en) * 2013-10-18 2016-11-10 テトラ・ラヴァル・ホールディングス・アンド・ファイナンス・ソシエテ・アノニムTetra Laval Holdings & Finance S.A. Method for designing a processing plant

Similar Documents

Publication Publication Date Title
US5825360A (en) Method for arranging windows in a computer workspace
EP0150296A2 (en) Electronic handwriting method and facilty
EP0317480A2 (en) Graphical menu tree
EP0620521A2 (en) Method for dynamically building dialog boxes
CN110069892B (en) FPGA pin allocation design method and device
US10853100B1 (en) Systems and methods for creating learning-based personalized user interfaces
JP2000047857A (en) Method for programming event-driven type function block, and program recording medium
JPH08190410A (en) Device and method for assisting software development
JPH06110910A (en) Slip preparing method, slip processing method, and slip preparation processing system
JP3447365B2 (en) Object-oriented programming support device and object-oriented programming support method
CN112035108A (en) User interface layout design method, system, terminal and medium
JP4925514B2 (en) Program execution control method, program, execution control apparatus, and recording medium by internal / external event driven system
JP4945518B2 (en) Time chart creation method, time chart creation program, and spreadsheet cell display method
JPH0619921A (en) Working process managing device
JPS6249528A (en) Help guidance system
JPH0588862A (en) Control program preparing device
JP2984272B2 (en) Character processing method and apparatus
JPH1049289A (en) Character data processor
JP4563551B2 (en) Program editing apparatus and program editing method
JPH08249373A (en) Device and method for system verification
JPH03182931A (en) Constitution definition support system
JP4843148B2 (en) Tax accounting processing equipment
JP4878586B2 (en) Programmable display screen generation device and program thereof
JPH05128182A (en) Plotter and plotting method utilizing plotter
JP3978173B2 (en) Form creation method