JP6290147B2 - 制御機器プログラムコードを作成するコンピュータ実装方法および関連するメッセージ管理システム - Google Patents

制御機器プログラムコードを作成するコンピュータ実装方法および関連するメッセージ管理システム Download PDF

Info

Publication number
JP6290147B2
JP6290147B2 JP2015167468A JP2015167468A JP6290147B2 JP 6290147 B2 JP6290147 B2 JP 6290147B2 JP 2015167468 A JP2015167468 A JP 2015167468A JP 2015167468 A JP2015167468 A JP 2015167468A JP 6290147 B2 JP6290147 B2 JP 6290147B2
Authority
JP
Japan
Prior art keywords
message
message management
qualification
management environment
control device
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.)
Active
Application number
JP2015167468A
Other languages
English (en)
Other versions
JP2016048554A (ja
Inventor
マイア ミヒャエル
マイア ミヒャエル
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.)
Dspace Digital Signal Processing and Control Engineering GmbH
Original Assignee
Dspace Digital Signal Processing and Control Engineering GmbH
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 Dspace Digital Signal Processing and Control Engineering GmbH filed Critical Dspace Digital Signal Processing and Control Engineering GmbH
Publication of JP2016048554A publication Critical patent/JP2016048554A/ja
Application granted granted Critical
Publication of JP6290147B2 publication Critical patent/JP6290147B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Description

