JP5099839B2 - バグレスソフトウェアシステム設計支援装置、方法及びプログラム - Google Patents

バグレスソフトウェアシステム設計支援装置、方法及びプログラム Download PDF

Info

Publication number
JP5099839B2
JP5099839B2 JP2008033143A JP2008033143A JP5099839B2 JP 5099839 B2 JP5099839 B2 JP 5099839B2 JP 2008033143 A JP2008033143 A JP 2008033143A JP 2008033143 A JP2008033143 A JP 2008033143A JP 5099839 B2 JP5099839 B2 JP 5099839B2
Authority
JP
Japan
Prior art keywords
database
bugless
software system
design support
data
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.)
Expired - Fee Related
Application number
JP2008033143A
Other languages
English (en)
Other versions
JP2009193313A (ja
Inventor
三十四 日野
Original Assignee
三十四 日野
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 三十四 日野 filed Critical 三十四 日野
Priority to JP2008033143A priority Critical patent/JP5099839B2/ja
Publication of JP2009193313A publication Critical patent/JP2009193313A/ja
Application granted granted Critical
Publication of JP5099839B2 publication Critical patent/JP5099839B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Description

本発明は、ソフトウェアシステムの設計支援に関し、特に、論理矛盾のないバグレスソフトウェアシステムの設計支援に関する。
今日、携帯電話機などのエンドユーザ向け電子機器や家庭電化製品からATMや交通システムなどの大規模システムに至るまで実に多くのものがコンピュータプログラム、すなわち、ソフトウェアで動作している。そして、これら製品やシステムにおいてソフトウェアで動作する部分の比率はますます高まりつつある。すなわち、これら製品やシステムはソフトウェアを核とするソフトウェアシステムであるといっても過言ではない。
ソフトウェアシステムにおける製品組み込みソフトウェアや業務ソフトウェアにはバグがないことが望ましい。しかし、ソフトウェアのバグをすべて除去することは極めて困難であるため、現実のソフトウェアにはある程度のバグが潜んでいる。実際、ソフトウェアのバグが原因で、ある日突然ATMや交通システムが停止したり、電子機器が正常に機能しなくなり製品回収を余儀なくされるということはよく耳にするところである。
完成したソフトウェアのデバッグ作業では潜在的なバグをすべて除去することができないため、ソフトウェア開発段階でプログラムにバグが入り込まないようにしようとする向きがある。すなわち、ソフトウェア開発の上流工程において論理検証をして論理矛盾や論理不整合をなくすことで、結果としてバグのないバグレスソフトウェアを完成させることができる。従来、リアルタイム制御システム用の組み込みプログラム開発に関して、システムの状態、システムの内部又は外部で発生する事象、及びある事象が発生したときにシステムが実行すべき処理又は遷移すべき状態の関係を状態遷移表で表し、それに基づいてシステム処理時間を算出することで、現実に発生する多様な事象を考慮したプログラム開発を可能にしている(例えば、特許文献1参照)。
特開2000−20347号公報
一般に、ソフトウェアシステムは、コンピュータプログラム、データテーブル、データ伝達回路、及び入出力デバイスの4つから構成される。図4は、一般的なソフトウェアシステムの構成を示す。メモリ101には、CPU102によって適宜読み出されて実行されるプログラム、及びCPU102で実行されるプログラムによって読み書きされるデータの集まりであるデータテーブルが格納されている。入力データ伝達回路103は、入力デバイス104からの電気信号をソフトウェア処理可能なデータに変換してデータテーブルに書き込む。入力デバイス104は、センサや操作ボタンなどである。出力データ伝達回路105は、データテーブルから読み出したデータを電気信号に変換して出力デバイス106に供給する。出力デバイス106は、アクチュエータや表示装置などである。入力データ伝達回路104及び出力データ伝達回路105はデータ伝達回路に分類される。入力デバイス103及び出力デバイス105は入出力デバイスに分類される。
従来のソフトウェアシステム開発では、プログラム及びデータテーブルに係るソフトウェアの設計と、データ伝達回路及び入出力デバイスに係るハードウェアの設計とを分けて行うことが多い。このため、ソフトウェア及びハードウェアはそれぞれ論理矛盾なく実現できたとしても、ソフトウェアとハードウェアとの連携などに論理矛盾や論理不整合があると、それが原因でやはりソフトウェアシステムが不正動作するおそれがある。すなわち、従来のソフトウェアシステム開発手法では、上流工程において、ソフトウェアとハードウェアとの連携部分の論理矛盾や論理不整合といった広義のバグの混入を有効に阻止することができない。システムソフトウェアの開発は、上記4つの構成要素間で、より具体的には上記4つの構成要素のそれぞれを構成するさらに詳細な要素であるシステム要素間でデータが論理矛盾なく授受されることを検証しながら進めることが望ましい。
上記問題に鑑み、本発明は、ソフトウェアシステム全体に亘ってシステム要素間のデータ授受関係を一望できるようにし、これらデータ授受関係を論理検証しながらソフトウェアシステムの設計ができるようにすることを課題とする。さらに、各種製品のモデルチェンジが頻繁に行われる昨今の状況に鑑み、本発明は、一度開発したソフトウェアシステムを新モデル開発や別のビジネス分野への応用に流用できるようにすることを課題とする。
上記課題を解決するために本発明では次のような手段を講じた。まず、CPUで実行されるプログラム及びCPUとの間でデータのやり取りをする入出力デバイス並びにCPUと入出力デバイスとの間に介在するデータテーブル及びデータ伝達回路からなるソフトウェアシステムを論理矛盾なく設計することを支援するバグレスソフトウェアシステム設計支援装置又は方法として、データベースに接続して、プログラム、データテーブル、データ伝達回路及び入出力デバイスのそれぞれを構成するシステム要素の登録、更新及び削除を行うシステム要素編集部又はそれに相当するステップと、データベースに登録されているシステム要素を行及び列見出しとして同順に並べて構成され、かつ、当該行及び列見出しによって特定される二つのシステム要素間のデータ授受関係の有無を表す行列要素を有する正方マトリックスを表示するマトリックス表示部又はそれに相当するステップと、表示された正方マトリックスの行列要素に対する表示付与及び削除に応じて、当該行列要素に対応する二つのシステム要素間のデータ授受関係の有無をデータベースに登録するデータ授受関係編集部又はそれに相当するステップと、データベースに登録されているシステム要素間のデータ授受関係を辿ってソフトウェアシステムの論理整合性を検証し、論理不整合を検出したとき、当該論理不整合に係る情報を出力する論理検証部又はそれに相当するステップとを備えたものとする。
具体的には、ソフトウェアシステムの論理整合性の検証は、プログラムを構成するシステム要素と入出力デバイスを構成するシステム要素との間で直接に又はデータテーブル及びデータ伝達回路のそれぞれを構成するシステム要素の少なくとも一つを経由して間接にデータが授受されるか否か、及びデータベースに登録されているシステム要素間でデータ授受がループしているか否かの少なくとも一つについての検証である。
好ましくは、論理検証部は、データベースに登録されているシステム要素のうちいずれのシステム要素にもデータを渡さないものを検出するものとする。ここで、マトリックス表示部は、検出されたシステム要素を正方マトリックスから削除するものとする。あるいは、データ授受関係編集部は、検出されたシステム要素をデータベースから削除するものとする。
上記バグレスソフトウェアシステム設計支援装置又は方法は、データベースに登録されているデータ伝達回路を構成するシステム要素間のデータ授受関係を参照して、データ伝達回路のブロック図を作成するブロック図作成部又はそれに相当するステップを備えていることが好ましい。
また、好ましくは、データベースにはシステム要素のそれぞれについて別のソフトウェアシステムへの流用可能性を示す情報が登録されており、システム要素編集部は、新たなソフトウェアシステムの設計に当たって、データベースに登録されている流用可能性を示す情報を参照して、データベースに登録されているシステム要素の中から当該新たなソフトウェアシステムに流用可能なものを抽出するものとする。
本発明によると、ソフトウェアシステムを構成するプログラム、データテーブル、データ伝達回路及び入出力デバイスのそれぞれを構成するシステム要素間のデータ授受関係がマトリックス形式で一望でき、これらデータ授受関係を論理検証しながらソフトウェアシステムの設計をすることができる。したがって、ソフトウェアシステム設計の上流工程において広義のバグを排除してバグレスソフトウェアシステムを実現することができる。さらに、製品のモデルチェンジや別のビジネス分野への応用に流用可能なソフトウェアシステムを設計することができる。
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。図1は、一実施形態に係るバグレスソフトウェアシステム設計支援装置の構成を示す。本装置は、システム要素編集部10、マトリックス表示部20、データ授受関係編集部30、論理検証部40及びブロック図作成部50を備えており、ソフトウェアシステムを論理矛盾なく設計することを支援する。本装置による設計支援対象のソフトウェアシステムは、プログラム、データテーブル、データ伝達回路、及び入出力デバイスの4つから構成される。一般的なソフトウェアシステムの構成は図4に示したとおりである。なお、本装置は、専用のハードウェアとして実施可能であるほか、汎用のコンピュータにコンピュータプログラムを読み込ませてコンピュータを上記各構成手段として機能させることでも実施可能である。
図2は、ソフトウェアシステム「○○ソフトウェアシステム」を設計するときの編集画面を示す。ユーザは、編集画面左側において、プログラム、データテーブル、入出力デバイス及びデータ伝達回路のそれぞれを構成するシステム要素を新規入力し、更新し、あるいは削除する。システム要素編集部10は、このユーザ操作に応じて、データベース100に接続してシステム要素の登録、更新及び削除を行う。このとき、新規登録されるシステム要素についてはF1、D1などの識別記号が自動付与される。
プログラムを構成するシステム要素は、構造化プログラミング手法あるいはCASEツールなどを用いたUMLモデリングによって階層化して登録してもよい。データ伝達回路を構成するシステム要素もまた階層化して登録することができる。一方、データテーブルを構成するシステム要素は、データの正規化によって互いに重複しないような最小の構造にして登録する。データ重複はバグの要因となるため、設計段階で解消しておくことが好ましい。
マトリックス表示部20は、データベース100に登録されているシステム要素間のデータ授受関係をマトリックス形式で表示する。具体的には、マトリックス表示部20は、データベース100に登録されているシステム要素を行及び列見出しとして同順に並べて構成され、かつ、当該行及び列見出しによって特定される二つのシステム要素間のデータ授受関係の有無を表す行列要素を有する正方マトリックスを表示する。正方マトリックスにおいて任意の行列要素に「X」などの表示があれば、その行列要素の列見出しのシステム要素からその行列要素の行見出しのシステム要素にデータが流れることを意味する。なお、「X」の代わりに行列要素におけるデータの流れの意味を覚え書きとして記述してもよい。
システム要素が自分自身にデータを渡す、あるいは自分からデータを受けることは考えられないため、正方マトリックスにおいて左上から右下への対角線には斜線を引くなどして、当該対角線上の行列要素は編集できないようにしておくことが好ましい。また、データテーブルを構成するシステム要素間でのデータ授受も考えられないため、これら行列要素もまた編集できないようにしておいてもよい。その他のシステム要素間ではデータ授受があり得るため、その他の行列要素は編集可能にしておく。
なお、システム要素編集部10によってシステム要素の登録、更新及び削除が行われた場合、マトリックス表示部20はそれに連動して正方マトリックスを構成し直してもよい。また、正方マトリックスが大きすぎて画面に表示しきれない場合、マトリックス表示部20は正方マトリックスを分割して表示してもよい。
ユーザは、編集画面中の正方マトリックスにおいて「X」などの表示を付与し、あるいは付与されている表示を削除する。データ授受関係編集部30は、このユーザ操作に応じて、表示の付与及び削除に係る行列要素で特定される二つのシステム要素間のデータ授受関係の有無をデータベース100に登録する。正方マトリックス上での編集作業がし易いように、ポイントされた行及び列を色づけして表示してもよい。
論理検証部40は、データベース100に登録されているシステム要素間のデータ授受関係を辿って設計対象のソフトウェアシステムの論理整合性を検証し、論理不整合を検出したとき、当該論理不整合に係る情報を出力する。例えば、論理検証部40は、プログラムを構成するシステム要素と入出力デバイスを構成するシステム要素との間で直接に又はデータテーブル及びデータ伝達回路のそれぞれを構成するシステム要素の少なくとも一つを経由して間接にデータが授受されるか否かを検証する。また、例えば、論理検証部40は、データベース100に登録されているシステム要素間でデータ授受がループしているか否かを検証する。そして、データの流れが途切れる箇所やループする箇所を検出すると、論理検証部40は、アラームを表示して当該エラーの内容を表示する。
また、論理検証部40は、データベース100に登録されているシステム要素のうちいずれのシステム要素にもデータを渡さないものを検出してもよい。そのようなシステム要素は不用であるばかりかバグの原因となるため、マトリックス表示部20によって、そのようなシステム要素を正方マトリックスから削除することが好ましい。あるいは、データ授受関係編集部30によって、そのようなシステム要素をデータベース100から削除することが好ましい。
ブロック図作成部50は、データベース100に登録されているデータ伝達回路を構成するシステム要素間のデータ授受関係を参照して、データ伝達回路のブロック図を作成する。図3(a)(b)は、データ伝達回路のブロック図の作成例を示す。このように、マトリックス形式で表されたデータ伝達回路を構成するシステム要素間のデータ授受関係は、データ伝達回路のブロック図として自動的に変換することができる。なお、ブロック図作成部50は本装置における任意の構成要素であり、省略可能である。
図2に戻り、ユーザの便宜のため、編集画面に入力データ欄及び出力データ欄を設けるとよい。入力データ欄の内容は、正方マトリックスの行列要素に付与された表示が単なる「X」などの場合には、行見出しのシステム要素ごとにデータ出力元のシステム要素の識別子を列挙したものである。一方、行列要素にデータの流れの意味が覚え書きとして記述されている場合には、入力データ欄の内容はその覚え書きを列挙したものである。当該列挙はデータベース100を参照して自動的に行うことができる。一方、出力データ欄の内容は、行見出しのシステム要素ごとにユーザが定義する。これは後述のコーディングの際に必要となるものである。
システム要素の登録及びデータ授受関係の登録が終わり、論理検証部40による論理検証に合格すると、当該ソフトウェアシステムには広義のバグが存在しなくなっている。したがって、プログラムのコーディング作業はこの段階で行う。具体的には、コーディング作業は、プログラムを構成するシステム要素ごとに、入出力されるデータを考慮して編集画面のコーディング欄に当該システム要素に対応するコードを記入することで行う。CASEツールを使用して自然言語に近い形で(例えば、「〜を〜する」いったように「名詞+動詞」の形式で)プログラムを構成するシステム要素が特定されていれば、自動コーディングが可能である。なお、コーディング作業はシミュレータなどで動作確認をしつつ進めるのが好ましい。
一度開発したソフトウェアシステムは、製品のモデルチェンジや別のビジネス分野への応用に流用できることが好ましい。このため、システム要素のそれぞれについて別のソフトウェアシステムへの流用可能性を示す情報をリンクさせておく。具体的には、編集画面に固定・変動識別欄を設けて、各システム要素について、新モデル開発のときに流用できる「固定」及び新モデル開発ごとに設計し直す必要がある「変動」を識別できるようする。また、専用・汎用識別欄を設けて、各システム要素について、固有の製品やビジネス向けである「専用」及び他の分野の製品やビジネスに汎用可能である「汎用」を識別できるようにし、さらに、汎用可能である場合にはその汎用先を登録できるようにする。そして、新たなソフトウェアシステムの設計に当たって、システム要素編集部10は、データベース100に登録されているこれら流用可能性を示す情報を参照して、データベース100に登録されているシステム要素の中から当該新たなソフトウェアシステムに流用可能なものを抽出する。これにより、一度開発したソフトウェアシステムの流用化、共用化、再使用化が可能となる。
以上、本実施形態によると、ソフトウェアシステムを構成するプログラム、データテーブル、データ伝達回路及び入出力デバイスのそれぞれを構成するシステム要素間のデータ授受関係がマトリックス形式で一望することができる。そして、これらデータ授受関係を論理検証しながらソフトウェアシステムの設計をすることができる。これにより、ソフトウェアシステム設計の上流工程において広義のバグを排除してバグレスソフトウェアシステムを実現することができる。さらに、製品のモデルチェンジや別のビジネス分野への応用に流用可能なソフトウェアシステムを設計することができる。
本発明に係るバグレスソフトウェアシステム設計支援装置は、ソフトウェアシステム設計の上流工程において広義のバグを排除してバグレスソフトウェアシステムを実現することができるため、携帯電話機などのソフトウェアシステムの設計支援に有用である。
一実施形態に係るバグレスソフトウェアシステム設計支援装置の構成図である。 ソフトウェアシステム設計時の編集画面例である。 データ伝達回路のブロック図作成例を示す図である。 一般的なソフトウェアシステムの構成図である。
符号の説明
10 システム要素編集部
20 マトリックス表示部
30 データ授受関係編集部
40 論理検証部
50 ブロック図作成部
100 データベース

Claims (18)

  1. CPUで実行されるプログラム及び前記CPUとの間でデータのやり取りをする入出力デバイス並びに前記CPUと前記入出力デバイスとの間に介在するデータテーブル及びデータ伝達回路からなるソフトウェアシステムを論理矛盾なく設計することを支援するバグレスソフトウェアシステム設計支援装置であって、
    データベースに接続して、前記プログラム、データテーブル、データ伝達回路及び入出力デバイスのそれぞれを構成するシステム要素の登録、更新及び削除を行うシステム要素編集部と、
    前記データベースに登録されているシステム要素を行及び列見出しとして同順に並べて構成され、かつ、当該行及び列見出しによって特定される二つのシステム要素間のデータ授受関係の有無を表す行列要素を有する正方マトリックスを表示するマトリックス表示部と、
    前記表示された正方マトリックスの行列要素に対する表示付与及び削除に応じて、当該行列要素に対応する二つのシステム要素間のデータ授受関係の有無を前記データベースに登録するデータ授受関係編集部と、
    前記データベースに登録されているシステム要素間のデータ授受関係を辿って前記ソフトウェアシステムの論理整合性を検証し、論理不整合を検出したとき、当該論理不整合に係る情報を出力する論理検証部とを備えた
    ことを特徴とするバグレスソフトウェアシステム設計支援装置。
  2. 請求項1に記載のバグレスソフトウェアシステム設計支援装置において、
    前記論理検証部は、前記プログラムを構成するシステム要素と前記入出力デバイスを構成するシステム要素との間で直接に又は前記データテーブル及びデータ伝達回路のそれぞれを構成するシステム要素の少なくとも一つを経由して間接にデータが授受されるか否か、及び前記データベースに登録されているシステム要素間でデータ授受がループしているか否かの少なくとも一つについて検証する
    ことを特徴とするバグレスソフトウェアシステム設計支援装置。
  3. 請求項1に記載のバグレスソフトウェアシステム設計支援装置において、
    前記論理検証部は、前記データベースに登録されているシステム要素のうちいずれのシステム要素にもデータを渡さないものを検出するものであり、
    前記マトリックス表示部は、前記検出されたシステム要素を前記正方マトリックスから削除するものである
    ことを特徴とするバグレスソフトウェアシステム設計支援装置。
  4. 請求項1に記載のバグレスソフトウェアシステム設計支援装置において、
    前記論理検証部は、前記データベースに登録されているシステム要素のうちいずれのシステム要素にもデータを渡さないものを検出するものであり、
    前記データ授受関係編集部は、前記検出されたシステム要素を前記データベースから削除するものである
    ことを特徴とするバグレスソフトウェアシステム設計支援装置。
  5. 請求項1に記載のバグレスソフトウェアシステム設計支援装置において、
    前記データベースに登録されている前記データ伝達回路を構成するシステム要素間のデータ授受関係を参照して、前記データ伝達回路のブロック図を作成するブロック図作成部を備えた
    ことを特徴とするバグレスソフトウェアシステム設計支援装置。
  6. 請求項1に記載のバグレスソフトウェアシステム設計支援装置において、
    前記データベースには前記システム要素のそれぞれについて別のソフトウェアシステムへの流用可能性を示す情報が登録されており、
    前記システム要素編集部は、新たなソフトウェアシステムの設計に当たって、前記データベースに登録されている前記流用可能性を示す情報を参照して、前記データベースに登録されているシステム要素の中から当該新たなソフトウェアシステムに流用可能なものを抽出する
    ことを特徴とするバグレスソフトウェアシステム設計支援装置。
  7. CPUで実行されるプログラム及び前記CPUとの間でデータのやり取りをする入出力デバイス並びに前記CPUと前記入出力デバイスとに介在するデータテーブル及びデータ伝達回路からなるソフトウェアシステムを論理矛盾なく設計することを支援するバグレスソフトウェアシステム設計支援方法であって、
    データベースに接続して、ユーザの操作に応じて、前記プログラム、データテーブル、データ伝達回路及び入出力デバイスのそれぞれを構成するシステム要素の登録、更新及び削除を行うステップと、
    前記データベースに登録されているシステム要素を行及び列見出しとして同順に並べて構成され、かつ、当該行及び列見出しによって特定される二つのシステム要素間のデータ授受関係の有無を表す行列要素を有する正方マトリックスを表示するステップと、
    前記表示された正方マトリックスの行列要素に対する表示付与及び削除に応じて、当該行列要素に対応する二つのシステム要素間のデータ授受関係の有無を前記データベースに自動的に登録するステップと、
    前記データベースに登録されているシステム要素間のデータ授受関係を辿って前記ソフトウェアシステムの論理整合性を自動的に検証し、論理不整合を検出したとき、当該論理不整合に係る情報を出力するステップとを備えた
    ことを特徴とするバグレスソフトウェアシステム設計支援方法。
  8. 請求項7に記載のバグレスソフトウェアシステム設計支援方法において、
    前記ソフトウェアシステムの論理整合性の検証は、前記プログラムを構成するシステム要素と前記入出力デバイスを構成するシステム要素との間で直接に又は前記データテーブル及びデータ伝達回路のそれぞれを構成するシステム要素の少なくとも一つを経由して間接にデータが授受されるか否か、及び前記データベースに登録されているシステム要素間でデータ授受がループしているか否かの少なくとも一つについての検証である
    ことを特徴とするバグレスソフトウェアシステム設計支援方法。
  9. 請求項7に記載のバグレスソフトウェアシステム設計支援方法において、
    前記データベースに登録されているシステム要素間のデータ授受関係を参照して、前記データベースに登録されているシステム要素のうちいずれのシステム要素にもデータを渡さないものを自動的に検出するステップと、
    前記検出されたシステム要素を前記正方マトリックスから自動的に削除するステップとを備えた
    ことを特徴とするバグレスソフトウェアシステム設計支援方法。
  10. 請求項7に記載のバグレスソフトウェアシステム設計支援方法において、
    前記データベースに登録されているシステム要素間のデータ授受関係を参照して、前記データベースに登録されているシステム要素のうちいずれのシステム要素にもデータを渡さないものを自動的に検出するステップと、
    前記検出されたシステム要素を前記データベースから自動的に削除するステップとを備えた
    ことを特徴とするバグレスソフトウェアシステム設計支援方法。
  11. 請求項7に記載のバグレスソフトウェアシステム設計支援方法において、
    前記データベースに登録されている前記データ伝達回路を構成するシステム要素間のデータ授受関係を参照して、前記データ伝達回路のブロック図を自動的に作成するステップを備えた
    ことを特徴とするバグレスソフトウェアシステム設計支援方法。
  12. 請求項7に記載のバグレスソフトウェアシステム設計支援方法において、
    前記データベースには前記システム要素のそれぞれについて別のソフトウェアシステムへの流用可能性を示す情報が登録されており、
    新たなソフトウェアシステムの設計に当たって、前記データベースに登録されている前記流用可能性を示す情報を参照して、前記データベースに登録されているシステム要素の中から当該新たなソフトウェアシステムに流用可能なものを自動的に抽出するステップを備えた
    ことを特徴とするバグレスソフトウェアシステム設計支援方法。
  13. CPUで実行されるプログラム及び前記CPUとの間でデータのやり取りをする入出力デバイス並びに前記CPUと前記入出力デバイスと間に介在するデータテーブル及びデータ伝達回路からなるソフトウェアシステムを論理矛盾なく設計することをコンピュータに支援させるバグレスソフトウェアシステム設計支援プログラムであって、
    データベースに接続して、前記プログラム、データテーブル、データ伝達回路及び入出力デバイスのそれぞれを構成するシステム要素の登録、更新及び削除を行う手段、
    前記データベースに登録されているシステム要素を行及び列見出しとして同順に並べて構成され、かつ、当該行及び列見出しによって特定される二つのシステム要素間のデータ授受関係の有無を表す行列要素を有する正方マトリックスを表示する手段、
    前記表示された正方マトリックスの行列要素に対する表示付与及び削除に応じて、当該行列要素に対応する二つのシステム要素間のデータ授受関係の有無を前記データベースに登録する手段、及び
    前記データベースに登録されているシステム要素間のデータ授受関係を辿って前記ソフトウェアシステムの論理整合性を検証し、論理不整合を検出したとき、当該論理不整合に係る情報を出力する手段として、コンピュータを機能させる
    ことを特徴とするバグレスソフトウェアシステム設計支援プログラム。
  14. 請求項13に記載のバグレスソフトウェアシステム設計支援プログラムにおいて、
    前記ソフトウェアシステムの論理整合性の検証は、前記プログラムを構成するシステム要素と前記入出力デバイスを構成するシステム要素との間で直接に又は前記データテーブル及びデータ伝達回路のそれぞれを構成するシステム要素の少なくとも一つを経由して間接にデータが授受されるか否か、及び前記データベースに登録されているシステム要素間でデータ授受がループしているか否かの少なくとも一つについての検証である
    ことを特徴とするバグレスソフトウェアシステム設計支援プログラム。
  15. 請求項13に記載のバグレスソフトウェアシステム設計支援プログラムにおいて、
    前記データベースに登録されているシステム要素間のデータ授受関係を参照して、前記データベースに登録されているシステム要素のうちいずれのシステム要素にもデータを渡さないものを検出する手段、及び
    前記検出されたシステム要素を前記正方マトリックスから削除する手段として、コンピュータを機能させる
    ことを特徴とするバグレスソフトウェアシステム設計支援プログラム。
  16. 請求項13に記載のバグレスソフトウェアシステム設計支援プログラムにおいて、
    前記データベースに登録されているシステム要素間のデータ授受関係を参照して、前記データベースに登録されているシステム要素のうちいずれのシステム要素にもデータを渡さないものを検出する手段、及び
    前記検出されたシステム要素を前記データベースから削除する手段として、コンピュータを機能させる
    ことを特徴とするバグレスソフトウェアシステム設計支援プログラム。
  17. 請求項13に記載のバグレスソフトウェアシステム設計支援プログラムにおいて、
    前記データベースに登録されている前記データ伝達回路を構成するシステム要素間のデータ授受関係を参照して、前記データ伝達回路のブロック図を作成する手段として、コンピュータを機能させる
    ことを特徴とするバグレスソフトウェアシステム設計支援プログラム。
  18. 請求項13に記載のバグレスソフトウェアシステム設計支援プログラムにおいて、
    前記データベースには前記システム要素のそれぞれについて別のソフトウェアシステムへの流用可能性を示す情報が登録されており、
    新たなソフトウェアシステムの設計に当たって、前記データベースに登録されている前記流用可能性を示す情報を参照して、前記データベースに登録されているシステム要素の中から当該新たなソフトウェアシステムに流用可能なものを抽出する手段として、コンピュータを機能させる
    ことを特徴とするバグレスソフトウェアシステム設計支援プログラム。
JP2008033143A 2008-02-14 2008-02-14 バグレスソフトウェアシステム設計支援装置、方法及びプログラム Expired - Fee Related JP5099839B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008033143A JP5099839B2 (ja) 2008-02-14 2008-02-14 バグレスソフトウェアシステム設計支援装置、方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008033143A JP5099839B2 (ja) 2008-02-14 2008-02-14 バグレスソフトウェアシステム設計支援装置、方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2009193313A JP2009193313A (ja) 2009-08-27
JP5099839B2 true JP5099839B2 (ja) 2012-12-19

Family

ID=41075271

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008033143A Expired - Fee Related JP5099839B2 (ja) 2008-02-14 2008-02-14 バグレスソフトウェアシステム設計支援装置、方法及びプログラム

Country Status (1)

Country Link
JP (1) JP5099839B2 (ja)

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0594290A (ja) * 1991-09-30 1993-04-16 Shimadzu Corp データフロー図検証装置
JP2722040B2 (ja) * 1993-02-09 1998-03-04 株式会社アドバンスド・システム研究所 手続き型言語プログラム・コンポーネントの分離方式
JP2859511B2 (ja) * 1993-04-21 1999-02-17 三菱電機株式会社 プログラム作成支援装置およびプログラム作成支援方法
JPH09160949A (ja) * 1995-12-07 1997-06-20 Hitachi Ltd ハードウエアとソフトウエアの混在システムの設計支援方法
JPH09212353A (ja) * 1996-02-07 1997-08-15 Hitachi Ltd 再利用設計支援方法および設計支援装置
JP3326713B2 (ja) * 1996-08-28 2002-09-24 株式会社山武 図的プログラミング方法
JP4629183B2 (ja) * 1999-04-07 2011-02-09 新日鉄ソリューションズ株式会社 要求仕様記述支援装置およびその方法、記録媒体
JP2003030395A (ja) * 2001-07-10 2003-01-31 Toshiba Corp プロジェクト管理方法及び装置及びプログラム及び記録媒体
JP2003085223A (ja) * 2001-09-07 2003-03-20 Hitachi Ltd ハードウェア・ソフトウェア統合設計システム
JP2004280249A (ja) * 2003-03-13 2004-10-07 Toyota Central Res & Dev Lab Inc 開発工期短縮支援装置
JP4319007B2 (ja) * 2003-10-31 2009-08-26 トヨタ自動車株式会社 開発工期短縮支援方法
JP4104622B2 (ja) * 2005-10-14 2008-06-18 株式会社アイティアイディコンサルティング 製品開発プロセス支援システム及び製品開発プロセス支援方法

Also Published As

Publication number Publication date
JP2009193313A (ja) 2009-08-27

Similar Documents

Publication Publication Date Title
US8015550B2 (en) Systems and methods for hazards analysis
US8181150B2 (en) System and method for synchronized workflow management
WO2020134633A1 (zh) 一种应用程序的开发方法、装置及集成开发工具
CN104376043B (zh) 日志记录与显示方法及装置
US9459780B1 (en) Documenting interactive graphical designs
CN107451112B (zh) 表格工具数据检查方法、装置、终端设备及存储介质
US20170242780A1 (en) Graphical Sequence Builder
CN110765028B (zh) 验证环境的可视化搭建方法、装置及存储介质
US20080222576A1 (en) Design support apparatus, method for supporting design, and medium recording design support program
CN107688682B (zh) 一种使用时序路径提取电路拓扑的方法
CN115495069B (zh) 基于模型驱动的煤炭工业软件流程实现方法、装置及设备
US8121826B1 (en) Graphical user interface for system design
CN111782651A (zh) 数据关联关系的可视化编辑方法、装置、设备及存储介质
US20110126171A1 (en) Dynamic native editor code view facade
CN103810292A (zh) 一种图形界面的配置方法及装置
US8943451B2 (en) Hierarchical finite state machine generation for power state behavior in an electronic design
US9395872B2 (en) Facilities controlling device, screen displaying method, and recording medium
CN101710275B (zh) 利用gui工具来编辑工作流逻辑和屏幕的方法和系统
JP5099839B2 (ja) バグレスソフトウェアシステム設計支援装置、方法及びプログラム
CN109948251B (zh) 基于cad的数据处理方法、装置、设备及存储介质
JP5319643B2 (ja) ソフトウェアプロダクトライン開発支援装置およびその方法
CN102779038B (zh) 一种组件集成的方法及装置
KR102389958B1 (ko) 선택영역 포스팅 방법
JP2002287964A (ja) 画面入出力仕様設計システムと方法およびプログラム
WO2023036540A1 (en) Managing an app, especially developing an app comprising an event artifact, method and system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110210

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20110210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20110210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120210

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20120210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20120210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120327

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120822

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: 20120904

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120921

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151005

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees