JPH06175845A - ソフトウェア自己高信頼化方法およびその装置 - Google Patents
ソフトウェア自己高信頼化方法およびその装置Info
- Publication number
- JPH06175845A JPH06175845A JP4330255A JP33025592A JPH06175845A JP H06175845 A JPH06175845 A JP H06175845A JP 4330255 A JP4330255 A JP 4330255A JP 33025592 A JP33025592 A JP 33025592A JP H06175845 A JPH06175845 A JP H06175845A
- Authority
- JP
- Japan
- Prior art keywords
- software
- self
- countermeasure
- program
- reliability
- 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
Landscapes
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
(57)【要約】
【目的】ソフトウエアが自己を高信頼化するために欠陥
に対して自己改造を行うことができる。 【構成】主処理プログラムの実行内容を動作状態検出手
段12で検出し、故障が検出されるとこれに対する対策
が対策決定手段13で決定され、この決定内容に従って
プログラム改造手段15によりソフトウエアの自己改造
が行われる。
に対して自己改造を行うことができる。 【構成】主処理プログラムの実行内容を動作状態検出手
段12で検出し、故障が検出されるとこれに対する対策
が対策決定手段13で決定され、この決定内容に従って
プログラム改造手段15によりソフトウエアの自己改造
が行われる。
Description
【0001】
【産業上の利用分野】この発明は、自己改造機能を有す
るソフトウエア自己高信頼化方法およびその装置に関す
る
るソフトウエア自己高信頼化方法およびその装置に関す
る
【0002】
【従来の技術】ソフトウェアを開発するときには、欠陥
を作りこまないようにし、それでも作り込んでしまった
欠陥は、実際の運用に入る前に検出し除去するという観
点からレビューやテストが実施される。しかしながら、
それでも完全に欠陥を無くす事は困難であり、多くの場
合には欠陥が潜在したまま実際の運用に供される。。
を作りこまないようにし、それでも作り込んでしまった
欠陥は、実際の運用に入る前に検出し除去するという観
点からレビューやテストが実施される。しかしながら、
それでも完全に欠陥を無くす事は困難であり、多くの場
合には欠陥が潜在したまま実際の運用に供される。。
【0003】そして、実際の運用に入ってからの実際の
使用状況により、開発時には発見できなかった欠陥が顕
在化して故障現象がおこることも多く、試行してから修
正改良の要求が顧客から出てくる場合も多い。実際の使
用状況については要求仕様作成時に可能な限り予測する
が、すべては予測できないことと、対処する方法をソフ
トウェアに作り込む手法が不明確であることにより、実
際の運用に入ってからの信頼性が低下し、多大な保守作
業が必要になってくる。
使用状況により、開発時には発見できなかった欠陥が顕
在化して故障現象がおこることも多く、試行してから修
正改良の要求が顧客から出てくる場合も多い。実際の使
用状況については要求仕様作成時に可能な限り予測する
が、すべては予測できないことと、対処する方法をソフ
トウェアに作り込む手法が不明確であることにより、実
際の運用に入ってからの信頼性が低下し、多大な保守作
業が必要になってくる。
【0004】
【発明が解決しようとする課題】ソフトウェアは、交通
機関や電源設備、金融や通信をはじめとした会社システ
ムの基幹をなす分野で使われ、また今後ますます適用さ
れる分野が広がる傾向にある。したがって、その社会的
影響の大きさを配慮すれば、高い品質をもったソフトウ
ェアがより一層強く求められる。従って、高い品質のソ
フトウェアを開発し、高い質で運用し、かつ高品質の保
守を行う必要性が強く出てくる。
機関や電源設備、金融や通信をはじめとした会社システ
ムの基幹をなす分野で使われ、また今後ますます適用さ
れる分野が広がる傾向にある。したがって、その社会的
影響の大きさを配慮すれば、高い品質をもったソフトウ
ェアがより一層強く求められる。従って、高い品質のソ
フトウェアを開発し、高い質で運用し、かつ高品質の保
守を行う必要性が強く出てくる。
【0005】しかしながら、ソフトウェアが複雑化、大
規模化するにつれて、高い品質のソフトウェアを開発
し、高い質で運用し、かつ高品質の保守を行うのが困難
になっている。
規模化するにつれて、高い品質のソフトウェアを開発
し、高い質で運用し、かつ高品質の保守を行うのが困難
になっている。
【0006】実際の使用状況について可能な限り予測し
た対処方法を、ソフトウェアに作り込む手法が不明確で
あるために、実際の運用に入ってからの実際の使用状況
により、開発時には検出除去できなかった欠陥が顕在化
し、故障現象が起こって信頼性が低下する。そして、運
用を継続するために修正改良のための大きな負荷のかか
った保守作業が必要になってくる。
た対処方法を、ソフトウェアに作り込む手法が不明確で
あるために、実際の運用に入ってからの実際の使用状況
により、開発時には検出除去できなかった欠陥が顕在化
し、故障現象が起こって信頼性が低下する。そして、運
用を継続するために修正改良のための大きな負荷のかか
った保守作業が必要になってくる。
【0007】
【課題を解決するための手段】本発明は、ソフトウェア
自身に高い品質、高い信頼性をその実行に伴って獲得し
ていくようなメカニズムを組み込んで高信頼化の手段を
与えることにより、より高い品質、高い信頼性のソフト
ウェアを実現するソフトウエア自己高信頼化方法および
装置である。この発明は、ソフトウェアの動作実行中
に、ソフトウェア自身が、主要な処理を行うソフトウェ
ア、プログラム部分の動作を観測する自己観測ステップ
と、
自身に高い品質、高い信頼性をその実行に伴って獲得し
ていくようなメカニズムを組み込んで高信頼化の手段を
与えることにより、より高い品質、高い信頼性のソフト
ウェアを実現するソフトウエア自己高信頼化方法および
装置である。この発明は、ソフトウェアの動作実行中
に、ソフトウェア自身が、主要な処理を行うソフトウェ
ア、プログラム部分の動作を観測する自己観測ステップ
と、
【0008】ソフトウェア自身が、異常・例外・特異状
態であるような故障状態かどうか、また故障状態であれ
ば程度や種別を調べて、故障の原因や続いて起こる現象
を推測し求める自己診断ステップと、ソフトウェア自身
が、その推測された原因や後続現象に対する対応策を探
索して選択決定する意思決定ステップと、ソフトウェア
自身が、選択決定した対応策にもとづいて動作を変更
し、制御する自己制御ステップと、
態であるような故障状態かどうか、また故障状態であれ
ば程度や種別を調べて、故障の原因や続いて起こる現象
を推測し求める自己診断ステップと、ソフトウェア自身
が、その推測された原因や後続現象に対する対応策を探
索して選択決定する意思決定ステップと、ソフトウェア
自身が、選択決定した対応策にもとづいて動作を変更
し、制御する自己制御ステップと、
【0009】より大きな動作変更が必要なときには、選
択決定した対応策にもとづいてソフトウェアが自己を改
造する自己改造ステップと、を有するソフトウエア自己
高信頼化方法である。
択決定した対応策にもとづいてソフトウェアが自己を改
造する自己改造ステップと、を有するソフトウエア自己
高信頼化方法である。
【0010】この発明は、自己改造機能を持ったソフト
ウエアを実行し、その結果に応じてプログラムの変数デ
−タ変更等を行う装置であって、前記ソフトウエアは、
情報処理を行う主処理部と、主処理部の動作に関連する
プログラム部と、前記主処理部およびプログラム部の欠
陥を検出する検出部と、検出された欠陥に対する対応策
を決定する決定部と、決定された対応策に従って前記ソ
フトウエアを改造する改造部とを含み、前記ソフトウエ
アを保持する手段と、前記ソフトウエアの内容を実行す
る手段と、を備えたことを特徴とする、ソフトウエア自
己高信頼化装置である。
ウエアを実行し、その結果に応じてプログラムの変数デ
−タ変更等を行う装置であって、前記ソフトウエアは、
情報処理を行う主処理部と、主処理部の動作に関連する
プログラム部と、前記主処理部およびプログラム部の欠
陥を検出する検出部と、検出された欠陥に対する対応策
を決定する決定部と、決定された対応策に従って前記ソ
フトウエアを改造する改造部とを含み、前記ソフトウエ
アを保持する手段と、前記ソフトウエアの内容を実行す
る手段と、を備えたことを特徴とする、ソフトウエア自
己高信頼化装置である。
【0011】
【作用】前記ソフトウエアの動作状態を検出するための
自己認識機能は、自己観測を実行する自己観測機能と自
己診断を実行する自己診断機能とを含み、自己観測機能
により、ソフトウェアの動作実行中に、ソフトウェア自
身が、主要な処理を行うソフトウェアのプログラム部分
(ここでは以下仕事機構と呼ぶ)の動作を観測する。
自己認識機能は、自己観測を実行する自己観測機能と自
己診断を実行する自己診断機能とを含み、自己観測機能
により、ソフトウェアの動作実行中に、ソフトウェア自
身が、主要な処理を行うソフトウェアのプログラム部分
(ここでは以下仕事機構と呼ぶ)の動作を観測する。
【0012】そしてその観測結果をもとに、自己診断機
能が、異常・例外・特異状態であるような故障状態やこ
れらに接近する危険状態かどうか判定する。正常であれ
ば、そのまま仕事機構による仕事を続ける。一方、危険
状態や故障状態であれば、程度や種別を調べて、故障の
原因や続いて起こる現象を推測し求める。
能が、異常・例外・特異状態であるような故障状態やこ
れらに接近する危険状態かどうか判定する。正常であれ
ば、そのまま仕事機構による仕事を続ける。一方、危険
状態や故障状態であれば、程度や種別を調べて、故障の
原因や続いて起こる現象を推測し求める。
【0013】自己意思決定機能では意思決定と自己制御
を行う。意思決定機能では、自己診断結果をもとに、そ
の推測された原因や後続現象に対する対応策を探索して
選択決定する。そして、自己制御機能では、仕事機構に
よる主処理プログラム中で選択決定した対応策にもとづ
いて動作を変更し、意思決定にそって制御する。より大
きな動作変更が必要なときには、自己改造機能が選択決
定した対応策にもとづいて自己改造プログラムによりソ
フトウェアが自己を改造する。
を行う。意思決定機能では、自己診断結果をもとに、そ
の推測された原因や後続現象に対する対応策を探索して
選択決定する。そして、自己制御機能では、仕事機構に
よる主処理プログラム中で選択決定した対応策にもとづ
いて動作を変更し、意思決定にそって制御する。より大
きな動作変更が必要なときには、自己改造機能が選択決
定した対応策にもとづいて自己改造プログラムによりソ
フトウェアが自己を改造する。
【0014】また、こうしたそれぞれの機能の動きを自
己表現機能により、必要に応じてソフトウェアの外部に
いるユーザ(開発者やオペレータ)に例えば表示手段を
用いて知らせる。
己表現機能により、必要に応じてソフトウェアの外部に
いるユーザ(開発者やオペレータ)に例えば表示手段を
用いて知らせる。
【0015】さらに、必要に応じて現象、診断、対応
策、結果を組にして、事例データベースに記録してお
く。これにより、事例が増えれば、それらを参照して意
思決定を行うようにもできる。
策、結果を組にして、事例データベースに記録してお
く。これにより、事例が増えれば、それらを参照して意
思決定を行うようにもできる。
【0016】
【実施例】以下、この発明の一実施例について図面を参
照して説明する。
照して説明する。
【0017】図1はこの一実施例に於ける自己改造機能
をもつソフトウエアの内容を示す機能ブロック図であ
る。図において、このソフトウエアの仕事機構である主
処理プログラム実行、制御手段11は被検プログラム部
であり、その動作状態は動作状態検出手段12によって
常時監視されている。この監視項目としては、主処理プ
ログラム実行、すなわちソフトウエアの動作実行中に、
制御手段11が異常、例外または特異状態であるような
故障状態であるか否かの自己観測、および故障状態であ
ればその程度や種別を調べて、故障の原因やつずいて起
るであろう現象を推測する自己診断、等の項目を含む。
動作状態検出手段12の出力は、その推測された原因や
後続現象に対する対応策を探索して選択、決定する対策
決定手段13に供給されるとともに、検出の内容は表示
手段14に送って表示される。
をもつソフトウエアの内容を示す機能ブロック図であ
る。図において、このソフトウエアの仕事機構である主
処理プログラム実行、制御手段11は被検プログラム部
であり、その動作状態は動作状態検出手段12によって
常時監視されている。この監視項目としては、主処理プ
ログラム実行、すなわちソフトウエアの動作実行中に、
制御手段11が異常、例外または特異状態であるような
故障状態であるか否かの自己観測、および故障状態であ
ればその程度や種別を調べて、故障の原因やつずいて起
るであろう現象を推測する自己診断、等の項目を含む。
動作状態検出手段12の出力は、その推測された原因や
後続現象に対する対応策を探索して選択、決定する対策
決定手段13に供給されるとともに、検出の内容は表示
手段14に送って表示される。
【0018】対策決定手段13により決定される対策に
は、検出された故障の内容に応じて大きく分けて2つの
方法がある。ひとつは局所的なプログラムのパラメ−タ
デ−タの変更、たとえば変数デ−タの値の変更であり、
他のひとつは大局的な見地にもとずくソ−スコ−ドの変
更等によるソフトウエアの改造である。この対策決定手
段13の出力はプログラム改造手段15に供給され、選
択、決定された対応策にもとずいて動作の変更、制御、
改造が行われる。この対策決定手段13および改造手段
15の改造の結果も表示手段14に表示される。表示手
段14による表示の内容は例えばオペレ−タ16に対す
るメッセ−ジである。
は、検出された故障の内容に応じて大きく分けて2つの
方法がある。ひとつは局所的なプログラムのパラメ−タ
デ−タの変更、たとえば変数デ−タの値の変更であり、
他のひとつは大局的な見地にもとずくソ−スコ−ドの変
更等によるソフトウエアの改造である。この対策決定手
段13の出力はプログラム改造手段15に供給され、選
択、決定された対応策にもとずいて動作の変更、制御、
改造が行われる。この対策決定手段13および改造手段
15の改造の結果も表示手段14に表示される。表示手
段14による表示の内容は例えばオペレ−タ16に対す
るメッセ−ジである。
【0019】図1に示した各々の手段11−15は全体
として自己改造機能を有するソフトウエアとして構成さ
れる。このソフトウエアは例えば図2に示したメモリの
ようなソフトウエア保持手段21およびこれに付随した
デ−タベ−ス22とより構成され、図1に示した各々の
手段の機能はプロセッサのような実行手段23によって
実現される。このデ−タベ−ス22には図1の各々の手
段から得られた現象、診断、対応策、結果を組にして、
事例デ−タとして記録しておくこともできる。これによ
り、事例が増えればそれらを参照して自己改造の意思決
定を行うようにもできる。
として自己改造機能を有するソフトウエアとして構成さ
れる。このソフトウエアは例えば図2に示したメモリの
ようなソフトウエア保持手段21およびこれに付随した
デ−タベ−ス22とより構成され、図1に示した各々の
手段の機能はプロセッサのような実行手段23によって
実現される。このデ−タベ−ス22には図1の各々の手
段から得られた現象、診断、対応策、結果を組にして、
事例デ−タとして記録しておくこともできる。これによ
り、事例が増えればそれらを参照して自己改造の意思決
定を行うようにもできる。
【0020】ところで、図1に示した機能を持つソフト
ウエアはたとえば図3に示したプログラムモジュールM
1,M2,M3,M4,Mr,Md,Mp,Mcから構
成される。このうち、モジュ−ルM1,M2,M3,M
4は主処理を行う仕事機構であり、Mrは自己認識機構
モジュ−ルであり、Mdは自己意思決定機構モジュ−ル
であり、Mpは自己表現モジュ−ルであり、Mcは改造
機構モジュ−ルである。
ウエアはたとえば図3に示したプログラムモジュールM
1,M2,M3,M4,Mr,Md,Mp,Mcから構
成される。このうち、モジュ−ルM1,M2,M3,M
4は主処理を行う仕事機構であり、Mrは自己認識機構
モジュ−ルであり、Mdは自己意思決定機構モジュ−ル
であり、Mpは自己表現モジュ−ルであり、Mcは改造
機構モジュ−ルである。
【0021】自己認識機構モジュ−ルMrには診断ル−
ルファイルRrおよび観測デ−タファイルStが付属し
て設けられ、自己意思決定機構モジュ−ルMdには観測
デ−タファイルStおよび意思決定ル−ルファイルRd
が附属して設けられ、自己表現モジュ−ルMpには故障
発生事例ファイルCaが付属して設けられ、改造機構モ
ジュ−ルMcには改造指示ファイルScが付属して設け
られる。ここで、各々のモジュールは手続き型プログラ
ムの関数、またはオブジェクト指向プログラムのクラス
・オブジェクトモジュールである。 (1)仕事機構の作成 (1.1)主処理を行う仕事機構(モジュールM1,
2,3,4)を作る。 (1.2)処理の中で重要な処理を行うモジュールを複
数箇所決める(ここではM2,M4)。 (1.3)その処理の直前に再開点を設定する(図3の
r1,r2)。 (1.4)再開点を通過して以降の処理で書き換えて更
新してしまうデータはすべて更新前にデータを複製して
保存するようにする。
ルファイルRrおよび観測デ−タファイルStが付属し
て設けられ、自己意思決定機構モジュ−ルMdには観測
デ−タファイルStおよび意思決定ル−ルファイルRd
が附属して設けられ、自己表現モジュ−ルMpには故障
発生事例ファイルCaが付属して設けられ、改造機構モ
ジュ−ルMcには改造指示ファイルScが付属して設け
られる。ここで、各々のモジュールは手続き型プログラ
ムの関数、またはオブジェクト指向プログラムのクラス
・オブジェクトモジュールである。 (1)仕事機構の作成 (1.1)主処理を行う仕事機構(モジュールM1,
2,3,4)を作る。 (1.2)処理の中で重要な処理を行うモジュールを複
数箇所決める(ここではM2,M4)。 (1.3)その処理の直前に再開点を設定する(図3の
r1,r2)。 (1.4)再開点を通過して以降の処理で書き換えて更
新してしまうデータはすべて更新前にデータを複製して
保存するようにする。
【0022】(1.5)実行時に再開点を通過したとき
は、自己認識機構モジュール(Mr)に通過した再開点
と観測デ−タを知らせるように、観測デ−タセットSt
に書き込むようにしておく。
は、自己認識機構モジュール(Mr)に通過した再開点
と観測デ−タを知らせるように、観測デ−タセットSt
に書き込むようにしておく。
【0023】(1.6)それぞれのモジュールでも、プ
ログラムPの動作状態を表すのに有効なデータも観測デ
ータとして自己認識機構モジュール(Mr)に知らせる
ようにしておく。 (2)局所的な高信頼化機構の作成 (2.1)モジュールM4はサブモジュールm0,m
1,m2,m3,m4から構成されている。
ログラムPの動作状態を表すのに有効なデータも観測デ
ータとして自己認識機構モジュール(Mr)に知らせる
ようにしておく。 (2)局所的な高信頼化機構の作成 (2.1)モジュールM4はサブモジュールm0,m
1,m2,m3,m4から構成されている。
【0024】(2.2)モジュ−ルM4は1つの処理を
4つの異なる方法で行えるように準備しており、m1,
m2,m3,m4それぞれの中で実現している。通常は
m1を使って処理をする。m0は、このm1の処理が成
功したか失敗したかどうかを観測しており、失敗した場
合には、m1以外のモジュールを代替処理として使い、
再度処理を試みる。つまり、m0はモジュールM4内に
局所化された、自己認識、自己意思決定機構のためのサ
ブモジュールとなる。 (3)大局的な高信頼化機構の作成 (3.1)診断ルールファイルRrの作成 次のような事項を予測し、それを決められた記述の仕方
で知識を診断ルールとして記述して、診断ルールファイ
ルRrを作成する。 (3.1.1)状態ルール プログラムがどんな動作状態になると、どんな故障が起
こっているか、または起こりそうかという知識。 (3.1.2)故障原因ルール 実行中に故障が発生した場合、その原因がどこにあるの
かという知識。 (3.2)動作状態観測データセットの作成 主処理のモジュールから送られてきた観測データを蓄積
しておくためのデータセットStを作成する。 (3.3)観測データや再開点通過の情報が入るとき
に、診断ルールの状態ルールと照合する。主処理で故障
が発生したとの情報が入ったときには、診断ルールの故
障原因ルールと照合する。 (4)自己意思決定機構モジュールの作成 (4.1)意思決定ルールの作成 次のような事項を予め分析しておき、それを決められた
記述の仕方で知識を意思決定ルールとして記述して、意
思決定ルールファイルRdを作成する。 (4.1.1)故障影響構造ルール 主処理モジュール同士の相互の故障影響の関係構造と、
再開点の位置についての知識。 (4.1.2)対策ルール ある故障の原因に対して、どんな方法で回復できるかの
知識。
4つの異なる方法で行えるように準備しており、m1,
m2,m3,m4それぞれの中で実現している。通常は
m1を使って処理をする。m0は、このm1の処理が成
功したか失敗したかどうかを観測しており、失敗した場
合には、m1以外のモジュールを代替処理として使い、
再度処理を試みる。つまり、m0はモジュールM4内に
局所化された、自己認識、自己意思決定機構のためのサ
ブモジュールとなる。 (3)大局的な高信頼化機構の作成 (3.1)診断ルールファイルRrの作成 次のような事項を予測し、それを決められた記述の仕方
で知識を診断ルールとして記述して、診断ルールファイ
ルRrを作成する。 (3.1.1)状態ルール プログラムがどんな動作状態になると、どんな故障が起
こっているか、または起こりそうかという知識。 (3.1.2)故障原因ルール 実行中に故障が発生した場合、その原因がどこにあるの
かという知識。 (3.2)動作状態観測データセットの作成 主処理のモジュールから送られてきた観測データを蓄積
しておくためのデータセットStを作成する。 (3.3)観測データや再開点通過の情報が入るとき
に、診断ルールの状態ルールと照合する。主処理で故障
が発生したとの情報が入ったときには、診断ルールの故
障原因ルールと照合する。 (4)自己意思決定機構モジュールの作成 (4.1)意思決定ルールの作成 次のような事項を予め分析しておき、それを決められた
記述の仕方で知識を意思決定ルールとして記述して、意
思決定ルールファイルRdを作成する。 (4.1.1)故障影響構造ルール 主処理モジュール同士の相互の故障影響の関係構造と、
再開点の位置についての知識。 (4.1.2)対策ルール ある故障の原因に対して、どんな方法で回復できるかの
知識。
【0025】(4.2)主処理で故障が発生したとき
に、自己認識機構モジュールMrの出す診断結果と、動
作状態観測データセットStを参照して、制御を決定す
る。またプログラムを書き換える必要がある場合には、
その変更指示を決められた記述の仕方でファイルに出力
し、改造指示ファイルScを出力するよう作成する。 (5)自己改造機構モジュールMcの作成
に、自己認識機構モジュールMrの出す診断結果と、動
作状態観測データセットStを参照して、制御を決定す
る。またプログラムを書き換える必要がある場合には、
その変更指示を決められた記述の仕方でファイルに出力
し、改造指示ファイルScを出力するよう作成する。 (5)自己改造機構モジュールMcの作成
【0026】自己意思決定機構モジュールMdで出力さ
れる改造指示ファイルScを読み込み、オンラインでプ
ログラムの変数データの値を更新する(これはプログラ
ムの実行経路を決める変数デ−タの値を更新して実行経
路を切り替えることも含む)か、ソースコードを変更す
るように作成する。
れる改造指示ファイルScを読み込み、オンラインでプ
ログラムの変数データの値を更新する(これはプログラ
ムの実行経路を決める変数デ−タの値を更新して実行経
路を切り替えることも含む)か、ソースコードを変更す
るように作成する。
【0027】通常は、ソースコード自体の書換はプログ
ラムの実行が終了してから、実行するが、ソースコード
が実行時に実行形式に変換されながらプログラムが実行
される、インタプリタ方式の場合には、改造をオンライ
ンで実施することもできる。 (6)自己表現機構モジュールMpの作成
ラムの実行が終了してから、実行するが、ソースコード
が実行時に実行形式に変換されながらプログラムが実行
される、インタプリタ方式の場合には、改造をオンライ
ンで実施することもできる。 (6)自己表現機構モジュールMpの作成
【0028】自己認識機構モジュールMrでの故障発生
とその時の動作状態観測データセットや診断結果、自己
意思決定機構による意思決定や故障回復の成否を表示す
る。またこれらを組にして故障発生事例ファイルCaに
出力するよう作成する。
とその時の動作状態観測データセットや診断結果、自己
意思決定機構による意思決定や故障回復の成否を表示す
る。またこれらを組にして故障発生事例ファイルCaに
出力するよう作成する。
【0029】(7)以下、プログラムの実行を図4のフ
ロ−チャ−トを参照しながら説明する。 (7.1)最
初のステップS1では主処理プログラムが起動され、次
のステップS2では処理が正常であるか否かがチェック
される。通常の実行では、モジュールM1,M2,M
3,M4(モジュ−ルM4内ではサブモジュ−ルm0,
m1による処理)と処理が進んで正常な結果を得る。こ
の場合、ステップS3で主処理プログラムが終了したか
がチェックされる。 (7.2)モジュ−ルM4内でサブモジュ−ルm1によ
る処理が失敗した場合にはステップS2で直ちに異常と
はならず次の処理が行われる。 (7.2.1)サブモジュ−ルm0がm1以外のサブモ
ジュ−ルm2,m3,m4をひとつずつ代替に用い、再
度処理を試みる。どれかが成功すれば、実行は正常な結
果を得て、終了する。 (7.3)サブモジュ−ルm2−m4による代替処理が
全て失敗した場合にはステップS2で異常と決定され、
ステップS4に進む。サブモジュ−ルm0はソフトウエ
ア全体の動作を観測している自己認識機構モジュールM
rに、主処理モジュールのM4が失敗したことを知らせ
る。
ロ−チャ−トを参照しながら説明する。 (7.1)最
初のステップS1では主処理プログラムが起動され、次
のステップS2では処理が正常であるか否かがチェック
される。通常の実行では、モジュールM1,M2,M
3,M4(モジュ−ルM4内ではサブモジュ−ルm0,
m1による処理)と処理が進んで正常な結果を得る。こ
の場合、ステップS3で主処理プログラムが終了したか
がチェックされる。 (7.2)モジュ−ルM4内でサブモジュ−ルm1によ
る処理が失敗した場合にはステップS2で直ちに異常と
はならず次の処理が行われる。 (7.2.1)サブモジュ−ルm0がm1以外のサブモ
ジュ−ルm2,m3,m4をひとつずつ代替に用い、再
度処理を試みる。どれかが成功すれば、実行は正常な結
果を得て、終了する。 (7.3)サブモジュ−ルm2−m4による代替処理が
全て失敗した場合にはステップS2で異常と決定され、
ステップS4に進む。サブモジュ−ルm0はソフトウエ
ア全体の動作を観測している自己認識機構モジュールM
rに、主処理モジュールのM4が失敗したことを知らせ
る。
【0030】(7.4)自己認識機構モジュ−ルMrで
は、観測デ−タファイルStに記録されている再開点r
4,r2の通過時の観測デ−タと診断ルールファイルR
rを参照して、故障状態と故障原因を割り出す。
は、観測デ−タファイルStに記録されている再開点r
4,r2の通過時の観測デ−タと診断ルールファイルR
rを参照して、故障状態と故障原因を割り出す。
【0031】この結果、モジュ−ルM2でサンプリング
したデータサイズが小さかったことが失敗の原因である
と診断されたものとする。この診断結果は自己表現機構
モジュ−ルMpにより、故障発生と診断結果としてユー
ザにメッセージ表示し、保存する。
したデータサイズが小さかったことが失敗の原因である
と診断されたものとする。この診断結果は自己表現機構
モジュ−ルMpにより、故障発生と診断結果としてユー
ザにメッセージ表示し、保存する。
【0032】(7.5)故障内容とその原因が特定され
ると次のステップS5に進み、自己意思決定機構モジュ
ールMdでは、故障影響構造ル−ルが持つモジュ−ルM
2の開始前に再開点r2があるというル−ルと対策ル−
ルにあるサンプルデ−タサイズが少ないなら2倍に増や
すというル−ルをもとに、モジュ−ルM2から再度実行
し直すことと、サンプルデータサイズの改造を決定し、
次のステップS6に進む。自己表現機構モジュ−ルMp
により、それらのこれから試みようとする対処をユーザ
にメッセージ表示し、記録に保存する。
ると次のステップS5に進み、自己意思決定機構モジュ
ールMdでは、故障影響構造ル−ルが持つモジュ−ルM
2の開始前に再開点r2があるというル−ルと対策ル−
ルにあるサンプルデ−タサイズが少ないなら2倍に増や
すというル−ルをもとに、モジュ−ルM2から再度実行
し直すことと、サンプルデータサイズの改造を決定し、
次のステップS6に進む。自己表現機構モジュ−ルMp
により、それらのこれから試みようとする対処をユーザ
にメッセージ表示し、記録に保存する。
【0033】(7.6)改造機構モジュールMcによ
り、サンプルデータサイズを書き換える。インタプリタ
形式ならステップS7でソースコードをセットし直し、
そうでなければステップS8で変数データの値をセット
し直す。 (7.7)書き換えたモジュ−ルM2からプログラムを
再開実行する。
り、サンプルデータサイズを書き換える。インタプリタ
形式ならステップS7でソースコードをセットし直し、
そうでなければステップS8で変数データの値をセット
し直す。 (7.7)書き換えたモジュ−ルM2からプログラムを
再開実行する。
【0034】以上説明したように上記実施例によれば、
仕事機構モジュ−ルM1−M4により主処理を実行する
ときに、モジュ−ルM4内にサブモジュ−ルm1−m4
を設け、m1による処理が失敗しても他のサブモジュ−
ルm2−m4で代替処理を実行し欠陥に対する正常運用
範囲を広くし、モジュ−ルM4による処理が失敗しても
モジュ−ルMr,Md,Mcによってプログラムの自己
改造を行うことができる。
仕事機構モジュ−ルM1−M4により主処理を実行する
ときに、モジュ−ルM4内にサブモジュ−ルm1−m4
を設け、m1による処理が失敗しても他のサブモジュ−
ルm2−m4で代替処理を実行し欠陥に対する正常運用
範囲を広くし、モジュ−ルM4による処理が失敗しても
モジュ−ルMr,Md,Mcによってプログラムの自己
改造を行うことができる。
【0035】
【発明の効果】以上詳述したようにこの発明によれば以
下のような効果が得られる。 1.局所的な欠陥のリカバリだけでなく、大局的なリカ
バリも可能になる。 2.実行時の信頼性向上のための設計機構のひな型を与
えることができ、設計者にとっての高信頼化設計方法の
指針となる。
下のような効果が得られる。 1.局所的な欠陥のリカバリだけでなく、大局的なリカ
バリも可能になる。 2.実行時の信頼性向上のための設計機構のひな型を与
えることができ、設計者にとっての高信頼化設計方法の
指針となる。
【0036】3.開発時に完全に欠陥を無くす事は非常
に困難であり、多くの場合には欠陥は潜在しているが、
この欠陥の影響を低減させることができるので、ある程
度補うことができる。
に困難であり、多くの場合には欠陥は潜在しているが、
この欠陥の影響を低減させることができるので、ある程
度補うことができる。
【0037】4.実際の運用に入ってからの実際の使用
状況により、開発時には発見できなかった欠陥が顕在化
した故障現象に対して、これを抑制し、信頼性をある程
度の水準に保って、あるいは徐々に低下する形態におし
とどめることができる。
状況により、開発時には発見できなかった欠陥が顕在化
した故障現象に対して、これを抑制し、信頼性をある程
度の水準に保って、あるいは徐々に低下する形態におし
とどめることができる。
【0038】5.実際に使してみるまで予測できなかっ
た状況や事象に対しても、急激な故障発生を抑制し、信
頼性をある程度の水準に保って、あるいは徐々に低下す
る形態におしとどめることができる。
た状況や事象に対しても、急激な故障発生を抑制し、信
頼性をある程度の水準に保って、あるいは徐々に低下す
る形態におしとどめることができる。
【0039】6.軽微な保守作業を不要にする。また大
きな保守作業や試行してから修正改良の要求が顧客から
出てきた場合にも、運用中の実行動作記録を分析するこ
とにより、修正改良の方法についての知識を得ることが
できる。
きな保守作業や試行してから修正改良の要求が顧客から
出てきた場合にも、運用中の実行動作記録を分析するこ
とにより、修正改良の方法についての知識を得ることが
できる。
【図1】この発明のソフトウエアの機能を示すブロック
図。
図。
【図2】この発明の基本構造を示すブロック図。
【図3】この発明の一実施例のプログラム構造を示す
図。
図。
【図4】上記実施例の動作を説明するフロ−チャ−ト。
11…主処理プログラム実行、制御手段、12…動作状
態検出手段、13…対策決定手段、14…表示手段、1
5…プログラム改造手段、21…ソフトウエア保持手
段、22…デ−タベ−ス、23…実行手段、M1−M4
…仕事機構モジュ−ル、Md…自己意思決定機構モジュ
−ル、Mc…改造機構モジュ−ル、Mr…自己認識モジ
ュ−ル、Mp…自己表現モジュ−ル。
態検出手段、13…対策決定手段、14…表示手段、1
5…プログラム改造手段、21…ソフトウエア保持手
段、22…デ−タベ−ス、23…実行手段、M1−M4
…仕事機構モジュ−ル、Md…自己意思決定機構モジュ
−ル、Mc…改造機構モジュ−ル、Mr…自己認識モジ
ュ−ル、Mp…自己表現モジュ−ル。
Claims (2)
- 【請求項1】 ソフトウェアが自己の内部に自己を高
信頼化するための下記のステップを内蔵しているソフト
ウエア自己高信頼化方法であって、 ソフトウェアの動作実行において、ソフトウェア自身
が、主要な処理を行うソフトウェア、プログラム部分の
動作を観測する自己観測ステップと、 ソフトウェア自身が、異常・例外・特異状態であるよう
な故障状態か否かを検出し、また故障状態であれば程度
や種別を調べて、故障の原因や続いて起こる現象を推測
し求める自己診断ステップと、 ソフトウェア自身が、その推測された原因や後続現象に
対する対応策を探索して選択決定する意思決定ステップ
と、 ソフトウェア自身が、選択決定した対応策にもとづいて
動作を変更し、制御する自己制御ステップと、 より大きな動作変更が必要なときには、選択決定した対
応策にもとづいてソフトウェアが自己を改造する自己改
造ステップとを具備し、 これらによりソフトウェアが自己の信頼性をソフトウェ
ア自身で向上させることを特徴とする、ソフトウエア自
己高信頼化方法。 - 【請求項2】 自己改造機能を持ったソフトウエア
を実行する装置であって、前記ソフトウエアは、情報処
理を行う主処理部と、主処理部の動作に関連するプログ
ラム部と、前記主処理部およびプログラム部の実行時の
欠陥を検出する検出部と、検出された欠陥に対する対応
策を決定する決定部と、決定された対応策に従って前記
ソフトウエアを改造する改造部とを含み、 前記ソフトウエアを保持する手段と、 前記ソフトウエアの内容を実行する手段と、を備えたこ
とを特徴とする、ソフトウエア自己高信頼化装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4330255A JPH06175845A (ja) | 1992-12-10 | 1992-12-10 | ソフトウェア自己高信頼化方法およびその装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4330255A JPH06175845A (ja) | 1992-12-10 | 1992-12-10 | ソフトウェア自己高信頼化方法およびその装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH06175845A true JPH06175845A (ja) | 1994-06-24 |
Family
ID=18230598
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4330255A Pending JPH06175845A (ja) | 1992-12-10 | 1992-12-10 | ソフトウェア自己高信頼化方法およびその装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH06175845A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013506895A (ja) * | 2009-10-05 | 2013-02-28 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ランタイム挙動に基づくアプリケーションの自動修正 |
US9280406B2 (en) | 2009-10-05 | 2016-03-08 | International Business Machines Corporation | Automatic correction of application based on runtime behavior |
-
1992
- 1992-12-10 JP JP4330255A patent/JPH06175845A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013506895A (ja) * | 2009-10-05 | 2013-02-28 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ランタイム挙動に基づくアプリケーションの自動修正 |
US9280406B2 (en) | 2009-10-05 | 2016-03-08 | International Business Machines Corporation | Automatic correction of application based on runtime behavior |
US9886372B2 (en) | 2009-10-05 | 2018-02-06 | International Business Machines Corporation | Automatic correction of application based on runtime behavior |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0401816B1 (en) | Plant operation supporting method | |
JP2547069B2 (ja) | 故障診断方式 | |
US6275955B1 (en) | Diagnostic software for facilitating flowchart programming | |
US20220163246A1 (en) | Maintenance recommendation system | |
JPH06309585A (ja) | プレ警報装置 | |
JPH06175845A (ja) | ソフトウェア自己高信頼化方法およびその装置 | |
JPH09212385A (ja) | 並列プログラムデバッグ装置 | |
JP2010102454A (ja) | 情報処理装置、情報処理プログラム | |
JP2000358029A (ja) | 自動障害診断ネットワークシステム及びネットワークの自動障害診断方法 | |
JPH0577143A (ja) | 自動化ラインの故障診断装置 | |
JPH0744526A (ja) | 事例に基づく電子機器不良原因診断装置 | |
JP2001067122A (ja) | ラダープログラム診断方法及び設備診断装置 | |
JP6731366B2 (ja) | ソースコード検証システム | |
JPH10289124A (ja) | データフロー異常検査装置 | |
JPS62175060A (ja) | 電子交換機自動故障診断システム | |
JPS63240602A (ja) | シ−ケンスコントロ−ラの異常診断装置 | |
CN116894503A (zh) | 学习系统、不良预测系统、学习完毕模型、学习方法及不良预测方法 | |
JP2022183494A (ja) | 事象シナリオ予測システム、事象シナリオ予測方法及びプログラム | |
JPS62281781A (ja) | 故障情報モニタリング方法 | |
JPH04175834A (ja) | プログラム障害自動診断装置 | |
JPH01320506A (ja) | プラント監視装置 | |
JPH04102930A (ja) | 中央処理装置 | |
JPH0535990A (ja) | プラントにおける警報処理支援装置 | |
JP2000066976A (ja) | ネットワーク監視システム | |
JPH03218536A (ja) | データ処理装置の診断方式 |