本発明は、制御機器プログラムコード又は制御機器プログラムコードの作成の際の中間表現が、少なくとも1つの第1のデータオブジェクトから少なくとも1つの第1のソフトウエアツールを用いて作成され、前記第1のソフトウエアツールは、前記制御機器プログラムコード又は中間表現の作成の際に、作成過程のための少なくとも1つのメッセージを出力し、コンピュータで実現されるメッセージ管理環境は、ソフトウエアツールから出力されたメッセージを認識する、コンピュータ実装方法に関している。さらに本発明は、制御機器プログラムコード又は前記制御機器プログラムコードの作成の際の中間表現が、少なくとも1つの第1のデータオブジェクトから、少なくとも1つの第1のソフトウエアツールを用いて作成され、前記第1のソフトウエアツールは、前記制御機器プログラムコード又は前記中間表現の作成の際に、作成過程のための少なくとも1つのメッセージを出力する、制御機器プログラムコードの作成の際に発生するメッセージを管理する、メッセージ管理環境に関している。
制御機器プログラムコードの作成は、現在工業的に非常に複雑なプロセスであり、そこでは多くの場合、様々なソフトウエアツールが使用されている。制御機器とは、今日では通常は産業利用のために作られた堅牢な小型計算機であって、大抵はI/Oインターフェースも内蔵しているものと理解されたい。多くの場合リアルタイムオペレーティングシステムも備えている制御機器上では、プログラムが実行されており、このプログラムは、広義にはI/Oインターフェースを介して、制御すべき技術的なプロセスとの接続を形成し、所望の方法でこのプロセスに作用している。前述したようなタイプの制御機器は、例えば自動車分野で広く使用されている。これらの制御機器の開発と制御機器プログラムコードの開発は、大量生産による車両の開発において重要な役割を担っている。
データオブジェクトから制御機器プログラムを作成するソフトウエアツールの簡単な例としてコンパイラがあり、これは、高級言語で存在するプログラムコードをターゲット制御機器上で実行可能な制御機器プログラムコードに翻訳している、つまり例えばバイトコードの形態や機械で実行可能な機械語の形態に変換している。またデータオブジェクトとは、高級言語のソースコードを指す。
実際には、もはや制御機器プログラムコードの大半は、エラーが発生しやすい高級言語での手動プログラミングによって作成されてはおらず、むしろ制御機器プログラムコードの機能性の形式化は、より抽象的なレベルで、例えば所望の機能性のマッピングがブロック回路図の形態で可能にするグラフィカルモデリング環境を使用して行われている。このケースでは、データオブジェクトが1つ若しくは複数のグラフィカル制御モデルにあり、それが自動で高級言語で作成されたプログラムコードに変換されている。このコード作成は、複数の抽象化された中間段階を介して行うことができ、そこでは、基礎となるデータオブジェクトが、グラフィカル制御モデルの形態で様々な中間表現に移行される。そのように様々な中間段階を介して形成された、まだ実行が不可能な高級言語の制御機器プログラムコードは、最終的には適切なコンパイラによって、実行可能な制御機器プログラムコードに変換される。
以上の説明からも明らかなように、前述したような制御機器プログラムコードを作成する方法又制御機器プログラムコードの中間表現を作成する方法には多数のソフトウエアツールが関与している(グラフィカルモデリング環境、コードジェネレータ、コンパイラ、専用コードチェッカなど)。通常は、これらのすべてのソフトウエアツールは、作成過程に関する特徴をユーザーに指示するために、作成過程のためのメッセージを出力する。これは、例えばグラフィカルモデリング環境の場合には、機能ブロックの未接続ポートに対する示唆であってもよいし、不一致データタイプの示唆であってもよい。あるいは衝突するサンプリング時間などの指示であってもよい。コンパイラは、警告やエラー通知の形態のメッセージによって、宣言されていない変数、初期化されていない変数、ループ内に存在しない中断条件、ゼロによるディビジョンなどを示唆することが可能である。
ソフトウエアツールから出力されたメッセージは、基本的には作成過程と、作成過程の評価とに対して重要でかつ関連性を有している。このことは、ソフトウエア開発の様々な領域においていわゆる「ゼロ警告設定」とも称され、制御機器プログラムコードに至る作成過程において、何の警告も出力されない場合にのみ、制御機器プログラムコードが適正であると見なされる。類似した要求も所定の標準規格で成文化され、例えば自動車業界における制御機器プログラムコードの作成に係るMISRA規格等で成文化され、今後はその他の産業分野の安全性が重要な領域に対しても益々使用が拡がる。
複数のソフトウエアツールのうちの特定のメッセージが不可避であるか又はユーザーからのメッセージがアンクリティカルなものとして認識され、メッセージの発生が、制御機器プログラムコードの品質評価の際にネガティブでない重要性を帯びる場合もある。それにもかかわらずソフトウエアツールのメッセージは、引き続き後続する作成過程毎に検査されなければならず、このことは相当な作業コストに結びつく。
それ故本発明の課題は、制御機器プログラムコードを作成するコンピュータ実装方法において、作成過程中にソフトウエアツールから出力されるメッセージの評価がより効率的に実施できるように改善を施すことである。
前記課題は、前述のコンピュータ実装方法のもとで、メッセージ管理環境を使用して、前記メッセージ管理環境により、前記認識されたメッセージに対して、少なくとも“オープン”又は“承認”としての資格が認識され、“承認”としての資格が与えられたメッセージに対して、前記メッセージ管理環境により、資格条件が認識されるようにして解決される。
本発明による方法は、メッセージ管理環境の使用下で、作成過程中に出力されるメッセージがメッセージ管理環境で集中的に認識され、一元的に評価される利点を有している。この評価は、メッセージ管理環境に格納されると共に再び呼び出し可能である。そのため、所定のメッセージと、当該メッセージに対応する資格との間に堅固なリンクが形成される。ここでの資格“Qualifikation”との概念は、専門用語的な意味で次のように理解されたい。すなわち、資格を与えられたメッセージは、何らかの特定の点で決定的な特徴、詳細には次のような特徴を有している。すなわち認識されたメッセージは、「オープン“offen”」又は「承認“gutgezeichnet”」として認識され、対応する資格が付与されることで正当化される特徴である。
メッセージは、例えばそのメッセージに対する根拠/理由がまだ明らかにできなかったか、又はそのメッセージが最終的にアンクリティカルであることがまだ確立されていなかった場合には、そのメッセージには、“オープン”としての資格が与られるものであろう。それに対してそのメッセージの根拠/理由が認識可能であり、かつ、そのメッセージが全体的にアンクリティカルなものとして評価分類できる場合には、そのメッセージには“承認”としての資格が与えられるものであろう。
特に重要なことは、メッセージ管理環境によって、“承認”としての資格が与えられたメッセージに対して少なくとも資格条件が認識される点にある。通常は当該方法のユーザーは、そのような資格条件をメッセージ管理環境のインターフェースを介して形式的言語で入力する。この資格条件によって、自動化されて、メッセージが引き続き“承認”としてみなすことが可能か否かを繰り返し検査することが可能になる。それにより、制御機器プログラムコードの作成過程若しくは制御機器プログラムコードの中間表現の作成過程に対して、当該作成過程の評価を可能にさせる重要な情報が付加される。
前述した理由から本発明による方法のさらなる改善においては、認識されたメッセージは、前記メッセージ管理環境によって、当該メッセージが既に事前に認識され“承認”としての資格が与えられたものか否かが検査され、“承認”としての資格が既に存在している場合には、前記メッセージ管理環境によって、資格条件がさらに満たされているか否かが検査される。この方法の構成は、全く別なやり方として見ても有利である。なぜなら、メッセージがアンクリティカルなものとしてみなされている、つまり“承認”として認識されることを導く条件は、いずれにせよ条件が満たされているか否かについて繰り返し検査されるからである。つまり一度“承認”として認識されたメッセージは、メッセージ管理環境において、“承認”としての資格が与えられたメッセージとして確定されるのではなく、むしろ、“承認”に導く決定的な基準が依然として満たされているか否かが繰り返し検査されるのである。
例えばグラフィカルなモデリング環境が使用される場合のメッセージでは、グラフィックモデル内で使用される変数が初期化されておらず、つまり初期値を持たない。にもかかわらずこのメッセージは作成過程の開始時点で、変数に対して複数の初期値を有する1つのファイルが常にモデリング環境に読み込まれることが保証されている場合には、“承認”としての資格が与えられる。つまり資格条件は、複数の初期値を有するファイルの有無と、このファイルが問題となる変数に対する値の割り当てを本当に含んでいるか否かを検査することからなる。つまりこのコンピュータ実装方法によれば、“承認”されたメッセージが、当該“承認”に対する条件がもはや与えられないにも係わらず依然として“承認”されたものと見なされるような状況が回避される。
コンピュータ実装方法の利用に対して好適な態様によれば、前記メッセージ管理環境は、前記資格条件が満たされている場合、“承認”としての資格が与えられたメッセージを隠す(“unterdruecken”)。さらに代替的又は付加的に、前記資格条件が満たされていない場合には、前記メッセージは前記メッセージ管理環境によって、“資格が与えられていないもの(unqualified)”として出力される。この方法の好適な拡張は、引き続き“承認”としてみなすべきメッセージを当該方法の利用者に再度知らせない限りは有益である。なぜならそれに係るメッセージは引き続きアンクリティカルなものとして評価されるべきであり、それ故に新たな処理は何も必要ないからである。同じように、資格条件を満たしていないために“承認”としての資格を失っているメッセージを、新たな処理が必要なものとして明らかにすることも有益である。
本発明の別の態様によれば、既に認識され資格が与えられているメッセージの発生は、制御機器プログラムコードの新たな作成ステップのもとでは、メッセージ管理環境によって再び期待される。このことは、制御機器プログラムコード作成のための先行するステップにおいて、どのメッセージが発生して資格を与えられたかをメッセージ管理環境が認識することを意味する。制御機器プログラムコード作成の新たなステップにおいては、記録されたメッセージの発生が新たに認識されたメッセージと照らし合わされる。好適には、前記メッセージ管理環境は、期待され但し新たに認識されていないメッセージを示唆する。この手段により、作成過程が、期待特性も実際に示しているか否かが検査される。特に、前記メッセージ管理環境は、期待されるが但し認識されていないメッセージを積極的に示唆するようにしてもよい。
本発明のさらに別の態様によれば、前記資格条件は、前記第1のデータオブジェクトの少なくとも一部に依存して形式化され、特に形式化された前記資格条件は、前記データオブジェクトの一部にリンクされている。変数の初期値を含むファイルを伴う上記の例では、メッセージ管理環境内へこのファイルへのリンクが格納され、場合によっては当該ファイル内で位置出力を伴う。そのため前記メッセージ管理環境は、総じて、資格条件に基づくデータへのアクセス手段も有している。特に前記メッセージ管理環境は、もはや満たされていない資格条件の場合に、資格条件をもはや満たしていないデータオブジェクトの一部を示す。このことは当該方法の利用者に、制御機器プログラムコードの作成過程の検査を著しく容易にさせる。
本発明のさらに別の態様によれば、メッセージ管理環境に対して資格条件が検査不能な場合にも、資格条件は既に満たされていないものとみなされる。このことは、例えば前記メッセージ管理環境が、例えば持っていなければそのようなアクセスが不可能になるライセンスの欠落のために、リンクされた所定のデータにアクセスできないような場合にも生じ得る。このケースでは、厳密に言えば、資格要件が満たされていないのではなく、むしろ基本的な検証能力が欠如しているのである。
特に好適には、この方法では複数のソフトウエアツールが使用される。そのため前記制御機器プログラムコード又は前記中間表現の作成の際に、少なくとも第1のソフトウエアツールと第2のソフトウエアツールとによって、作成過程のための複数のメッセージが出力され、前記メッセージ管理環境によって、前記複数のソフトウエアツールから出力された複数のメッセージが認識され、もちろん前述したような方法で処理される。それにより、制御機器プログラムコード作成のための過程を、関与する全てのソフトウエアツールに対して統一的な作業環境において出力されたメッセージに関し検査することも可能である。
複数のソフトウエアツールを考慮することによって、予想外の付加的な利益が生まれる。すなわち、第1のソフトウエアツールのメッセージと第2のソフトウエアツールのメッセージとを相互に結合することが可能になる。例えば第2のソフトウエアツールのメッセージに対する資格条件を、第1のソフトウエアツールのメッセージに依存して形式化してもよいし、その逆をしてもよい。そのような依存性を、以下のような例を用いて詳細に説明する。まず、第1のソフトウエアツールは、グラフィカルな関数の記述を高級言語の制御機器プログラムコードに変換するコードジェネレータである。このコードジェネレータは、変数がモデル内で値によって初期化されていないことを認識し、この変数に、ANSI標準に従って値0を割り当てるが、しかしながらそれにもかかわらず、変数が(ユーザーによって)初期化されていなかったことが通知される。次に第2のソフトウエアツールは、静的なコードチェッカであり、このチェッカはコードジェネレータによって作成された高級言語の制御機器プログラムコードを、とりわけ0による除算によって検査する。ユーザー側での変数の初期化の欠如に関するコードジェネレータのメッセージは、資格条件、コードチェッカがこの変数に対する0による除算に関していかなるメッセージも出力しないことにもとづいて、“承認”としての資格を与える。
前記メッセージ管理環境に対して、複数のソフトウエアツールから出力された複数のメッセージを認識する様々な手段が存在する。多くの場合、関与する複数のソフトウエアツールからメッセージが格納されているログファイルが出力され、それによって前記メッセージ管理環境は、当該ログファイルの構文解析によってメッセージを認識し得る。代替的又は付加的に、前記メッセージ管理環境は、関与するソフトウエアツールによって使用可能となるアプリケーションのプログラミングのためのインターフェース(通常はアプリケーションプログラミングインターフェース(API)とも称する)を利用する。
冒頭に述べた前記課題はさらに前述したメッセージ管理環境のもとで、前記ソフトウエアツールから出力された前記メッセージが前記メッセージ管理環境によって認識可能であり、かつ、前記メッセージ管理環境によって、前記認識されたメッセージに対して“オープン”又は“承認”としての資格が認識可能であり、かつ、最初に“承認”としての資格が与えられたメッセージに対して、前記メッセージ管理環境により、資格条件が認識可能であるように、コンピュータで実現される前記メッセージ管理環境が構成され調整されていることによって解決される。その上さらに、ここで提案された前記メッセージ管理環境は、制御機器プログラムコードを作成する前述の方法を実装するか実装可能である。
具体的には、本発明による制御機器プログラムコードを作成するコンピュータ実装方法と、本発明によるメッセージ管理環境とを構成し得る手段並びに改善し得る手段は多数存在している。それについて一方では、請求項1及び12に従属している従属項が参照され、他方では、図面と関連した実施態様の以下の説明が参照される。
複数のメッセージがソフトウエアツールから出力され、メッセージ管理環境によって認識されている、制御機器プログラムコードを作成する方法を示した図 図1に類似する方法であるが、複数のデータオブジェクトと複数のソフトウエアツールを伴った方法を示した図 前後に実装されたソフトウエアツールを用いた制御機器プログラムコードのための作成過程を示した図 自動化された資格条件の検査を伴うメッセージ管理方法を示した図 リンクされたデータオブジェクトを伴う図4による方法を示した図 複数のデータオブジェクトに対するバージョン情報とラストチェンジ情報とを用いたメッセージ管理環境を示した図 メッセージ管理環境のためのグラフィカルなアプリケーションインターフェースを示した図
図1乃至図5には、制御機器プログラムコード2を作成するコンピュータ実装方法1がそれぞれ概略的に示されている。この制御機器プログラムコード2は、少なくとも1つの第1のデータオブジェクト3から第1のソフトウエアツール4を用いて作成される。図1の構成では、データオブジェクト3は、高級言語のプログラムコードであり、このプログラムコードは、コンパイラとして構成されたソフトウエアツール4によって、このケースで実施可能な制御機器プログラムコード2に翻訳される。
前記ソフトウエアツール4は、制御機器プログラムコード2の作成の際に、複数のメッセージM1,Mnを出力している。図示の実施例のケースでは、これらのメッセージは、コンパイラの警告とエラー通知である。ソフトウエアツール4から出力されたこれらのメッセージM1,Mnは、メッセージ管理環境5によって認識される。このメッセージ管理環境5による前記メッセージM1,Mnの認識は、図1による実施例においては前記ソフトウエアツール4によって提供されたアプリケーションプログラミングインターフェース(API)を介して行われる。
制御機器プログラムコード2を作成する当該の方法1は、メッセージ管理環境5によって、認識されたメッセージM1,Mnに対してそれぞれ資格q1,qnも認識される点で優れている。前記資格q1,qnは、少なくとも値“オープン”又は“承認”で占有されていてもよい。通常は、“承認”されたメッセージM1,Mnとは、制御機器プログラムコード2の資格に対してアンクリティカルと見なされることを理解されたい。それに対して“オープン”として資格が与えられたメッセージM1,Mnは、実際には未評価で資格を与えられていないものとして見なされる。
さらに、メッセージ管理環境5によって、“承認”としての資格が与えられたメッセージM1,Mnに対して、資格条件p1,pnが認識される。これらの資格条件p1,pnは形式言語であり、それによってコンピュータ実装方法により自動化されて検査可能となり、その際には該当するメッセージM1,Mnが“承認”とみなされるために満たしていなければならない条件が認識される。
図2及び図3には、制御機器プログラムコード2を作成する方法1の2つの拡張された変化例が示されており、ここで提案される方法1は、より複雑なワークフローを実施することが可能である。図2では、第1のデータオブジェクト3aと、同じくさらなる第2のデータオブジェクト3bとが存在している。これらの異なるデータオブジェクト3a,3bは、2つの異なるソフトウエアツール4a,4bによって使用される。図示の実施例では、これらのデータオブジェクト3a,3bは、高級言語のプログラムコードであり、このプログラムコードは、コンパイラとして構成されたソフトウエアツール4a,4bによって、一緒に実行すべく実施可能な制御機器プログラムコード2に翻訳される。第1のソフトウエアツール4aもさらなる第2のソフトウエアツール4bも、メッセージ管理環境5によって再び認識されるメッセージM1,Mn,Mvを生成する。これらのメッセージM1,Mn,Mvには、資格q1,qn,qvと、それらに対応付けられた資格条件p1,pn,pvとが付されている。
図3においても、2つのソフトウエアツール4a,4bが制御機器プログラムコード2を作成している。但しこのケースでは、前記ソフトウエアツール4a,4bは、相前後して接続されている。図示の実施例では、データオブジェクト3はグラフィック機能モジュールであり、これはコードジェネレータとして構成されたソフトウエアツール4aによって最初に高級言語の中間生成物に翻訳され(ここでは明示的には示されていない)、その後この中間表現は、コンパイラとして構成された第2のソフトウエアツール4bによって、最終的に制御機器プログラムコード2に翻訳される。コードジェネレータ4aもコンパイラ4bも、再びメッセージM1,Mn,Mvを出力し、これらのメッセージはメッセージ管理環境5によって、対応する資格q1,qn,qv及びそれぞれの資格条件p1,pn,pvと同じように認識される。
図4及び図5には、制御機器プログラムコード2を作成する当該方法1の特に好適な変形例が示されている。前記2つのフローチャートでは、記憶されたメッセージMnが、図4及び図5には明示的に示されていないメッセージ管理環境によって、当該メッセージMnは、以前に認識されていたか否かに関する検査がなされる(ステップ:Mnが存在するか?“Mn exist ?”)ことが識別できる。メッセージMnは、既に認識されていた場合には、さらに当該メッセージMnは、以前に“承認”としての資格も与えられていたか否かが検査される(ステップ:「qn(Mn)が承認されたか?“qn(Mn) approved?”」)。これもイエスである場合には、メッセージ管理環境によって対応する資格条件pnが依然として満たされているか否かが検査される(ステップ:「pn(Mn)が適正か?“pn(Mn) valid?”」)。メッセージMnの資格条件pnが依然として満たされ、かつ、それによって前記メッセージMnが依然として“承認”としての資格が与えられている場合には、前記メッセージMnは、メッセージ管理環境5によって隠される(ステップ:「Mnは表示されない」“Mn don't show”)。一方、前記メッセージMnの資格条件pnが満たされていない場合には、前記メッセージ管理環境は、当該メッセージMnにもはや資格が与えられていないこと、つまり再び資格が与えられなければならないことを示す。ここには示していない他の実施態様によれば、メッセージMnは、前記資格条件pnを満たしていない場合に、単に資格“オープン”を受け取るだけでもよい。
図5に示す方法の経過は、図4に示す方法の経過とは次の点でのみ異なっている。すなわちメッセージ管理環境が、資格条件pnの検査の際に(ステップ:「pn(Mn)が適正か?“pn(Mn) valid?”」)、データオブジェクト3にアクセスすることだけが異なっている。このことは、前記資格条件pnがデータオブジェクト3の少なくとも一部に依存して形式化されている場合に可能である、これは本願発明に該当している。
図6によるメッセージ管理環境5のための実施態様では、このメッセージ管理環境5がデータオブジェクト3a,3b,3cに関するバージョン情報vを有していることが示されている。前記データオブジェクト3a,3b,3cは、ここでは付加的にd1,d2,d3とも称する。例えばデータオブジェクトd1に関するバージョン情報は、v(d1)と称する。さらにメッセージ管理環境5は、接続された前記データオブジェクト3a,3b,3cの最終変更時点(Last-Change-Datum;lc)に関する情報も有している。例えば図中データオブジェクトd1の最終変更データlcは、lc(d1)と称する。図6によるメッセージ管理環境5では、資格条件pが、様々なデータオブジェクト3a,3b,3cのバージョン情報vと最終変更データlcに依存して形式化されている。また資格条件p1,pn,pvは、他の実施態様において、バージョン情報vだけに依存して形式化されてもよいし、最終変更データlcのみに依存して形式化されてもよい。
図6によるメッセージ管理環境5の実施例は、次の場合には、資格条件p1,pnを既に満たしていないものとみなす。すなわちデータオブジェクト3a,3b,3c若しくはデータオブジェクト3a,3b,3cの関連する部分(これらに対しては資格条件p1,pnにおいて依存性が生じている)が、資格条件p1,pnが確定された時点でのデータオブジェクト3a,3b,3cのバージョン情報vに対して変更された場合、又は、データオブジェクト3のバージョン情報v若しくは最終変更データlcが、メッセージ管理環境5内で認識されたバージョン情報v若しくはメッセージ管理環境5内で認識された最終変更データlcに対して変更された場合には、資格条件p1,pnを既に満たしていないものとみなす。資格条件p1,pnを満たしていないことに対するこれらの基準は、非常に不特定のものではあるが、しかしながら前記メッセージM1,Mn,Mvの検査は、もちろん承認された各メッセージM1,Mn,Mvの検査も含めて、制御機器プログラムコード2の作成過程において、基礎となるデータオブジェクトのバージョンジャンプ又は潜在的な変化が識別される場合には新たに行われる。
図7には、前記メッセージ管理環境5の表示面の可能な構成が示されており、この構成を用いて当該メッセージ管理環境5は操作され、制御機器プログラムコードを作成する方法が実施される。
ここでは実際のコード作成実行からのメッセージMが示されており、これらのメッセージMは、既に資格が与えられたメッセージM(“with Category”)と、資格が与えられていないメッセージ(“without Category”)とに項目分けされている。さらにここではこれらのメッセージMがそれらの種別に応じてフィルタリングされる可能性(Warning/Advice/Note im Feld“Filter by Category”)も存在する。図示の実施例では、個々に資格が与えられたメッセージM(“Existing Message with Category”)や識別子を用いて資格が与えられたメッセージ(“Category assigned by ID”)の個別表示の可能性も存在している。
さらに、既に資格が与えられ、期待されるがまだ出現していないメッセージ(“Expected, non-existing Messages with Category”)と、まだ資格が与えられていないが出現したメッセージM(“Existing Messages without Category”)との間の区別や対比の可能性も存在する。
前記表示面の下方部分には、前記メッセージMが上方のフィールドから例えばマウスクリックによって選択された場合に、それらの詳細(“Details”)が示される。そこには例えば資格(“Category”)、資格に対する根拠、あるいは資格に対する資格条件が処理可能である。またソフトウエアツールに対する詳細が観察されるようにしてもよい。例えば、起点ツール(“Tool”)、グループ、ソースオブジェクト(“optional”)、必要に応じてソースオブジェクトへのナビゲーション情報も備えたメッセージテキストなど(グラフィックモデルのブロック、変数データベース)。
前記2つの変形例「まだ資格が与えられていないが出現したメッセージM(“Existing Messages without Category”)」と「既に資格が与えられ、期待されるがまだ出現していないメッセージ(“Expected, non-existing Messages with Category”)」とに対しては、同じID若しくは同じソースオブジェクトの新たなメッセージでもって古いメッセージを識別する可能性も存在し得る(例えば名称変更のためなど、これはソースオブジェクトのパスの変更を引き起こす可能性がある)。
選択したメッセージに対しては、例えば最後の資格付与の表示、資格付与(ないし初期の資格付与)の変更の表示、オブジェクト単位の変更履歴の表示(変更されたソースオブジェクトの識別子を含む)が存在し得る。
前記資格(“Qualification”)は、特定のメッセージのために(“Apply to current”,<ID>+<Quellobjekt>)又は複数のメッセージのために(“Apply to all”,<ID>)処理を実施することが可能である。
1 コンピュータ実装方法
2 制御機器プログラムコード
3 データオブジェクト
4 ソフトウエアツール
5 メッセージ管理環境

Claims (13)

  1. 制御機器プログラムコード(2)を作成するコンピュータ実装方法(1)であって、
    前記制御機器プログラムコード(2)又は前記制御機器プログラムコード(2)の作成の際の中間表現が、少なくとも1つの第1のデータオブジェクト(3)から少なくとも1つの第1のソフトウエアツール(4)を用いて作成され、
    前記第1のソフトウエアツール(4)は、前記制御機器プログラムコード(2)又は前記中間表現の作成の際に、作成過程のための少なくとも1つのメッセージ(M1,Mn,Mv)を出力し、
    コンピュータで実現されるメッセージ管理環境(5)は、前記ソフトウエアツール(4)から出力された前記メッセージ(M1,Mn,Mv)を認識する、コンピュータ実装方法(1)において、
    前記メッセージ管理環境(5)により、前記認識されたメッセージ(M1,Mn,Mv)に対して少なくとも“オープン”又は“承認”としての資格(q1,qn,qv)が認識され、
    “承認”としての資格が与えられたメッセージ(M1,Mn,Mv)に対して、前記メッセージ管理環境(5)により、資格条件(p1,pn,pv)が認識されることを特徴とするコンピュータ実装方法(1)。
  2. 前記認識されたメッセージ(M1,Mn,Mv)は、前記メッセージ管理環境(5)によって、当該メッセージが既に事前に認識され“承認”としての資格が与えられたものか否かが検査され、“承認”としての資格(q1,qn,qv)が既に存在している場合には、前記メッセージ管理環境(5)によって、資格条件(p1,pn,pv)がまだ満たされているか否かが検査される、請求項1記載のコンピュータ実装方法(1)。
  3. 前記資格条件(p1,pn,pv)が満たされている場合、“承認”として資格が与えられたメッセージ(M1,Mn,Mv)は、前記メッセージ管理環境(5)によって隠され、及び/又は、前記資格条件(p1,pn,pv)が満たされていない場合、前記メッセージ(M1,Mn,Mv)は、前記メッセージ管理環境(5)によって“資格が与えられていない”ものとして出力される、請求項2記載のコンピュータ実装方法(1)。
  4. 既に認識され資格が与えられたメッセージ(M1,Mn,Mv)の発生は、前記制御機器プログラムコード(2)の新たな作成ステップのもとでは前記メッセージ管理環境(5)によって再び期待され、特に前記メッセージ管理環境(5)は、期待されるが但し新たに認識されていないメッセージ(M1,Mn,Mv)を示唆する、請求項1から3いずれか1項記載のコンピュータ実装方法(1)。
  5. 前記資格条件(p1,pn,pv)は、前記第1のデータオブジェクト(3)の少なくとも一部に依存して形式化され、特に形式化された前記資格条件(p1,pn,pv)は、前記データオブジェクトの一部にリンクされ、特に前記メッセージ管理環境(5)は、前記データオブジェクト(3)の一部を、前記資格条件(p1,pn,pv)がもはや満たされていない場合に示す、請求項1から4いずれか1項記載のコンピュータ実装方法(1)。
  6. 前記第1のデータオブジェクト(3)に対して、又は、前記第1のデータオブジェクト(3)の一部に対して、前記メッセージ管理環境(5)において、バージョン情報(v)及び/又は最終変更データ(lc)が認識され、1つの資格条件(p1,pn,pv)は前記バージョン情報(v)及び/又は前記最終変更データ(lc)に依存して、前記メッセージ管理環境(5)によって検査される、請求項1から5いずれか1項記載のコンピュータ実装方法(1)。
  7. 1つの資格条件(p1,pn,pv)は、
    前記データオブジェクト(3)が若しくは前記データオブジェクト(3)の少なくとも一部が、資格条件(p1,pn,pv)が決定された時点のデータオブジェクト(3)のバージョン情報(v)に対して変化している場合、
    又は、
    前記データオブジェクト(3)の若しくは前記データオブジェクト(3)の少なくとも一部のバージョン情報(v)若しくは最終変更データ(lc)が、前記メッセージ管理環境(5)内で認識されたバージョン情報(v)又は最終変更データ(lc)に対して変更されている場合にのみ、
    もはや既に条件を満たさないものとして前記メッセージ管理環境(5)によって評価される、請求項5又は6記載のコンピュータ実装方法(1)。
  8. 前記メッセージ管理環境(5)により、さらに前記資格条件(p1,pn,pv)に対して付加的に資格理由が認識され、前記資格理由は、前記メッセージ管理環境(5)によって特に、前記資格条件(p1,pn,pv)が前記メッセージ管理環境(5)によって満たされていないものとみなされた場合に示される、請求項1から7いずれか1項記載のコンピュータ実装方法(1)。
  9. 前記制御機器プログラムコード(2)又は前記中間表現の作成の際に、少なくとも第1のソフトウエアツール(4a)と第2のソフトウエアツール(4b)とによって、作成過程のための複数のメッセージが出力され、前記メッセージ管理環境(5)によって、前記複数のソフトウエアツール(4a,4b)から出力された複数のメッセージ(M1,Mn,Mv)が認識される、請求項1から8いずれか1項記載のコンピュータ実装方法(1)。
  10. 前記メッセージ管理環境(5)は、前記1つのソフトウエアツール(4)若しくは複数のソフトウエアツール(4a,4b)から出力されたメッセージを、ログファイルの構文解析によって、及び/又は、前記ソフトウエアツール(4,4a,4b)のアプリケーションプログラムインターフェースによって認識する、請求項1から9いずれか1項記載のコンピュータ実装方法(1)。
  11. 前記ソフトウエアツール(4)から出力されたメッセージは、エラー通知であり、該エラー通知は、前記制御機器プログラムコード(2)が制御機器プロセッサ上で実行可能か否かに関している、請求項1から10いずれか1項記載のコンピュータ実装方法(1)。
  12. 制御機器プログラムコード(2)の作成の際に発生するメッセージ(M1,Mn,Mv)を管理するためのメッセージ管理システム(5)であって、
    前記制御機器プログラムコード(2)又は前記制御機器プログラムコード(2)の作成の際の中間表現が、少なくとも1つの第1のデータオブジェクト(3)から少なくとも1つの第1のソフトウエアツール(4)を用いて作成され、
    前記第1のソフトウエアツール(4)は、前記制御機器プログラムコード(2)又は前記中間表現の作成の際に、作成過程のための少なくとも1つのメッセージ(M1,Mn,Mv)を出力する、メッセージ管理システム(5)において、
    前記ソフトウエアツール(4)から出力された前記メッセージ(M1,Mn,Mv)が前記メッセージ管理システム(5)によって認識可能であり、かつ、
    前記メッセージ管理システム(5)によって、前記認識されたメッセージ(M1,Mn,Mv)に対して“オープン”又は“承認”としての資格(q1,qn,qv)が認識可能であり、かつ、
    最初に“承認”としての資格が与えられたメッセージ(M1,Mn,Mv)に対して、前記メッセージ管理システム(5)により、資格条件(p1,pn,pv)が認識可能であるように、コンピュータで実現される前記メッセージ管理システム(5)が構成され調整されていることを特徴とするメッセージ管理システム(5)。
  13. 請求項2から11のいずれか1項記載のコンピュータ実装方法を実現するためのメッセージ管理システム(5)
JP2015167468A 2014-08-27 2015-08-27 制御機器プログラムコードを作成するコンピュータ実装方法および関連するメッセージ管理システム Active JP6290147B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102014112256.9 2014-08-27
DE102014112256.9A DE102014112256A1 (de) 2014-08-27 2014-08-27 Computerimplementiertes Verfahren zur Erzeugung eines Steuergeräteprogrammcodes und diesbezügliche Meldungsverwaltungsumgebung

Publications (2)

Publication Number Publication Date
JP2016048554A JP2016048554A (ja) 2016-04-07
JP6290147B2 true JP6290147B2 (ja) 2018-03-07

Family

ID=53496421

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015167468A Active JP6290147B2 (ja) 2014-08-27 2015-08-27 制御機器プログラムコードを作成するコンピュータ実装方法および関連するメッセージ管理システム

Country Status (5)

Country Link
US (1) US9600245B2 (ja)
EP (1) EP2990941B1 (ja)
JP (1) JP6290147B2 (ja)
CN (1) CN105389164B (ja)
DE (1) DE102014112256A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014112256A1 (de) * 2014-08-27 2016-03-03 Dspace Digital Signal Processing And Control Engineering Gmbh Computerimplementiertes Verfahren zur Erzeugung eines Steuergeräteprogrammcodes und diesbezügliche Meldungsverwaltungsumgebung
US11503005B2 (en) * 2018-11-09 2022-11-15 Ge Aviation Systems Limited Tool verification system and method of verifying an unqualified component

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3771603D1 (de) * 1986-07-23 1991-08-29 Siemens Ag Modular strukturiertes isdn-kommunikationssystem mit bildung und anzeige von fehlertexten.
JPH04160640A (ja) * 1990-10-25 1992-06-03 Nec Corp エラーメッセージ出力システム
JPH05100911A (ja) * 1991-10-04 1993-04-23 Kobe Nippon Denki Software Kk 利用者定義型エラーメツセージ出力方法
US5673390A (en) * 1992-09-03 1997-09-30 International Business Machines Corporation Method and system for displaying error messages
US5854924A (en) * 1996-08-08 1998-12-29 Globetrotter Software, Inc. Static debugging tool and method
US6000046A (en) * 1997-01-09 1999-12-07 Hewlett-Packard Company Common error handling system
US5909215A (en) * 1997-02-10 1999-06-01 International Business Machines Corporation Method and apparatus to intercept and process error messages in a data processing system
US7203930B1 (en) * 2001-12-31 2007-04-10 Bellsouth Intellectual Property Corp. Graphical interface system monitor providing error notification message with modifiable indication of severity
US6961878B2 (en) * 2002-02-28 2005-11-01 Bellsouth Intellectual Property Corporation Software application error severity notification to users
JP2004206501A (ja) * 2002-12-26 2004-07-22 Hitachi Ltd エラーメッセージ出力制御システムと方法およびコンパイラ
US20070038984A1 (en) * 2005-08-12 2007-02-15 Gschwind Michael K Methods for generating code for an architecture encoding an extended register specification
CN101421976A (zh) * 2006-02-27 2009-04-29 沃纳格控股公司 提供被动状态消息收发的方法和系统
KR101199703B1 (ko) * 2010-04-12 2012-11-08 한국전자통신연구원 디스커버리 메타데이터 접근을 위한 방법 및 장치
DE102014112256A1 (de) * 2014-08-27 2016-03-03 Dspace Digital Signal Processing And Control Engineering Gmbh Computerimplementiertes Verfahren zur Erzeugung eines Steuergeräteprogrammcodes und diesbezügliche Meldungsverwaltungsumgebung

Also Published As

Publication number Publication date
US9600245B2 (en) 2017-03-21
DE102014112256A1 (de) 2016-03-03
EP2990941A1 (de) 2016-03-02
CN105389164A (zh) 2016-03-09
EP2990941B1 (de) 2019-04-17
JP2016048554A (ja) 2016-04-07
US20160062744A1 (en) 2016-03-03
CN105389164B (zh) 2020-06-05

Similar Documents

Publication Publication Date Title
CN106528100B (zh) 用于安全关键软件开发的基于模型的技术和过程的系统和方法
Panichella et al. Would static analysis tools help developers with code reviews?
Biggs et al. A profile and tool for modelling safety information with design information in SysML
CN112558555B (zh) 维护和调试
Panesar-Walawege et al. Characterizing the chain of evidence for software safety cases: A conceptual model based on the IEC 61508 standard
US10185612B2 (en) Analyzing the availability of a system
US9483342B2 (en) Supporting failure mode and effects analysis
Bendell et al. Software Reliability: State of the Art Report 14: 2
JP6290147B2 (ja) 制御機器プログラムコードを作成するコンピュータ実装方法および関連するメッセージ管理システム
KR102418796B1 (ko) 고장형태 영향분석 기반 고장 분석의 고장 모드 추천 시스템
Prähofer et al. Feature-oriented development in industrial automation software ecosystems: Development scenarios and tool support
KR102268053B1 (ko) 클라우드 서버 및 로보틱 프로세스 자동화 기술 기반의 차량용 지능형 안전분석 시스템
Carbone et al. Scrum for safety: Agile development in safety-critical software systems
US10585779B2 (en) Systems and methods of requirements chaining and applications thereof
JP2009099111A (ja) 規則検査プログラム、規則検査方法および規則検査装置
Dubey Towards adopting ODC in automation application development projects
US10394688B2 (en) Method for detecting computer module testability problems
Höfig et al. MetaFMEA-A framework for reusable FMEAs
EP2960837A1 (en) System and method for supporting global effect analysis
Antonino et al. Automatic detection of incomplete and inconsistent safety requirements
JP2016126700A (ja) プログラム検証装置、プログラム検証方法及びプログラム検証プログラム
Vepsäläinen et al. Towards model-based development of safety-related control applications
Yurkevich et al. Problems with regulating the functional reliability of means of measurement and control in industrial processes
KR20170120038A (ko) 복수의 보험상품 시스템에 대하여 그 시스템들의 정확성을 순차적으로 검증하는 방법
Mochio et al. Vdm++ as a basis of scalable agile formal software development

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171023

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171129

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180207

R150 Certificate of patent or registration of utility model

Ref document number: 6290147

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250