JPH01298435A - 自動プログラミング装置 - Google Patents
自動プログラミング装置Info
- Publication number
- JPH01298435A JPH01298435A JP63129501A JP12950188A JPH01298435A JP H01298435 A JPH01298435 A JP H01298435A JP 63129501 A JP63129501 A JP 63129501A JP 12950188 A JP12950188 A JP 12950188A JP H01298435 A JPH01298435 A JP H01298435A
- Authority
- JP
- Japan
- Prior art keywords
- program
- design
- block diagram
- software
- test
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Prevention of errors by analysis, debugging or testing of software
- G06F11/3668—Testing of software
- G06F11/3672—Test management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
この発明はソフトウェア開発におけるプログラミングを
できるだけ機械によって行う自動プログラミング装置に
関する。
できるだけ機械によって行う自動プログラミング装置に
関する。
従来の自動プログラミング装置は、例えば「情報処理学
会第36回合国大会講演論文集(■)」に記載されてい
る論文「パーソナルコンピュータ上のPAD仕様記述に
よるプログラム自動生成」(論文番号3 L−10)で
説明されているようにPAD表記法などで表わしたブロ
ック線図からプログラムのソースコードを自動的に生成
する狭義の自動プログラミング装置がある。又、「情報
処理学会筒36回合国大会講演論文集(■)」に記載さ
れている論文「リアルタイムシステム開発−貫支援シス
テム・・・・・・基本構想・・・・・・」 (論文番号
5M−10)で説明されているようにプログラムに対す
る設計上の要求定義から、テストまでの設計・製造・試
験の全工程を支援または自動化する広義の自動プログラ
ミング装置まであった。上記した狭義の自動プログラミ
ング装置は広義の自動プログラミング装置に含まれるの
で、ここでは、従来の自動プログラミング装置例として
広義の自動プログラミング装置について以下に構成と動
作を説明する。
会第36回合国大会講演論文集(■)」に記載されてい
る論文「パーソナルコンピュータ上のPAD仕様記述に
よるプログラム自動生成」(論文番号3 L−10)で
説明されているようにPAD表記法などで表わしたブロ
ック線図からプログラムのソースコードを自動的に生成
する狭義の自動プログラミング装置がある。又、「情報
処理学会筒36回合国大会講演論文集(■)」に記載さ
れている論文「リアルタイムシステム開発−貫支援シス
テム・・・・・・基本構想・・・・・・」 (論文番号
5M−10)で説明されているようにプログラムに対す
る設計上の要求定義から、テストまでの設計・製造・試
験の全工程を支援または自動化する広義の自動プログラ
ミング装置まであった。上記した狭義の自動プログラミ
ング装置は広義の自動プログラミング装置に含まれるの
で、ここでは、従来の自動プログラミング装置例として
広義の自動プログラミング装置について以下に構成と動
作を説明する。
第6図は上記した論文「リアルタイムシステム開発−貫
支援システム・・・・・・基本構想・・・・・・」の説
明に基づき作成した従来技術例のソフトウェア構成図で
ある。第6図において、102は機能や規模についての
要求仕様に基づいて設計開始時の要求定義を分析する要
求定義分析手段、103は上記手段102の分析結果か
らデータフロー図、制御フロー図、モジュール図、PA
D図などのいわゆるブロック線図を作成するブロック線
図作成手段、104は上記ブロック線図に基づき計算機
が実行できるソースコードを自動生成するプログラム自
動生成手段、105は上記ソースコードを用いてプログ
ラムの単体テストを行うプログラムテスト手段である。
支援システム・・・・・・基本構想・・・・・・」の説
明に基づき作成した従来技術例のソフトウェア構成図で
ある。第6図において、102は機能や規模についての
要求仕様に基づいて設計開始時の要求定義を分析する要
求定義分析手段、103は上記手段102の分析結果か
らデータフロー図、制御フロー図、モジュール図、PA
D図などのいわゆるブロック線図を作成するブロック線
図作成手段、104は上記ブロック線図に基づき計算機
が実行できるソースコードを自動生成するプログラム自
動生成手段、105は上記ソースコードを用いてプログ
ラムの単体テストを行うプログラムテスト手段である。
これらの各手段はソフトウェアとしてコンピュータに組
み込まれているもので、ハードウェアとしては、現在市
場に出回っている一般的なコンピュータが使用される。
み込まれているもので、ハードウェアとしては、現在市
場に出回っている一般的なコンピュータが使用される。
次に動作について説明する。要求定義分析手段102は
機能や規模についての要求仕様に基づき実施されるわけ
であるが、従来技術例では機械による自動化は行われて
おらず、大部分人間の専門家が実施している0人間の行
う要求定義分析の内容は設計時の要求仕様を満すプログ
ラム構成をトレードオフにより決めることが主体である
。この要求定義分析の結果、ブロック線図作成手段10
3によりデータフロー図、制御フロー図、モジュール図
、PAD図などが作成される。これらのブロック線図作
成は完全ではないまでも機械化されている。そして作成
されたブロック線図等に基づきプログラム自動生成手段
104により要求仕様を満足する機械語のソースコード
(プログラム)が自動的に作成される。そして最後に上
記ソースコード形式のプログラムについてのテストがプ
ログラムテスト手段105により実施される。
機能や規模についての要求仕様に基づき実施されるわけ
であるが、従来技術例では機械による自動化は行われて
おらず、大部分人間の専門家が実施している0人間の行
う要求定義分析の内容は設計時の要求仕様を満すプログ
ラム構成をトレードオフにより決めることが主体である
。この要求定義分析の結果、ブロック線図作成手段10
3によりデータフロー図、制御フロー図、モジュール図
、PAD図などが作成される。これらのブロック線図作
成は完全ではないまでも機械化されている。そして作成
されたブロック線図等に基づきプログラム自動生成手段
104により要求仕様を満足する機械語のソースコード
(プログラム)が自動的に作成される。そして最後に上
記ソースコード形式のプログラムについてのテストがプ
ログラムテスト手段105により実施される。
このプログラムテストは設計時の要求仕様を満たすもの
かどうかを試験するものであり、プログラムの実行を目
で追いながらテスト可能なように効率化が図られている
。もし要求仕様を満足しない場合は、再度プログラミン
グをやり直す必要がある。
かどうかを試験するものであり、プログラムの実行を目
で追いながらテスト可能なように効率化が図られている
。もし要求仕様を満足しない場合は、再度プログラミン
グをやり直す必要がある。
このように、これらの設計結果の見直しを行い、不備を
指摘し改善するデザインレビュー作業は全て人手により
行われていたために、機械化を目的としたソフトウェア
としてのデザインレビュー手段が従来の試験装置に組み
込まれていることはなかった。さらに、設計時に実施し
た通称「プログラム故障モード影響解析」 (略称rF
MEAJ :Failure Mode and Ef
fect Analysis)を実施するための手段(
ソフトウェア)も組み込まれておらず、人手によってい
た。
指摘し改善するデザインレビュー作業は全て人手により
行われていたために、機械化を目的としたソフトウェア
としてのデザインレビュー手段が従来の試験装置に組み
込まれていることはなかった。さらに、設計時に実施し
た通称「プログラム故障モード影響解析」 (略称rF
MEAJ :Failure Mode and Ef
fect Analysis)を実施するための手段(
ソフトウェア)も組み込まれておらず、人手によってい
た。
以上説明したように、従来の自動プログラミング装置は
以上のように構成されているので、ソフトウェア(プロ
グラム)の設計時に行うプログラム構成のトレードオフ
作業、ブロック線図に基づくプログラム故障モード影響
解析作業、及び設計の見直しを行うデザインレビュー作
業は機械化されておらず、人手に転らざるを得なかった
。従って多数のソフトウェア設計の専門家を必要とし、
かつ各作業に要する時間も膨大になるなどの課題があっ
た。さらに、上記プログラム故障モード及びその影響解
析結果に基づくプログラムテストデータの作成も機械化
されていなかったために、設計と製造は直結されている
が設計と試験が直結されておらず分離されていることに
なり、人手を介さないと設計結果を試験時に有効活用で
きないなどの課題があった。
以上のように構成されているので、ソフトウェア(プロ
グラム)の設計時に行うプログラム構成のトレードオフ
作業、ブロック線図に基づくプログラム故障モード影響
解析作業、及び設計の見直しを行うデザインレビュー作
業は機械化されておらず、人手に転らざるを得なかった
。従って多数のソフトウェア設計の専門家を必要とし、
かつ各作業に要する時間も膨大になるなどの課題があっ
た。さらに、上記プログラム故障モード及びその影響解
析結果に基づくプログラムテストデータの作成も機械化
されていなかったために、設計と製造は直結されている
が設計と試験が直結されておらず分離されていることに
なり、人手を介さないと設計結果を試験時に有効活用で
きないなどの課題があった。
この発明は上記のような課題を解消するためになされた
もの七、プログラム設計時にプログラム構成を作成する
トレードオフ作業、プログラム故障モード及びその影響
解析作業、およびデザインレビュー作業を機械化し、各
作業に要する時間も短縮できるとともに、設計時の設計
データが試験時に自動的に有効活用できるように、設計
と試験を直結して、テストデータの作成を自動化し、試
験の省力化と試験時間の短縮化ができ効゛率よくプログ
ラミングを行う自動プログラミング装置を得ることを目
的とする。
もの七、プログラム設計時にプログラム構成を作成する
トレードオフ作業、プログラム故障モード及びその影響
解析作業、およびデザインレビュー作業を機械化し、各
作業に要する時間も短縮できるとともに、設計時の設計
データが試験時に自動的に有効活用できるように、設計
と試験を直結して、テストデータの作成を自動化し、試
験の省力化と試験時間の短縮化ができ効゛率よくプログ
ラミングを行う自動プログラミング装置を得ることを目
的とする。
この発明においては、ソフトウェア要求仕様に基づき、
プログラム構成のトレードオフを行いプログラムを構成
するコンポーネント等の最適組合せを行うプログラム構
成トレードオフ手段2と、このコンポーネント等の最適
組合せlの結果から信号系統図を含むブロック線図mを
作成するブロック線図作成手段3と、該ブロック線図m
からプログラムの故障モード及びその影響の解析を実施
して解析シート%を作成するプログラム故障モード影響
解析手段4と、ブロック線図mにより構成されるプログ
ラムについてその動作を確認するシミュレーションを行
うシミュレーション手段5と、コンポーネント等の最適
組合せ!及び解析シートnからソフトウェアについて設
計知識等を獲得し学習する学習部6aとこの設計知識等
を蓄積する知識ベース部6b及びこの設計知識等を使い
推論を行う推論部6cとからなるソフトウェアデザイン
レビュー手段6と、ブロック線図mからプログラムのソ
ースコード0を生成するプログラム自動生成手段7と、
解析シートnからプログラムのテストルールpを生成す
るプログラムテストデータ自動作成手段8と、プログラ
ムのソースコード〇に関して該テストルールpに基づき
プログラムのテストを行うプログラムテスト手段9とを
設けた。
プログラム構成のトレードオフを行いプログラムを構成
するコンポーネント等の最適組合せを行うプログラム構
成トレードオフ手段2と、このコンポーネント等の最適
組合せlの結果から信号系統図を含むブロック線図mを
作成するブロック線図作成手段3と、該ブロック線図m
からプログラムの故障モード及びその影響の解析を実施
して解析シート%を作成するプログラム故障モード影響
解析手段4と、ブロック線図mにより構成されるプログ
ラムについてその動作を確認するシミュレーションを行
うシミュレーション手段5と、コンポーネント等の最適
組合せ!及び解析シートnからソフトウェアについて設
計知識等を獲得し学習する学習部6aとこの設計知識等
を蓄積する知識ベース部6b及びこの設計知識等を使い
推論を行う推論部6cとからなるソフトウェアデザイン
レビュー手段6と、ブロック線図mからプログラムのソ
ースコード0を生成するプログラム自動生成手段7と、
解析シートnからプログラムのテストルールpを生成す
るプログラムテストデータ自動作成手段8と、プログラ
ムのソースコード〇に関して該テストルールpに基づき
プログラムのテストを行うプログラムテスト手段9とを
設けた。
この発明においては、自動プログラミング装置にソフト
ウェアとして組み込まれているプログラム構成トレード
オフ手段2により、これから開発しようとするソフトウ
ェア要求仕様に基づくプログラム構成のトレードオフを
行い、モジュール。
ウェアとして組み込まれているプログラム構成トレード
オフ手段2により、これから開発しようとするソフトウ
ェア要求仕様に基づくプログラム構成のトレードオフを
行い、モジュール。
コンポーネント等の最適組合せを決めることができる。
そして、このプログラム構成トレードオフ手段2の結果
である最適組合せlから信号系統図を含むブロック線図
mを、ブロック線図作成手段3により作図することがで
きる。そしてこのブロック線図mに基づき、プログラム
故障モード影響解析手段4により、設計時に、事前にプ
ログラムの不具合などの故障モードを予測解析し、その
影響解析を行い、解析シー)nを作成し、対策を立てて
おくことができる。そして、ソフトウェアデザインレビ
ュー手段6により、解析シートn及び最適組合せlの設
計結果の見通しを行い、設計不備を指摘し、改善する。
である最適組合せlから信号系統図を含むブロック線図
mを、ブロック線図作成手段3により作図することがで
きる。そしてこのブロック線図mに基づき、プログラム
故障モード影響解析手段4により、設計時に、事前にプ
ログラムの不具合などの故障モードを予測解析し、その
影響解析を行い、解析シー)nを作成し、対策を立てて
おくことができる。そして、ソフトウェアデザインレビ
ュー手段6により、解析シートn及び最適組合せlの設
計結果の見通しを行い、設計不備を指摘し、改善する。
次に、プログラム故障モード及びその影響の解析シート
nに基づき、プログラムテストデータ自動作成手段8に
より、プログラムテスト時に必要なテストデータpを作
成する。さらに、ブロック線図mに基づき、プログラム
自動生成手段7により、プログラムのソースコード0を
自動的に生成する、又テストデータpを使ってプログラ
ムテスト手段9によりプログラムのソースコード0のテ
ストを行う。
nに基づき、プログラムテストデータ自動作成手段8に
より、プログラムテスト時に必要なテストデータpを作
成する。さらに、ブロック線図mに基づき、プログラム
自動生成手段7により、プログラムのソースコード0を
自動的に生成する、又テストデータpを使ってプログラ
ムテスト手段9によりプログラムのソースコード0のテ
ストを行う。
以上の各作用を通じて、プログラム設計、生成(製造)
、試験の作業を統合化でき、自動化/省力化できるとと
もに、工期短縮を実現する。
、試験の作業を統合化でき、自動化/省力化できるとと
もに、工期短縮を実現する。
以下、この発明の一実施例を図について説明する。第1
図はこの発明の一実施例の全体構成を示すもので、自動
プログラミング装W1に組み込まれているソフトウェア
である。自動プログラミング装置1はハードウェアとし
て現在市場に出回っている一般的なコンピュータを処理
装置として使用している。
図はこの発明の一実施例の全体構成を示すもので、自動
プログラミング装W1に組み込まれているソフトウェア
である。自動プログラミング装置1はハードウェアとし
て現在市場に出回っている一般的なコンピュータを処理
装置として使用している。
第1図において、■は自動プログラミング装置全体であ
り、2はこの自動プログラミング装置1の中にソフトウ
ェアとして組み込まれているプログラム構成トレードオ
フ手段、3はこのプログラム構成トレードオフ手段2の
結果に基づき信号系統図を含むブロック線図を作成する
ブロック線図作成手段、4はこのブロック線図作成手段
3の結果に基づ嘉、プログラムの故障モード影響解析を
実施し、故障モード影響解析シートを作成するプログラ
ム故障モード影響解析手段、5は上記ブロック線図から
動作確認を行うためのシミュレーションを実施するシミ
ュレーション手段、6は上記プログラム構成トレードオ
フ手段2、およびプログラム故障モード影響解析手段、
4の結果10からソフトウェアの設計知識獲得と学習を
行う学習部6aと、この学習部6aにより生成された知
識や設計知識を蓄積する知識ベース部6bと、この知識
ベース部6bに蓄えられた知識を使い推論を行う推論部
6Cとから成るソフトウェアデザインレビュー手段、7
は上記ブロック線図作成手段3の結果からプログラムの
ソースコードを自動的に生成するプログラム自動生成手
段、8は上記プログラム故障モード影響解析手段4の結
果からプログラムテストデータを自動的に生成するプロ
グラムテストデータ自動生成手段、9は上記プログラム
自動生成手段7とプログラムテストデータ自動生成手段
8の結果に基づきプログラムのテストを行うプログラム
テスト手段である。
り、2はこの自動プログラミング装置1の中にソフトウ
ェアとして組み込まれているプログラム構成トレードオ
フ手段、3はこのプログラム構成トレードオフ手段2の
結果に基づき信号系統図を含むブロック線図を作成する
ブロック線図作成手段、4はこのブロック線図作成手段
3の結果に基づ嘉、プログラムの故障モード影響解析を
実施し、故障モード影響解析シートを作成するプログラ
ム故障モード影響解析手段、5は上記ブロック線図から
動作確認を行うためのシミュレーションを実施するシミ
ュレーション手段、6は上記プログラム構成トレードオ
フ手段2、およびプログラム故障モード影響解析手段、
4の結果10からソフトウェアの設計知識獲得と学習を
行う学習部6aと、この学習部6aにより生成された知
識や設計知識を蓄積する知識ベース部6bと、この知識
ベース部6bに蓄えられた知識を使い推論を行う推論部
6Cとから成るソフトウェアデザインレビュー手段、7
は上記ブロック線図作成手段3の結果からプログラムの
ソースコードを自動的に生成するプログラム自動生成手
段、8は上記プログラム故障モード影響解析手段4の結
果からプログラムテストデータを自動的に生成するプロ
グラムテストデータ自動生成手段、9は上記プログラム
自動生成手段7とプログラムテストデータ自動生成手段
8の結果に基づきプログラムのテストを行うプログラム
テスト手段である。
上記のように構成された自動プログラミング装置におい
ては、各手段2〜9が連携して動作することにより、プ
ログラムの設計から製作、試験までをほぼ自動的に行う
ことができる。以下に各手段2〜9の作用、動作の詳細
を説明する。
ては、各手段2〜9が連携して動作することにより、プ
ログラムの設計から製作、試験までをほぼ自動的に行う
ことができる。以下に各手段2〜9の作用、動作の詳細
を説明する。
一般にプログラムを構成するマイクロプログラム等の詳
細構成は、サブルーチンやモジュールなどと呼ばれてい
る最小構成要素から成っている。
細構成は、サブルーチンやモジュールなどと呼ばれてい
る最小構成要素から成っている。
ここでは以下、これら最小構成要素を部品と呼ぶことに
する。この部品の中には、上記サブルーチンやモジュー
ルと呼ばれるもの以外に、知識工学分野で呼ばれている
オブジェクトやクテスタなども部品の中に含まれる。さ
らにこれら部品が集まりある機能を持つプログラムの単
位をコンポーネントと呼ぶことにする。これらの部品・
コンポーネントのデータはソフトウェアレビュー手段6
の中に知識ベース6bに予め蓄積されている。
する。この部品の中には、上記サブルーチンやモジュー
ルと呼ばれるもの以外に、知識工学分野で呼ばれている
オブジェクトやクテスタなども部品の中に含まれる。さ
らにこれら部品が集まりある機能を持つプログラムの単
位をコンポーネントと呼ぶことにする。これらの部品・
コンポーネントのデータはソフトウェアレビュー手段6
の中に知識ベース6bに予め蓄積されている。
自動プログラミングの設計を行う場合、プログラムを構
築するサブルーチンやモジュール等に設計者から要求さ
れる仕様に対して、プログラム構成トレードオフ手段2
はソフトウェア要求仕様に基づきプログラム構成のトレ
ードオフを行う。このソフトウェア要求仕様はこれから
構築しようとするソフトウェア(プログラム)に要求さ
れる機能や性能や規模等を規定した仕様であり、この仕
様と実現可能なプログラム構成との間にトレードオフ(
割付は分担)を行ってできるだけ要求仕様に合った構成
を決める。この構成の決め方も大別すると次の二種類に
分けて行う。即ちまず初めに、要求仕様の中の大まかな
要求機能を実現するために必要なプログラム機能の基本
構成をトレードオフにより決定する。そして次に、各プ
ログラム機能を実現するためのより具体的な詳細構成を
決める。
築するサブルーチンやモジュール等に設計者から要求さ
れる仕様に対して、プログラム構成トレードオフ手段2
はソフトウェア要求仕様に基づきプログラム構成のトレ
ードオフを行う。このソフトウェア要求仕様はこれから
構築しようとするソフトウェア(プログラム)に要求さ
れる機能や性能や規模等を規定した仕様であり、この仕
様と実現可能なプログラム構成との間にトレードオフ(
割付は分担)を行ってできるだけ要求仕様に合った構成
を決める。この構成の決め方も大別すると次の二種類に
分けて行う。即ちまず初めに、要求仕様の中の大まかな
要求機能を実現するために必要なプログラム機能の基本
構成をトレードオフにより決定する。そして次に、各プ
ログラム機能を実現するためのより具体的な詳細構成を
決める。
プログラム機能の基本構成とプログラム詳細構成をトレ
ードオフにより決定する場合、このプログラム構成トレ
ードオフ手段2は、最適化のための評価基準パラメータ
を備え、最適化処理を行うことができる。この評価基準
パラメータとしては、プログラムの処理速度、規模、移
植性、コスト使用実績などが含まれている。さらに上記
した最適化処理には、従来から使用されている数理計画
法の中の「動的計画法」や、知識工学分野で注目されて
いる「拘束条件解法理論」などを応用した処理アルゴリ
ズムを採用している。
ードオフにより決定する場合、このプログラム構成トレ
ードオフ手段2は、最適化のための評価基準パラメータ
を備え、最適化処理を行うことができる。この評価基準
パラメータとしては、プログラムの処理速度、規模、移
植性、コスト使用実績などが含まれている。さらに上記
した最適化処理には、従来から使用されている数理計画
法の中の「動的計画法」や、知識工学分野で注目されて
いる「拘束条件解法理論」などを応用した処理アルゴリ
ズムを採用している。
さらにプログラム構成トレードオフ手段2は以上説明し
た構成トレードオフの動作を設計者との対話処理により
行う機能を備えており、以下にこの機能の動作を説明す
る。
た構成トレードオフの動作を設計者との対話処理により
行う機能を備えており、以下にこの機能の動作を説明す
る。
構成トレードオフを対話処理で行う場合、設計しようと
するプログラムについて要求されるソフトウェア機能の
仕様が設計者から入力されると、デザインレビュー手段
6の中の知識ベース部6bに含まれているコンポーネン
トデータベースの中から要求仕様に合う、または類似の
コンポーネントデータを選択し、組み合せてグラフィッ
ク画面上ニ表示する。コンポーネントデータベースの中
には評価パラメータとして、プログラムの処理a度、規
模、移植性、コスト、入出力条件、使用実績などが含ま
れており、設計者は1.これらの評価パラメータを使っ
て上記した最適化処理をしながら必要に応じ、コンポー
ネントの組合せを対話処理により変更して、基本構成に
ついて最適なコンポーネントの組合せlを決定すること
ができる。
するプログラムについて要求されるソフトウェア機能の
仕様が設計者から入力されると、デザインレビュー手段
6の中の知識ベース部6bに含まれているコンポーネン
トデータベースの中から要求仕様に合う、または類似の
コンポーネントデータを選択し、組み合せてグラフィッ
ク画面上ニ表示する。コンポーネントデータベースの中
には評価パラメータとして、プログラムの処理a度、規
模、移植性、コスト、入出力条件、使用実績などが含ま
れており、設計者は1.これらの評価パラメータを使っ
て上記した最適化処理をしながら必要に応じ、コンポー
ネントの組合せを対話処理により変更して、基本構成に
ついて最適なコンポーネントの組合せlを決定すること
ができる。
同様にして部品からなる詳細構成について部品の組合せ
を決定する。
を決定する。
次に、ブロック線図作成手段3は上記したプログラム構
成トレードオフ手段2の結果作成されたプログラム機能
基本構成及びプログラム詳細構成に基づきプログラムブ
ロック線図mを作成する。
成トレードオフ手段2の結果作成されたプログラム機能
基本構成及びプログラム詳細構成に基づきプログラムブ
ロック線図mを作成する。
ブロック線図mの中には信号系統図なども含まれている
が、−船釣なブロック線図を作図するプログラムと同様
な処理動作を行うプログラムである。
が、−船釣なブロック線図を作図するプログラムと同様
な処理動作を行うプログラムである。
次に、プログラム故障モード影響解析手段4は上記プロ
グラムブロック線図mに基づき、故障モードとその影響
との解析(略称FMEA)を実施し、その解析結果を解
析(FMEA)シートnとしてまとめる動作を行うこと
ができる。
グラムブロック線図mに基づき、故障モードとその影響
との解析(略称FMEA)を実施し、その解析結果を解
析(FMEA)シートnとしてまとめる動作を行うこと
ができる。
上記FMEAはシスチムニ学的解析手法の一つとして、
世間一般に普及している設計時に行う解析手法であり、
この発明ではこの解析手段(FMEA)をプログラムの
故障モード及びその影響解析へ応用しており、ソフトウ
ェア(プログラム)の場合に、上記した部品やコンポー
ネントの概念を導入して、このFMEA手法の処理動作
をプログラムの故障モード及びその影響解析に導入して
いる。
世間一般に普及している設計時に行う解析手法であり、
この発明ではこの解析手段(FMEA)をプログラムの
故障モード及びその影響解析へ応用しており、ソフトウ
ェア(プログラム)の場合に、上記した部品やコンポー
ネントの概念を導入して、このFMEA手法の処理動作
をプログラムの故障モード及びその影響解析に導入して
いる。
プログラムの設計者は、自動プログラミング装置1と対
話処理を行いながらFMEA手法を実行する。即ちグラ
フィック上に表示された質問に対して専門家の設計者が
その回答を入力するような方法である。
話処理を行いながらFMEA手法を実行する。即ちグラ
フィック上に表示された質問に対して専門家の設計者が
その回答を入力するような方法である。
プログラム故障モード影響解析手段4はFMEAフォー
マット作成プログラムと質問文発生処理プログラムとか
ら構成されており、以下にこれらのプログラムの動作に
ついて詳細に説明する。
マット作成プログラムと質問文発生処理プログラムとか
ら構成されており、以下にこれらのプログラムの動作に
ついて詳細に説明する。
+al F M E Aフォーマント作成プログラム
について このプログラムは上記したFMEA手法に基づ(FME
Aシートのフォーマット(枠組み)を作図するプログラ
ムであり、−S的な表の枠組みを作図するプログラムの
処理の流れと同様な機能を持ち、自動的に作成されるも
ので、第2図にこのプログラムで使用されるFMEAシ
ートのフォーマット例を示した。この図の中で、各欄2
1から30には対話処理により記述されるべき内容に関
して名称がつけられているが、これらは上記FMEA手
法で一般的に採用されている区分に従っている。
について このプログラムは上記したFMEA手法に基づ(FME
Aシートのフォーマット(枠組み)を作図するプログラ
ムであり、−S的な表の枠組みを作図するプログラムの
処理の流れと同様な機能を持ち、自動的に作成されるも
ので、第2図にこのプログラムで使用されるFMEAシ
ートのフォーマット例を示した。この図の中で、各欄2
1から30には対話処理により記述されるべき内容に関
して名称がつけられているが、これらは上記FMEA手
法で一般的に採用されている区分に従っている。
(b) 質問発生処理プログラムについてこのプログ
ラムは上記FMEAフォーマット作成プログラムによっ
て作成されたFMEAシートの各欄の空欄のところに具
体的な内容を埋めて行うための質問文を発生させ、グラ
フインク画面上に表示する。そしてその質問文に対する
専門家(設計者)からの回答を取り込み、FMEAシー
トの各欄に埋め込む処理を行うプログラムであり、これ
らの処理動作は、−i的な対話処理プログラムと同様な
機能である。このプ、ログラムの処理動作をさらに詳し
く説明するために、このプログラムが処理に従って順に
発生される質問文の具体例を第3図に、フローチャート
の形で示した。この図の中で示す各質問文41から50
に順に答える形式で、専門家は回答文を自動プログラミ
ング装置1のキーボードから入力すると、このプログラ
ムは上記FMEAシートの各欄に入力された回答文を埋
め込んで行き、FMEAシートnを完全される働きをす
る。
ラムは上記FMEAフォーマット作成プログラムによっ
て作成されたFMEAシートの各欄の空欄のところに具
体的な内容を埋めて行うための質問文を発生させ、グラ
フインク画面上に表示する。そしてその質問文に対する
専門家(設計者)からの回答を取り込み、FMEAシー
トの各欄に埋め込む処理を行うプログラムであり、これ
らの処理動作は、−i的な対話処理プログラムと同様な
機能である。このプ、ログラムの処理動作をさらに詳し
く説明するために、このプログラムが処理に従って順に
発生される質問文の具体例を第3図に、フローチャート
の形で示した。この図の中で示す各質問文41から50
に順に答える形式で、専門家は回答文を自動プログラミ
ング装置1のキーボードから入力すると、このプログラ
ムは上記FMEAシートの各欄に入力された回答文を埋
め込んで行き、FMEAシートnを完全される働きをす
る。
さらに、FMEAシートnを作成する上で、ソフトウェ
アデザインレビュー手段6の知識ベース部6bに含まれ
ている各値も引用される。
アデザインレビュー手段6の知識ベース部6bに含まれ
ている各値も引用される。
以上説明した二種類のプログラム(83,(b)から成
るプログラム故障モード影響解析手段4を使うことによ
り、上記FMEA手法に基づいたFMEAシートnの作
成を、自動プログラミング装?iflと専門家との対話
処理により行うことができる。
るプログラム故障モード影響解析手段4を使うことによ
り、上記FMEA手法に基づいたFMEAシートnの作
成を、自動プログラミング装?iflと専門家との対話
処理により行うことができる。
次にシミュレーション手段5はトレードオフ処理を経て
、ブロック線図作成手段3により作成されたプログラム
ブロック線図mに基づき、設計段階で認められた要求仕
様(以下設計仕様という)を満足する機能を達成するこ
とができるかどうか動作確認も含めてプログラムの処理
動作のシミュレーションを実施するプログラムであり、
−船釣なシミュレーションプログラムと同様な処理動作
を行うプログラムである。このシミュL・−ジョンの結
果、設計仕様を満足する機能が得られていない場合は、
再び上記プログラム構成トレードオフ手段2へ戻りプロ
グラム構成を見直し、再度構成トレードオフを実施し設
計仕様を満す機能が得られるまでこれらの動作を繰り返
す。
、ブロック線図作成手段3により作成されたプログラム
ブロック線図mに基づき、設計段階で認められた要求仕
様(以下設計仕様という)を満足する機能を達成するこ
とができるかどうか動作確認も含めてプログラムの処理
動作のシミュレーションを実施するプログラムであり、
−船釣なシミュレーションプログラムと同様な処理動作
を行うプログラムである。このシミュL・−ジョンの結
果、設計仕様を満足する機能が得られていない場合は、
再び上記プログラム構成トレードオフ手段2へ戻りプロ
グラム構成を見直し、再度構成トレードオフを実施し設
計仕様を満す機能が得られるまでこれらの動作を繰り返
す。
次にソフトウェアデザインレビュー手段6は第1図に示
すように、学習部6a、知識ベース部6b、および推論
部6Cから成り、知識データベース部6bには過去に設
計された、トレードオフ実績のある部品等が蓄積されて
いる。ソフトウェアデザインレビュー手段6は、次に示
す三種類の機能を備えており、各々の機能とその動作に
ついて以下に説明する。
すように、学習部6a、知識ベース部6b、および推論
部6Cから成り、知識データベース部6bには過去に設
計された、トレードオフ実績のある部品等が蓄積されて
いる。ソフトウェアデザインレビュー手段6は、次に示
す三種類の機能を備えており、各々の機能とその動作に
ついて以下に説明する。
■ 設計知識獲得と学習機能について
第1図に示すように、上記したプログラム構成トレード
オフ手段2とプログラム故障モード影響解析手段4の処
理結果10から設計知識やルールを抽出、整理し、ソフ
トウェアに関するデザインレビュー用知識を生成して、
知識データベース6bに知識ベースとして蓄積する。
オフ手段2とプログラム故障モード影響解析手段4の処
理結果10から設計知識やルールを抽出、整理し、ソフ
トウェアに関するデザインレビュー用知識を生成して、
知識データベース6bに知識ベースとして蓄積する。
■ 設計評価機能について
知識ベース部6bに蓄えられたソフトウェアに関するデ
ザインレビュー用知識を使って、設計の見直しを行い、
設計不備を指摘し、上記したプログラム構成トレードオ
フ手段2やプログラム故障モード影響解析手段4を使っ
た設計作業へ反映11させ、プログラムの設計の評価、
改善、確認を行う機能。
ザインレビュー用知識を使って、設計の見直しを行い、
設計不備を指摘し、上記したプログラム構成トレードオ
フ手段2やプログラム故障モード影響解析手段4を使っ
た設計作業へ反映11させ、プログラムの設計の評価、
改善、確認を行う機能。
■ 設計相談機能について
設計者からの間合せに応じて、知識ベースを知的に検索
して、設計に必要な各種情報を提示する機能。
して、設計に必要な各種情報を提示する機能。
以上、三つの機能■、■、■はソフトウェアデザインレ
ビュー手段6を構成する学習部6a、知識ベース部6b
、および推論部6Cの連携動作により発揮することがで
きる。これらの各部の説明を以下に行う。
ビュー手段6を構成する学習部6a、知識ベース部6b
、および推論部6Cの連携動作により発揮することがで
きる。これらの各部の説明を以下に行う。
(イ)学習部6aについて
学習部6aは主として、設計知識獲得と学習を司る役目
をしており、知識ベース部6bと推論部6cを使って知
的な処理を行う。
をしており、知識ベース部6bと推論部6cを使って知
的な処理を行う。
ここで「知的」とは、「知識ベースと推論機能に基づき
、何らかの推論をする能力を備えている」ことをさして
いる。「何らかの推論」とは、知識工学分野で一般に定
義されている推論をさしており、例えば演鐸推論、帰納
推論、類似推論などである。
、何らかの推論をする能力を備えている」ことをさして
いる。「何らかの推論」とは、知識工学分野で一般に定
義されている推論をさしており、例えば演鐸推論、帰納
推論、類似推論などである。
従って学習部6aは、これらの推論機能と知識ベースを
使って獲得した設計知識から発見的学習により、ソフト
ウェアに関するデザインレビュー用の知識を、自動生成
することができる。
使って獲得した設計知識から発見的学習により、ソフト
ウェアに関するデザインレビュー用の知識を、自動生成
することができる。
ここで「発見的学習」とは上記した帰納推論による学習
をさしている。さらに断片的に獲得された知識も、それ
らを分類、整理し9体系/構造化して、知識ベースへ蓄
えると共に、知識不備を指摘し補う役目も持っている。
をさしている。さらに断片的に獲得された知識も、それ
らを分類、整理し9体系/構造化して、知識ベースへ蓄
えると共に、知識不備を指摘し補う役目も持っている。
(ロ)知識ベース部6bについて
色々な知識やプログラム用のコンポーネント。
部品を整理5編集して格納し蓄積したものが知識ベース
部6bである。
部6bである。
ここで「知識」とは次の四種類をさしており、各々につ
いて以下に説明する。
いて以下に説明する。
(i)過去の設計情報
今までに設計されたプログラム設計事例(部品やコンポ
ーネントも含む)に関して、文字、数値。
ーネントも含む)に関して、文字、数値。
図形9画像などで表わされる設計情報、不具合情報、チ
エ7クリストなど。
エ7クリストなど。
(ii )今回獲得した設計情報
上記したプログラム構成トレードオフ手段2、およびプ
ログラム故障モード影響解析手段4の処理結果から獲得
した設計情報。
ログラム故障モード影響解析手段4の処理結果から獲得
した設計情報。
(iii )学習成果情報
上記(i)、 (i>で獲得した設計情報から推論機
能を使って学習した結果得られたソフトウェアに関する
デザインレビュー用知識。
能を使って学習した結果得られたソフトウェアに関する
デザインレビュー用知識。
(iv )設計モデル情報
知識工学分野では「対象モデル」とも呼ばれている設計
対象そのものを表わした情報であり、例えば、最初に与
えられた要求仕様に基づき設計されたトレードオフの制
約なく理想形の自由なもの自体を表わす情報のことをさ
している。以上、四種類の知識が、様々な形式で知識ベ
ース部6bに蓄積されている。
対象そのものを表わした情報であり、例えば、最初に与
えられた要求仕様に基づき設計されたトレードオフの制
約なく理想形の自由なもの自体を表わす情報のことをさ
している。以上、四種類の知識が、様々な形式で知識ベ
ース部6bに蓄積されている。
ここで「様々な形式」とは知識工学分野で一般に知識表
現法と呼ばれているもので、例えば、「プロダクション
システム」、「フレーム」。
現法と呼ばれているもので、例えば、「プロダクション
システム」、「フレーム」。
「黒板モデル」、「意味ネットワーク」、「述語論理」
、「オブジェクト」などをさしている。
、「オブジェクト」などをさしている。
(ハ)推論6Cについて
推論部6Cは学習部6aや知識ベース部6bから独立し
た機構になっており、知識ベース部6bに蓄えられた知
識を使って推論を行う。
た機構になっており、知識ベース部6bに蓄えられた知
識を使って推論を行う。
ここで「推論」とは、「既知の情報から意味的にはこれ
と同じかあるいはこれに含まれるが、少なくとも明示的
な形としては、これと異なる表現の情報を導き出す機能
」をさしており、−船釣に使われている三段論法なども
この推論に含まれる。
と同じかあるいはこれに含まれるが、少なくとも明示的
な形としては、これと異なる表現の情報を導き出す機能
」をさしており、−船釣に使われている三段論法なども
この推論に含まれる。
ただし、この推論部6cは三段論法だけでなく、上記し
たように、知識工学分野で一般に定義されている帰納推
論、類似推論、デフォルト推論などの各種推論機能を備
えている。
たように、知識工学分野で一般に定義されている帰納推
論、類似推論、デフォルト推論などの各種推論機能を備
えている。
以上の説明で明らかなように、学習部5a、知識ベース
部6b、および推論部6Cから成るソフトウェアデザイ
ンレビュー手段6は設計知識獲得と学習機能、設計評価
機能、および設計相談機能を兼ね備えており、ソフトウ
ェア設計そのものから、更にその見直しをはじめとする
設計支援手段として役立つことがわかる。
部6b、および推論部6Cから成るソフトウェアデザイ
ンレビュー手段6は設計知識獲得と学習機能、設計評価
機能、および設計相談機能を兼ね備えており、ソフトウ
ェア設計そのものから、更にその見直しをはじめとする
設計支援手段として役立つことがわかる。
次にプログラム自動生成手段7は、上記したブロック線
図作成手段3により作成されたブロック線図mに基づき
、プログラムのソースコード0を生成する処理動作を行
う、上記ブロック線図mは、サブルーチンやモジュール
と呼ばれる部品から構成されており、これらの部品デー
タベースに基づいて、該当するソースコード0を関連づ
けて自動的に生成することができる。
図作成手段3により作成されたブロック線図mに基づき
、プログラムのソースコード0を生成する処理動作を行
う、上記ブロック線図mは、サブルーチンやモジュール
と呼ばれる部品から構成されており、これらの部品デー
タベースに基づいて、該当するソースコード0を関連づ
けて自動的に生成することができる。
次にプログラムテストデータ自動生成手段8は、上記し
たプログラム故障モード影響解析手段4が行う各故障モ
ードの分析とそれによって引き起される影響の解析結果
からプログラムのテストデータを自動的に生成する処理
動作を行う。ここではこのプログラムのテストデータを
テスト(診断)ルールpと呼ぶことにする。これは、各
種の不具合のケースを調べて、対応する故障を予め割り
振りしておくことになる。これらはプログラムテスト手
段9の知識データベース部に入れられて、プログラムテ
ストのための、診断用判定基準に相当するテストルール
pとなるものである。
たプログラム故障モード影響解析手段4が行う各故障モ
ードの分析とそれによって引き起される影響の解析結果
からプログラムのテストデータを自動的に生成する処理
動作を行う。ここではこのプログラムのテストデータを
テスト(診断)ルールpと呼ぶことにする。これは、各
種の不具合のケースを調べて、対応する故障を予め割り
振りしておくことになる。これらはプログラムテスト手
段9の知識データベース部に入れられて、プログラムテ
ストのための、診断用判定基準に相当するテストルール
pとなるものである。
第4図は上記プログラムテストデータ自動生成手段8の
動作を説明するための処理の流れをフローチャートで表
わしたもので、この図の中で、処理61,62.63.
65は自動的に処理されるが・64の処理のところでは
、上記処理61から63の処理過程で自動作成されたプ
ログラム診断ルールの内容をチエツクして、必要ならば
専門家が修正する処理が含まれている。最終的にチエツ
クされ、修正されたプログラム診断ルールpはプログラ
ムテスト手段9の知識データベース部に蓄積されて、プ
ログラムのテストに活用される。
動作を説明するための処理の流れをフローチャートで表
わしたもので、この図の中で、処理61,62.63.
65は自動的に処理されるが・64の処理のところでは
、上記処理61から63の処理過程で自動作成されたプ
ログラム診断ルールの内容をチエツクして、必要ならば
専門家が修正する処理が含まれている。最終的にチエツ
クされ、修正されたプログラム診断ルールpはプログラ
ムテスト手段9の知識データベース部に蓄積されて、プ
ログラムのテストに活用される。
次にプログラムテスト手段9は上記したプログラムテス
トデータ自動生成手段8により作成されたプログラム診
断ルールpに基づいて、上記したプログラム自動生成手
段7により得られたプログラムのソースコードのテスト
を実施する。このプログラムテスト手段9は知識工学や
人工知能分野で「診断型エキスパートシステム」と呼ば
れているソフトウェア(プログラム)と同様な処理動作
をするもので、図示しないが知識データベース部と推論
機能部とから成っており、プログラムのテストを実施す
ることができる。
トデータ自動生成手段8により作成されたプログラム診
断ルールpに基づいて、上記したプログラム自動生成手
段7により得られたプログラムのソースコードのテスト
を実施する。このプログラムテスト手段9は知識工学や
人工知能分野で「診断型エキスパートシステム」と呼ば
れているソフトウェア(プログラム)と同様な処理動作
をするもので、図示しないが知識データベース部と推論
機能部とから成っており、プログラムのテストを実施す
ることができる。
この知識データベース部はプログラムテスト用のプログ
ラム診断ルールpが蓄積されており、推論機能部は知識
工学や人工知能分野で通称「推論エンジンjなどと呼ば
れている一般的なアルゴリズムで構成されているもので
、いわゆる三段論法等の論法で結果を推論するアルゴリ
ズムがソフトウェアで作成されており、上記診断ルール
pは「もしAならばBである」の集合体から診断結果を
推論するときに使用される。
ラム診断ルールpが蓄積されており、推論機能部は知識
工学や人工知能分野で通称「推論エンジンjなどと呼ば
れている一般的なアルゴリズムで構成されているもので
、いわゆる三段論法等の論法で結果を推論するアルゴリ
ズムがソフトウェアで作成されており、上記診断ルール
pは「もしAならばBである」の集合体から診断結果を
推論するときに使用される。
以上が自動プログラミング装置1に組み込まれているソ
フトウェアとしての各手段の構成と動作/作用の詳細な
説明であるが、最後にまとめとして、各手段の関連とそ
の動作/作用の全体の様子を第5図にフローチャートの
形で示した。
フトウェアとしての各手段の構成と動作/作用の詳細な
説明であるが、最後にまとめとして、各手段の関連とそ
の動作/作用の全体の様子を第5図にフローチャートの
形で示した。
この第5図に示すように、まず初めに、ソフトウェア設
計の理想的な要求仕様に基づきプログラム構成トレード
オフ手段2により、プログラム機能の基本構成のトレー
ドオフ処理(71)が実施され、その結果に基づきブロ
ック線図作成手段3によりプログラム機能の基本ブロッ
ク図作成処理(72)が行われてプログラム機能の基本
ブロック図が得られる。そしてこのプログラム機能の基
本ブロック図に基づきシミュレーション手段5により、
プログラム機能の基本動作確認のためのプログラム機能
の基本シミュレーション処理(73)が行われ、要求機
能の基本を満足しているときは次の処理(74)へ進む
。機能の基本を満たさないときは、再び上記処理(71
)へ戻り繰り返す。
計の理想的な要求仕様に基づきプログラム構成トレード
オフ手段2により、プログラム機能の基本構成のトレー
ドオフ処理(71)が実施され、その結果に基づきブロ
ック線図作成手段3によりプログラム機能の基本ブロッ
ク図作成処理(72)が行われてプログラム機能の基本
ブロック図が得られる。そしてこのプログラム機能の基
本ブロック図に基づきシミュレーション手段5により、
プログラム機能の基本動作確認のためのプログラム機能
の基本シミュレーション処理(73)が行われ、要求機
能の基本を満足しているときは次の処理(74)へ進む
。機能の基本を満たさないときは、再び上記処理(71
)へ戻り繰り返す。
次に上記プログラム機能の基本ブロック図に基づき、プ
ログラム故障モード影響解析手段4によりプログラム機
能の基本故障モード影響解析処理(74)が行われ、そ
の結果としてFMEAシートが作成される。
ログラム故障モード影響解析手段4によりプログラム機
能の基本故障モード影響解析処理(74)が行われ、そ
の結果としてFMEAシートが作成される。
次に、これらの設計作業の見直しを行うプログラム機能
の基本デザインレビュー処理(75)がソフトウェアデ
ザインレビュー手段6により行われる。そしてこのデザ
インレビューの結果、プログラム機能の基本構成を変更
する必要が生じた場合(76)は再び上記プログラム機
能の基本構成のトレードオフ処理(71)に戻り、同様
な処理が行われる。ただし、上記プログラム機能デザイ
ンレビュー処理(75)は必要に応じて各処理の後、例
えば上記プログラム機能の基本構成のトレードオフ処理
(71)の後にも実施される。
の基本デザインレビュー処理(75)がソフトウェアデ
ザインレビュー手段6により行われる。そしてこのデザ
インレビューの結果、プログラム機能の基本構成を変更
する必要が生じた場合(76)は再び上記プログラム機
能の基本構成のトレードオフ処理(71)に戻り、同様
な処理が行われる。ただし、上記プログラム機能デザイ
ンレビュー処理(75)は必要に応じて各処理の後、例
えば上記プログラム機能の基本構成のトレードオフ処理
(71)の後にも実施される。
構成の変更が不要のときは次に具体的なプログラム詳細
構成のトレードオフ処理(77)へ処理動作が移行され
る。上記したプログラム機能の基本構成のトレードオフ
処理(71)と同様にして、トレードオフ処理(77)
の後にプログラム詳細構成ブロック図が作成され(78
)、シミュレーションが実施された(79)後、プログ
ラム詳細故障モード及びその影響解析結果(80)に基
づき、FMEAシートが作成される。そして同様にプロ
グラム詳細構成に関するデザインレビュー処理(81)
が行われる。このデザインレビュー処理(81)も必要
に応じて、上記プログラム詳細構成のトレードオフ処理
(77)の後などにも実行される。プログラム詳細構成
の変更以外に上記したプログラム機能の基本構成の変更
が必要な場合(82)は、再度プログラム機能の基本構
成のトレードオフ処理(71)が必要となり、再び初め
の処理(71)へ戻る。
構成のトレードオフ処理(77)へ処理動作が移行され
る。上記したプログラム機能の基本構成のトレードオフ
処理(71)と同様にして、トレードオフ処理(77)
の後にプログラム詳細構成ブロック図が作成され(78
)、シミュレーションが実施された(79)後、プログ
ラム詳細故障モード及びその影響解析結果(80)に基
づき、FMEAシートが作成される。そして同様にプロ
グラム詳細構成に関するデザインレビュー処理(81)
が行われる。このデザインレビュー処理(81)も必要
に応じて、上記プログラム詳細構成のトレードオフ処理
(77)の後などにも実行される。プログラム詳細構成
の変更以外に上記したプログラム機能の基本構成の変更
が必要な場合(82)は、再度プログラム機能の基本構
成のトレードオフ処理(71)が必要となり、再び初め
の処理(71)へ戻る。
以上の処理動作により、全てのプログラム機能の基本構
成とプログラム詳細構成に関する処理が完了して、全て
のFMEAシートの作成が完了すると、次のプログラム
自動生成処理(83)へ移行し、プログラムのソースコ
ードが作成される。
成とプログラム詳細構成に関する処理が完了して、全て
のFMEAシートの作成が完了すると、次のプログラム
自動生成処理(83)へ移行し、プログラムのソースコ
ードが作成される。
そして上記したFMEAシートに基づき、プログラムテ
ストデータ自動生成手段8によりプログラムテストデー
タ自動生成処理(84)が行われプログラム診断ルール
が作成され、プログラムテスト手段9の知識データベー
ス部へ蓄積され、最後にプログラムテスト手段9により
プログラムのテスト処理(85)が実行され一連の処理
動作が完了する。
ストデータ自動生成手段8によりプログラムテストデー
タ自動生成処理(84)が行われプログラム診断ルール
が作成され、プログラムテスト手段9の知識データベー
ス部へ蓄積され、最後にプログラムテスト手段9により
プログラムのテスト処理(85)が実行され一連の処理
動作が完了する。
なお、上記実施例ではプログラムテスト手段9の知識デ
ータベース部に蓄積される診断ルールが「もしAならば
Bである」の形をしていることを示したが、この診断ル
ールの形は特に限定しておらず、フレーム、黒板モデル
、意味ネットワーク。
ータベース部に蓄積される診断ルールが「もしAならば
Bである」の形をしていることを示したが、この診断ル
ールの形は特に限定しておらず、フレーム、黒板モデル
、意味ネットワーク。
述語論理、オブジェクトなどでもよ(、これらの混在し
た形でもよい、同様に上記プログラムテスト手段9の推
論機能部も三段論法だけでなく、知識工学分野で一般に
定義されている帰納推論、類似推論、デフォルト推論な
どの推論機能でもよい。
た形でもよい、同様に上記プログラムテスト手段9の推
論機能部も三段論法だけでなく、知識工学分野で一般に
定義されている帰納推論、類似推論、デフォルト推論な
どの推論機能でもよい。
さらに、上記プログラムテスト手段9の結果は上記プロ
グラム構成トレードオフ手段2やプログラム故障モード
影響解析手段4の結果10と同様に上記ソフトウェアデ
ザインレビュー手段6へ入力されてプログラムテストの
結果がソフトウェアデザインレビュー用知識の生成に役
立つように利用されてもよい。
グラム構成トレードオフ手段2やプログラム故障モード
影響解析手段4の結果10と同様に上記ソフトウェアデ
ザインレビュー手段6へ入力されてプログラムテストの
結果がソフトウェアデザインレビュー用知識の生成に役
立つように利用されてもよい。
さらに、上記実施例で説明した手段2〜9は全てソフト
ウェアであるとして説明したが、同様な。
ウェアであるとして説明したが、同様な。
機能、性能が得られれば、ハードウェアやファームウェ
アでもよく、またこれらが混在していてもよい。
アでもよく、またこれらが混在していてもよい。
さらに、上記各手段2〜9の処理装置としてのコンピュ
ータも一般的なコンピュータを使っているが、これらの
各手段の処理ができればコンピュータの種類は特に限定
しないと共に、コンピュータの使用台数も一台に限るも
のではな(、上記各手段2〜9の処理内容に応じて、複
数台に分散してもよい。
ータも一般的なコンピュータを使っているが、これらの
各手段の処理ができればコンピュータの種類は特に限定
しないと共に、コンピュータの使用台数も一台に限るも
のではな(、上記各手段2〜9の処理内容に応じて、複
数台に分散してもよい。
さらに、上記プログラム構成トレードオフ手段2で使う
部品やコンポーネントのデータは上記知識ベース部6b
に含まれていることを示したが、これらの部品やコンポ
ーネントのデータは知識ベース部6b以外の別のデータ
ベースに分散して蓄積されていてもよい。
部品やコンポーネントのデータは上記知識ベース部6b
に含まれていることを示したが、これらの部品やコンポ
ーネントのデータは知識ベース部6b以外の別のデータ
ベースに分散して蓄積されていてもよい。
次に、上記実施例ではソフトウェアの設計、eJ造、試
験の全工程を含む広義のプログラミング作業の自動化装
置について説明したが、人間の行う作業を支援するソフ
トウェア開発支援装置や、半自動プログラミング装置な
どであってもよく、上記実施例と同様の効果を奏する。
験の全工程を含む広義のプログラミング作業の自動化装
置について説明したが、人間の行う作業を支援するソフ
トウェア開発支援装置や、半自動プログラミング装置な
どであってもよく、上記実施例と同様の効果を奏する。
以上のように、この発明によれば、ソフトウェアの設計
、製造、試験作業を機械化するための8種類の手段をソ
フトウェアとしてコンピュータに組み込み、各手段が連
携して動作する構成にしたノテ、’/7)ウェアの設計
やデザインレビュー作業、プログラム作成作業、および
試験作業の省カ化、自動化、高速化が得られる効果があ
る。
、製造、試験作業を機械化するための8種類の手段をソ
フトウェアとしてコンピュータに組み込み、各手段が連
携して動作する構成にしたノテ、’/7)ウェアの設計
やデザインレビュー作業、プログラム作成作業、および
試験作業の省カ化、自動化、高速化が得られる効果があ
る。
第1図はこの発明の実施例による全体構成図、第2図は
第1図に示したプログラム故障モード影響解析手段によ
り作成されるFMEAシートのフォーマット例の説明図
、第3図は上記プログラム故障モード影響解析手段の動
作説明図、第4図は第1図に示したプログラムテストデ
ータ自動生成手段の動作説明図、第5図は自動プログラ
ミング装置に組み込まれている全部の手段の一連の処理
動作を説明するための図、第6図は従来の自動プログラ
ミング装置を説明する全体構成図である。 図中2はプログラム構成トレードオフ手段、3はブロッ
ク線図作成手段、4はプログラム故障モード影響解析手
段、5はシミュレーション手段、6はソフトウェアデザ
インレビュー手段、6aは学習部、6bは知識ベース部
、6cは推論部、7はプログラム自動生成手段、8はプ
ログラムテストデータ自動生成手段、9はプログラムテ
スト手段、lは最適組合わせ、mはブロック線図・nは
解析シート、0はソースコード、pはテストルールであ
る。 代理人 大 岩 増 雄(ばか2名)第4図
第1図に示したプログラム故障モード影響解析手段によ
り作成されるFMEAシートのフォーマット例の説明図
、第3図は上記プログラム故障モード影響解析手段の動
作説明図、第4図は第1図に示したプログラムテストデ
ータ自動生成手段の動作説明図、第5図は自動プログラ
ミング装置に組み込まれている全部の手段の一連の処理
動作を説明するための図、第6図は従来の自動プログラ
ミング装置を説明する全体構成図である。 図中2はプログラム構成トレードオフ手段、3はブロッ
ク線図作成手段、4はプログラム故障モード影響解析手
段、5はシミュレーション手段、6はソフトウェアデザ
インレビュー手段、6aは学習部、6bは知識ベース部
、6cは推論部、7はプログラム自動生成手段、8はプ
ログラムテストデータ自動生成手段、9はプログラムテ
スト手段、lは最適組合わせ、mはブロック線図・nは
解析シート、0はソースコード、pはテストルールであ
る。 代理人 大 岩 増 雄(ばか2名)第4図
Claims (1)
- ソフトウェア要求仕様に基づき、プログラム構成のトレ
ードオフを行いプログラムを構成するコンポーネント等
の最適組合せを行うプログラム構成トレードオフ手段と
、このコンポーネント等の最適組合せの結果から信号系
統図を含むブロック線図を作成するブロック線図作成手
段と、該ブロック線図からプログラムの故障モード及び
その影響の解析を実施して解析シートを作成するプログ
ラム故障モード影響解析手段と、前記ブロック線図によ
り構成されるプログラムについてその動作を確認するシ
ミュレーションを行うシミュレーション手段と、前記コ
ンポーネント等の最適組合せ及び前記解析シートからソ
フトウェアについて設計知識等を獲得し学習する学習部
とこの設計知識等を蓄積する知識ベース部及びこの設計
知識を使い推論を行う推論部とからなるソフトウェアデ
ザインレビュー手段と、前記ブロック線図からプログラ
ムのソースコードを生成するプログラム自動生成手段と
、前記解析シートからプログラムのテストルールを生成
するプログラムテストデータ自動生成手段と、前記プロ
グラムのソースコードに関して該テストルールに基づき
プログラムのテストを行うプログラムテスト手段とを具
備した自動プログラミング装置。
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63129501A JP2914664B2 (ja) | 1988-05-27 | 1988-05-27 | 自動プログラミング装置 |
| EP89109537A EP0343682B1 (en) | 1988-05-27 | 1989-05-26 | Automatic programming system |
| DE68923126T DE68923126T2 (de) | 1988-05-27 | 1989-05-26 | Automatisches Programmiersystem. |
| US07/792,803 US5269014A (en) | 1988-05-24 | 1991-11-15 | Automatic programming system with design review capabilities |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63129501A JP2914664B2 (ja) | 1988-05-27 | 1988-05-27 | 自動プログラミング装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH01298435A true JPH01298435A (ja) | 1989-12-01 |
| JP2914664B2 JP2914664B2 (ja) | 1999-07-05 |
Family
ID=15011044
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63129501A Expired - Lifetime JP2914664B2 (ja) | 1988-05-24 | 1988-05-27 | 自動プログラミング装置 |
Country Status (3)
| Country | Link |
|---|---|
| EP (1) | EP0343682B1 (ja) |
| JP (1) | JP2914664B2 (ja) |
| DE (1) | DE68923126T2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2021090890A1 (ja) * | 2019-11-08 | 2021-05-14 | 大日本印刷株式会社 | ソフトウェア作成装置、ソフトウェア作成方法、およびプログラム |
Families Citing this family (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3206907B2 (ja) * | 1990-02-22 | 2001-09-10 | 三菱電機株式会社 | 運用管制装置 |
| JPH0546377A (ja) * | 1991-08-08 | 1993-02-26 | Hitachi Ltd | 制御プログラム作成方法及びその作成装置 |
| IL99927A0 (en) * | 1991-11-01 | 1992-08-18 | Ibm Israel | Restriction checker generator |
| JP2924939B2 (ja) * | 1992-07-31 | 1999-07-26 | 株式会社日立製作所 | 制御プログラムモジュ−ルの作成方法およびその装置 |
| GB2293669B (en) * | 1994-09-30 | 1999-07-14 | Hoskyns Technologies Ireland L | A software testing apparatus |
| DE19837871C2 (de) | 1998-08-20 | 2000-06-08 | Manfred Broy | Verfahren zum automatischen Erzeugen eines Programms |
| DE10057575A1 (de) * | 2000-11-20 | 2002-05-29 | Andreas Foltinek | Verfahren zur automatischen Softwaregenerierung |
| FR2825487B1 (fr) * | 2001-06-01 | 2003-08-29 | Alliance Pour Les Technologies | Procede et equipements de production de logiciel |
| NL1024464C2 (nl) | 2003-10-06 | 2005-04-07 | J A A A Doggen Beheer B V | Werkwijze, ontwerpprogramma en uitvoeringsprogramma voor het samenstellen en uitvoeren van een computerapplicatie, alsmede gegevensdrager voorzien van ontwerpprogramma en gegevensdrager voorzien van uitvoeringsprogramma. |
| KR102908038B1 (ko) * | 2023-11-28 | 2026-01-05 | 주식회사 시큐메디 | 의료용 소프트웨어 통합개발환경 시스템 및 의료용 소프트웨어 개발 방법 |
-
1988
- 1988-05-27 JP JP63129501A patent/JP2914664B2/ja not_active Expired - Lifetime
-
1989
- 1989-05-26 EP EP89109537A patent/EP0343682B1/en not_active Expired - Lifetime
- 1989-05-26 DE DE68923126T patent/DE68923126T2/de not_active Expired - Fee Related
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2021090890A1 (ja) * | 2019-11-08 | 2021-05-14 | 大日本印刷株式会社 | ソフトウェア作成装置、ソフトウェア作成方法、およびプログラム |
| JPWO2021090890A1 (ja) * | 2019-11-08 | 2021-05-14 | ||
| CN113767363A (zh) * | 2019-11-08 | 2021-12-07 | 大日本印刷株式会社 | 软件生成装置、软件生成方法和程序 |
| US11733976B2 (en) | 2019-11-08 | 2023-08-22 | Dai Nippon Printing Co., Ltd. | Software creation based on settable programming language |
| CN113767363B (zh) * | 2019-11-08 | 2024-06-07 | 大日本印刷株式会社 | 软件生成装置、软件生成方法和程序产品 |
Also Published As
| Publication number | Publication date |
|---|---|
| DE68923126T2 (de) | 1995-11-09 |
| DE68923126D1 (de) | 1995-07-27 |
| EP0343682A3 (en) | 1990-08-22 |
| EP0343682A2 (en) | 1989-11-29 |
| EP0343682B1 (en) | 1995-06-21 |
| JP2914664B2 (ja) | 1999-07-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5269014A (en) | Automatic programming system with design review capabilities | |
| US5557774A (en) | Method for making test environmental programs | |
| US5402524A (en) | Case-based knowledge source for artificial intelligence software shell | |
| DE3856379T2 (de) | Expertensystem mit verfahrenssteuerung | |
| DE69327318T2 (de) | Unterstützung für systementwicklung. | |
| US5598511A (en) | Method and apparatus for interpreting data and accessing on-line documentation in a computer system | |
| US5412758A (en) | Flexible system for knowledge acquisition in expert system development | |
| JPH0614320B2 (ja) | 図式プログラム・テスト方法 | |
| JPH01298435A (ja) | 自動プログラミング装置 | |
| WO2020240482A1 (en) | Process and system for automatic generation of functional architecture documents and software design and analysis specification documents from natural language | |
| US5487131A (en) | Method for analyzing the flow of data through a complex information exchange system | |
| CN120373972A (zh) | 一种基于多智能体网络的智能化良率管理方法及系统 | |
| CN118940722A (zh) | 一种数据集转换方法及系统 | |
| JP3206907B2 (ja) | 運用管制装置 | |
| US20250298993A1 (en) | Systems and methods for analog electronic design and analysis using a multi-modal, multi-agent artificial intelligence (ai) model | |
| De Greef et al. | Cognitive support: Designing aiding to supplement human knowledge | |
| CN119336641A (zh) | 白盒测试方法及装置、存储介质、计算机设备 | |
| Hale et al. | Towards a model of programmers' cognitive processes in software maintenance: A structural learning theory approach for debugging | |
| Davis et al. | Requirements language processing for the effective testing of real-time systems | |
| US20250355641A1 (en) | Ai agent architecture platform for managing software development process | |
| US20250200304A1 (en) | Information processing device, information processing method, and recording medium | |
| JP7692815B2 (ja) | 可視化装置、可視化方法および可視化プログラム | |
| JP2650406B2 (ja) | 計画作成支援装置およびその方法 | |
| CN120562727A (zh) | 一种多智能体柔性作业车间调度方法及装置 | |
| JPH0850576A (ja) | 視覚対話型シミュレーション装置 |