JPH0883172A - ソフトウェア開発支援装置 - Google Patents
ソフトウェア開発支援装置Info
- Publication number
- JPH0883172A JPH0883172A JP6219760A JP21976094A JPH0883172A JP H0883172 A JPH0883172 A JP H0883172A JP 6219760 A JP6219760 A JP 6219760A JP 21976094 A JP21976094 A JP 21976094A JP H0883172 A JPH0883172 A JP H0883172A
- Authority
- JP
- Japan
- Prior art keywords
- software
- component
- data
- software development
- parts
- 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
Landscapes
- Stored Programmes (AREA)
Abstract
ェア開発支援装置を提供する。 【構成】 コンピュータのソフトウェアを構成する部品
を組合せてソフトウェアを開発するソフトウェア開発支
援装置において、部品格納手段1に各部品に関するデー
タ及び処理内容を部品に付属する内部データとして格納
しておく。選択手段2によって所望の部品を選択する。
編集手段3によって選択した部品の内部データを編集す
る。ソースコードジェネレータ4が選択された部品及び
選択された部品の内部データに基づいてソフトウェアの
動作を実現する。
Description
開発を効率的に行なうソフトウェア開発支援装置に関す
るものである。
は、その操作性の向上、認識の容易性を考慮してGraphi
cal User Interface(以下GUIという)が使用されて
いる。GUIは、コンピュータとユーザ間の対話的入出
力の形式であり、情報出力を表示画面上の図形シンボル
で行ない、また、情報入力を図形シンボルに対する操作
によって行なうものである。
なわちアプリケーションプログラム(以下図面又は本明
細書において「アプリ」と略することがある)は、ソフ
トウェアの部品として、異なった画面であっても同様な
形状をした操作ボタン、アイコン、プルダウンメニュー
などの表示が使用され、どのような画面であってもマウ
スなどを使用することにより共通の操作性が得られるよ
うにしていることが多い。そのため、この種のGUIソ
フトウェアを開発するときには、プログラムの各画面に
おいて共通に使用される表示などを部品化して取り扱う
ことにより、プログラム開発を容易に実施できるように
している。
開発手順の一例を示すと、次の通りである。まず、ソフ
トウェア実行上の各過程における画面の表示状態、特
に、ソフトウェアの起動時から位置や表示内容が固定的
である静的部品と、前記静的部品に対応する画面操作処
理手順を開発する。次いで、画面上の表示を例えばマウ
ス等により操作したときの処理すなわち部品への操作に
対する及び部品間の視覚的振舞が開発される。
造が決定され、データ処理手順あるいはルーチンが開発
される。最後に、生成された部品が、又はユーザから入
力される処理を含めて部品及び処理が結合されてソフト
ウェアが開発される。
置としてはソフトウェア開発支援装置が知られている。
ソフトウェア開発支援装置とは、ソフトウェアを構成す
るデータや処理手順の編集を行なうためのもので、多く
の場合ソースコードジェネレータやシミュレータのよう
にソフトウェアの動作を実現する手段を備えている。
のソフトウェア開発支援装置において行なう場合、上記
の各段階における画面の表示状態と画面操作処理のう
ち、GUI部品単体の動作を規定する処理の開発はGU
I開発支援装置を用いてなされていた。
ウェア開発支援装置では、部品間や部品とデータ及び処
理との関連についてはプログラマの手による作成や修正
を要したため、ソフトウェア開発の効率向上が困難とい
う問題点が存在していた。
あるGUI部品が他のGUI部品を操作するといったG
UI同士の関連付けについては、ソフトウェアを自動的
に実現することができなかった。特に、対話的操作部品
のようにGUI特有のグラフィック表示ライブラリを利
用しても、ライブラリ同士の組み合わせは手作業で行な
う必要があった。このため、部品間の関係についてはプ
ログラム言語を用いて直接所望の動作を記述せざるを得
ず、この作業がソフトウェア開発における多くの工数を
要した。
に表示するデータもしくは部品とデータ処理手順との対
応、及び、入力用GUI部品と部品からの入力データの
処理手順、など部品と他の要素の関連についてもソフト
ウェアの自動合成ができなかった。このため、このよう
な関連付けについてもプログラマが追加修正する必要が
あった。
示用GUI部品を変更する場合、変更する部品に関連す
る部品や表示データなどすべての他の要素との関連性も
変更せざるを得ず、この作業もプログラマが手作業で行
なっていた。このため、ソフトウェアの保守性や再利用
性も向上が困難であった。
を解決するために提案されたもので、その目的は、ソフ
トウェア開発を効率的に行なうソフトウェア開発支援装
置を提供することである。また、本発明の他の目的は、
ソフトウェアの修正変更が容易なソフトウェア開発支援
装置を提供することである。
め、請求項1のソフトウェア開発支援装置は、コンピュ
ータのソフトウェアを構成する部品を組合せてソフトウ
ェアを開発するソフトウェア開発支援装置において、各
部品に関するデータ及び処理内容を部品に付属する内部
データとして格納する部品格納手段と、所望の部品を選
択する選択手段と、選択した部品の内部データを編集す
る編集手段と、選択された部品及び選択された部品の内
部データに基づいてソフトウェアの動作を実現する実現
手段を有することを特徴とする。
ソフトウェア開発支援装置において、部品の内部データ
は、当該部品が組み込まれるソフトウェアによって異な
らない非依存データと、当該部品が組み込まれるソフト
ウェアによって異なる依存データに区分され、前記編集
手段は、この依存データを編集するように構成されたこ
とを特徴とする。
ソフトウェア開発支援装置において、部品と他の要素と
の結合関係を設定する結合手段を有し、前記実現手段
は、前記結合関係を前提に前記ソフトウェアの動作を実
現するように構成されたことを特徴とする。
ソフトウェア開発支援装置において、前記結合関係の対
象となり得る前記各部品と前記各要素との組合せごとの
仲介ルーチンを格納する仲介ルーチン格納手段と、前記
結合関係が設定された場合に、必要な前記仲介ルーチン
を特定する特定手段とを有し、前記実現手段は、特定さ
れた前記仲介ルーチンに基づいて前記ソフトウェアの動
作を実現するように構成されたことを特徴とする。
ソフトウェア開発支援装置において、表示画面とポイン
ティングデバイスを有し、前記各部品を所定の図形によ
って前記表示画面に表示し、前記選択手段は、前記ポイ
ンティングデバイスによって前記図形をポイントするこ
とによって前記選択を行ない、前記結合手段は、選択さ
れた各部品の前記図形に対して所定の操作を行なうこと
によって前記結合関係を設定するように構成され、前記
ポインティングデバイスによって所定の操作を行なうこ
とによって前記図形を前記表示画面上の所望の位置に配
置する配置手段を有することを特徴とする。
ソフトウェア開発支援装置において、前記部品は少なく
とも、表示画面上の所定の位置に表示され続ける静的部
品と、ソフトウェア内の情報を表示するための表示用部
品と、ソフトウェアに対して情報を入力するための入力
用部品と、を含むことを特徴とする。
な作用を有する。すなわち、請求項1のソフトウェア開
発支援装置では、データや処理内容が部品ごとに用意さ
れ、所望の部品を選択するだけでその部品に関するデー
タや処理内容を編集することができ、選択された部品及
びその内部データに基づいてソフトウェアの動作が実現
される。このため、部品とデータや処理内容の結合関係
を手作業でプログラミングする繁雑な手順が不要とな
り、ソフトウェア開発が効率化される。また、同様に、
部品の入れ替えや部品に対応するデータや処理手順の変
更も効率的に行なうことができるので、ソフトウェアの
拡張性、保守性が向上する。
まれるソフトウェアによって異ならない非依存データに
ついては編集や入力が不要なので、ソフトウェア開発が
効率化される。
要素例えば他の部品・ソフトウェアの内部データなどと
の間に結合関係を設定し、この結合関係に基づいて前記
ソフトウェアの動作が実現される。このため、部品間の
関係を手作業でプログラミングする手順が不要となり、
ソフトウェア開発が効率化される。
データやイベントに基づいて構成された部品同士及び部
品と要素でも、データの型変換など必要な処理は仲介ル
ーチンが行うので、このような仲介ルーチンをユーザが
開発の際に用意する必要がない。
品の表示が部品の認識を容易にし、また、図形に対する
視覚的操作が選択・結合関係の設定・画面上での部品の
配置を容易にするので、ソフトウェア開発が効率化され
る。
ってメニュー欄や背景模様のような表示画面の基本的な
内容が提供され、表示要部品と入力用部品によって入出
力の機能が提供されるので、新たなソフトウェア開発に
おいてデータ処理部分のみを新たに開発すればよく、ソ
フトウェア開発が効率化される。
て具体的に説明する。なお、後述する実施例はコンピュ
ータ上に実現され、実施例の各機能は、所定の手順(プ
ログラム)がこのコンピュータを制御することで実現さ
れる。
各機能に対応する概念的なもので、必ずしも特定のハー
ドウェアやソフトウェア・ルーチンに1対1には対応し
ない。同一のハードウェア要素が、場合によって異なっ
た手段を構成する。例えば、コンピュータは、ある命令
を実行するときにある手段となり、別の命令を実行する
ときは別の手段となりうる。また、一つの手段が、わず
か1命令によって実現される場合もあれば、多数の命令
によって実現される場合もある。
の各機能を有する仮想的回路ブロック(「手段」又は
「部」)を想定して実施例を説明する。但し、コンピュ
ータの使用は一例であり、本発明の機能の全部又は一部
は、可能ならば、カスタムチップ(専用の集積回路)の
ような電子回路上に実現してもよい。
には、CPU(中央演算処理装置)と、RAM(随時書
込読出型記憶素子)からなる主記憶装置とを有する。ま
た、前記コンピュータの規模は自由であり、マイクロコ
ンピュータ・パーソナルコンピュータ・スモールコンピ
ュータ・ワークステーション・メインフレームなど、い
かなる規模のものを用いてもよい。
は、典型的には、キーボードやマウスなどの入力装置
と、ハードディスク装置などの外部記憶装置と、CRT
表示装置やプリンタ印字装置などの出力装置と、必要な
入出力制御回路を含む。
成は自由であり、本発明が実施できる限り、上記の構成
要素の一部を追加・変更・除外してもよい。例えば、C
PUの種類は自由であり、CPUを複数同時に用いた
り、単一のCPUをタイムシェアリング(時分割)で使
用し、複数の処理を同時平行的に行ってもよい。また、
他の入力装置(例えば、タッチパネル・ライトペン・ト
ラックボールなどのポインティングデバイスや、デジタ
イザ・イメージ読取装置やビデオカメラなどの画像入力
装置・音声識別装置・各種センサなど)を用いてもよ
い。また、他の外部記憶装置(例えば、フロッピーディ
スク装置・RAMカード装置・磁気テープ装置・光学デ
ィスク装置・光磁気ディスク装置・バブルメモリ装置・
フラッシュメモリなど)を用いてもよい。また、他の出
力装置(例えば、液晶表示装置・プラズマディスプレイ
装置・ビデオプロジェクター・LED表示装置・音響発
生回路・音声合成回路など)を用いてもよい。
実現するためのソフトウェアの構成としては、典型的に
は、実施例の各機能を実現するためのアプリケーション
プログラムが、OS(オペレーティングシステム)上で
実行される態様が考えられる。また、実施例を実現する
ためのプログラムの態様としては、典型的には、高級言
語やアセンブラからコンパイル(翻訳)された機械語が
考えられる。但し、前記コンピュータのソフトウェア構
成も自由であり、本発明が実施できる限り、ソフトウェ
ア構成を変更してもよい。例えば、必ずしもOSを用い
る必要はなく、また、プログラムの表現形式も自由であ
り、BASICのようなインタプリタ(逐次解釈実行
型)言語を用いてもよい。
り、ROM(読出し専用メモリ)に格納しておいてもよ
く、また、ハードディスク装置のような外部記憶装置に
格納しておき、コンピュータの起動時や処理の開始時に
主メモリ上にロード(読み込み)してもよい。また、プ
ログラムを複数の部分に分割して外部記憶装置に格納し
ておき、処理内容に応じて必要なモジュールのみを随時
主メモリ上にロード(読み込み)してもよい。さらに、
プログラムの部分ごとに異なった態様で格納してもよ
い。
プは、その性質に反しない限り、実行順序を変更し、複
数同時に実行し、また、実行ごとに異なった順序で実行
してもよい。このような順序の変更は、例えば、ユーザ
が実行可能な処理を選択するなどメニュー形式のインタ
ーフェース手法によって実現することができる。
の情報の入力のみならず、情報の入力と密接に関連する
他の処理を含む。このような処理は、例えば、入力内容
のエコーバックや修正・編集である。また、本明細書に
おける「出力」は、本来の情報の出力のみならず、情報
の出力と密接に関連する他の処理を含む。このような処
理は、例えば、出力すべき範囲の入力や、画面スクロー
ルの指示である。なお、対話的入出力手順によって入力
と出力を一体的操作によって実現してもよく、このよう
な一体的操作によって、選択・指定・特定などの処理を
行ってもよい。
データの格納手段は前記コンピュータ上においていかな
る態様で存在してもよい。例えば、データのハードウェ
ア上の所在部分は、主記憶装置・外部記憶装置・CPU
のレジスタやキャッシュメモリなどいかなる部分でもよ
い。また、データの保持態様も自由である。例えば、デ
ータは、ファイル形式で保持されるのみならず、メモリ
やディスクなどの記憶装置を物理的アドレスで直接アク
セスすることによって実現してもよい。また、データの
表現形式も自由で、例えば、文字列を表すコードの単位
は、文字単位でも単語単位でもよい。また、データは必
要とされる一定時間だけ保持されれば十分で、その後消
滅してもよく、保持時間の長短は自由である。また、辞
書データのように当面変更されない情報は、ROMに格
納してもよい。
言及は確認的で、言及されない情報の存在を否定するも
のではない。すなわち、本発明の動作では、動作に必要
な一般的な情報、例えば、各種ポインタ、カウンタ、フ
ラグ、パラメータ、バッファなどが適宜用いられる。
に記載がない場合、当該情報を保持している他の部分か
ら獲得される。このような情報の獲得は、例えば、当該
情報を格納している変数やメモリをアクセスすることに
よって実現することができる。なお、情報の消去・抹消
は、当該情報の内容自体を必ずしも記憶領域から現実に
削除せず、消去を表すフラグを設定するなど、情報の意
味付けの変更によって行うことができる。
ュータのソフトウェアを構成する部品を組合せてソフト
ウェアを開発するソフトウェア開発支援装置である。本
実施例の目的は、ソフトウェア開発を効率的に行なうソ
フトウェア開発支援装置を提供することである。また、
本実施例の他の目的は、ソフトウェアの修正変更が容易
なソフトウェア開発支援装置を提供することである。
装置の概念的構成を示す機能ブロック図である。本実施
例のソフトウェア開発支援装置は、各部品に関するデー
タ及び処理内容を部品に付属する内部データとして格納
する部品格納手段1と、所望の部品を選択する選択手段
2と、選択した部品の内部データを編集する編集手段3
と、選択された部品及び選択された部品の内部データに
基づいてソフトウェアの動作を実現する実現手段である
ソースコードジェネレータ4を有する。
置は、部品と他の要素との結合関係を設定する結合手段
5と、前記結合関係の対象となり得る前記各部品と前記
各要素との組合せごとの仲介ルーチンを格納する仲介ル
ーチン格納手段6と、前記結合関係が設定された場合
に、必要な前記仲介ルーチンを特定する特定手段7と、
を有する。
置は、図示しない表示画面とポインティングデバイスを
有し、また、前記ポインティングデバイスによって所定
の操作を行なうことによって前記図形を前記表示画面上
の所望の位置に配置する配置手段8を有する。
の所定の位置に表示され続ける静的部品と、ソフトウェ
ア内の情報を表示するための表示用部品と、ソフトウェ
アに対して情報を入力するための入力用部品と、を含
む。
おけるソフトウェア開発では、まず、部品格納手段1に
各部品に関するデータ及び処理内容を部品に付属する内
部データとして格納しておく。そして、選択手段2によ
って所望の部品を選択する。このとき、ポインティング
デバイスによって前記図形をポイントすることによって
選択を行なうことができる。
デバイスによって所定の操作を行なうことによって前記
図形を前記表示画面上の所望の位置に配置することがで
きる。
の内部データを編集する。このとき、部品の内部データ
は、当該部品が組み込まれるソフトウェアによって異な
らない非依存データと、当該部品が組み込まれるソフト
ウェアによって異なる依存データに区分され、編集手段
は、この依存データを編集するように構成されている。
このため、部品が組み込まれるソフトウェアによって異
ならない非依存データについては編集や入力が不要なの
で、ソフトウェア開発が効率化される。
設定及びソフトウェアの動作の実現について説明する。
品は、ソフトウェアの動作中、画面上の固定位置に表示
され続ける部品である。図2は、静的GUI部品のデー
タ構造である。静的GUI部品は、図2に示すように、
描画及び初期化などの処理手順データa1と、図形の基
本的な特徴を表現しソフトウェアに依存しない非依存デ
ータa2と、ソフトウェアごとに異なる個々の図形の位
置/サイズなどを表す依存データa3を含む。
形の種類(例えば円/直線/矩形の種別)、ストローク
(例えば線の数=4、折れ点の座標={(34,13),(50,3
4),...} のように表す)、ベクトル(例えば図形の向き
(0.4,0.7) のように表す)などが挙げられる。
面上での位置データ(例えば絶対座標(200,130),相対座
標(20,3)のように表す)、色データ(例えば表面=赤
色、背景=黄色のように表す)、サイズデータ(例えば
width=30,height=40,depth=15のように表す)などが挙
げられる。
を示すフローチャートである。なお、本明細書のフロー
チャートにおいて左側は主にソフトウェア開発支援装置
による動作を、右側は主にユーザによる操作を示す。こ
の手順では、図3に示すように、画面に一覧表示される
部品から(ステップ31)部品を選択し(ステップ3
2)、視覚的な操作によって部品を配置する(ステップ
33)。ここで図4は、部品の一覧表示及び選択のため
のウインドウ(Select Panel)及び部品の配置のためのウ
インドウ(Palette) の表示例である。
ち編集可能な依存データa3が一覧表示され(ステップ
34)、内部データの編集を終了すると(ステップ3
5)、選択された部品データは内部データともにソフト
ウェアを構成する部品の情報として保持され、ソースコ
ード生成時に参照される。ここで図5は、内部データ編
集のためのウインドウの表示例である。
示用GUI部品の編集に関するデータを示す概念図であ
る。すなわち、表示用GUI部品b2は、ソフトウェア
内部のデータb1をユーザに画面表示するためのもので
ある。そして、部品b2のデータ構造b3は、表示デー
タを格納するための内部可変データ格納領域と、表示処
理ルーチンと、ワークエリアである内部データ格納領域
を持つ。
ユーザが結合手段5を通じて部品とデータとの結合関係
として指定し、指定された結合関係は結合情報b5の形
式を持つデータ構造体b4として結合情報テーブルb9
に格納され、ソースコード生成時に参照される。
rbineRotation のような名称で表す)、データの型(例
えば整数型int/文字型str/実数型floa
t...のような種別で表す)、ID(例えばID=12
345 のようなコードで表す)を含む。なお、IDは自動
発番され同一ソフトウェア内では重複しない。また、図
7はマトリクスb7の例である。
ータb1のデータ型が異なる場合が考えられ得るが、そ
のための処理モジュール(前記仲介ルーチンに相当する
もの)は処理モジュールライブラリb8(前記仲介ルー
チン格納手段の一部に相当するもの)に格納されてい
る。
との処理は結合処理モジュールb6が行う。このモジュ
ールb6は、一辺がソフトウェア内部のデータの型、他
辺が表示GUI部品の種類となっているマトリクスb7
から参照され、特定の型と特定の部品の交点には、その
型のデータをその部品で表示する際に必要となる処理モ
ジュールが名称などで特定され、選択される。そしてこ
れが結合情報テーブルb9に記録される。そして、結合
情報テーブルb9に記録された結合関係に応じたモジュ
ールb6がソースコード生成時に用いられる。
が存在し、一方、データを棒グラフで表示するという機
能を持つ表示用部品が存在するが、この部品は入力値と
して整数しか受け付けないと仮定する。この場合、仲介
ルーチンたる処理モジュールが実数のデータ群を整数に
変換してから部品に渡すことになる。
の開発の手順を示すフローチャートである。この手順で
は、一覧表示されたデータ型を(ステップ81)選択す
ると(ステップ82)、部品IDがインクリメント(1
加算)され(ステップ83)、一覧表示された部品から
(ステップ84)部品を選択し画面上に配置する(ステ
ップ85)。インクリメントされた部品IDは選択され
た部品ごとに割り当てられる。
可能な内部データb3が一覧表示され(ステップ8
6)、このデータを編集すると(ステップ87)、マト
リクスb7を通じてから処理モジュールが読み込まれ
(ステップ88)、登録が終了すると(ステップ89)
編集結果が結合情報テーブルb9に記録される(ステッ
プ810)。
ウインドウの表示例、図10は部品の一覧表示及び選択
のためのウインドウ(Select Panel)及び配置のためのウ
インドウ(Palette) の表示例、図11は部品のデータ編
集のためのウインドウの表示例である。
入力用GUI部品の編集に関するデータを示す概念図で
ある。すなわち、入力用部品c1は、ユーザによる所定
の入力があったときに、この入力に対応するソフトウェ
ア内の所定の処理ルーチンc7を起動する部品である。
そして、部品c1のデータ構造c2は、初期値、現在
値、表示処理ルーチン、内部データ格納領域を含む。
するかは、ユーザが結合手段5を通じて部品c1と処理
ルーチンc7との結合関係として指定する。そして、指
定された結合関係は結合情報c4の形式を持つデータ構
造体c3として結合情報テーブルc8に格納され、ソー
スコード生成時に参照される。
期値/現在値(例えば0〜1で正規化する)、入力用の
GUI部品のID(ID=12345のようなコードで
表す)、ソフトウェア内の処理ルーチン名を保持してい
る。なお、部品のIDと処理ルーチン名はリスト構造
(例えば関数1,関数2,...関数nのように特定す
る)で表せば、1つのデータ構造体によって複数のGU
I部品及び処理ルーチンを表すことができる。
必要とする値と必要とするデータ型を持ち、一方、GU
I部品が保持する現在値は、各GUI部品ごとに異なっ
たデータ型、例えば、2値情報、整数情報、文字列情報
等で保持されている場合がしばしばである。そのための
処理モジュール(前記仲介ルーチンに相当するもの)は
処理モジュールライブラリc9(前記仲介ルーチン格納
手段の一部に相当する)に格納されている。
との処理モジュールは結合処理モジュールc5が行う。
このモジュールc5は、一辺がGUI部品の種類、他辺
がデータの型となっているマトリクスc6を参照する。
マトリクスc6では、特定の型と特定の部品の交点で、
その表示用GUI部品で得られる値(状態変化情報)を
処理ルーチンが必要とするデータの型へ変換するための
手順を記述した処理モジュールが名称などで特定されて
いる。これによって処理モジュールが選択され、選択さ
れたモジュールが結合情報テーブルc8に記録され、結
合関係に応じた処理モジュールがソースコード生成時に
用いられる。
集の手順を示すフローチャートである。この手順では、
一覧表示されるデータ型から(ステップ131)データ
型を選択すると(ステップ132)部品IDがインクリ
メントされる(ステップ133)。そして、一覧表示さ
れる部品から(ステップ134)部品を選択して配置す
ると(ステップ135)、当該部品の編集可能な内部デ
ータc3が表示され(ステップ136)、内部データを
編集する(ステップ137)。その後、マトリクスc6
を用いてから処理モジュールが読み込まれ(ステップ1
38)、この処理モジュールが結合情報テーブルc8に
格納される(ステップ139)。
択のためのウインドウの表示例、図15は部品の一覧表
示及び選択のためのウインドウ(Select Panel)及び配置
のためのウインドウ(Palette) の表示例、図16は部品
のデータ編集のためのウインドウの表示例である。
ように各部品を開発した後、結合手段5によって部品と
他の要素との結合関係を設定する。この結合関係の設定
は、選択された各部品の図形に対して所定の操作を行な
うことによって行なうことができる。
するデータを示す概念図である。すなわち、ユーザが設
定した部品間の関連は関連記述テーブルd4に格納され
る。また、部品間の結合に必要な処理モジュール(前記
仲介ルーチンに相当するもの)は関連処理モジュールd
1を用いて特定される。モジュールd1は、GUI部品
間の各関連及び各関連に対応する処理ルーチン(前記仲
介ルーチンに相当するもの)を記述したデータ構造を持
つマトリクスd2を参照する。
ぼすGUI部品名、他辺が非操作GUI部品名であり、
両者の交点には処理ルーチンが名称などで特定されてい
る。具体的な処理ルーチンは処理ルーチンライブラリd
3(前記仲介ルーチン格納手段の一部に相当するもの)
に格納されている。
応した処理ルーチンは、マトリクスd2を用いてライブ
ラリd3から読み出され、テーブルd4に格納される。
テーブルd4のデータ構造d5には、操作を及ぼすGU
I部品のIDとこの部品に関連し操作を受ける各部品の
IDが含まれ、また、各関連ごとに仲介ルーチンたる処
理ルーチン名がリスト形式で格納される。
点が発見されなかった関連については、ユーザ独自の処
理ルーチンであるとし、ユーザが指定した処理ルーチン
名が格納される。
でイベントが発生した場合に、影響を及ぼすべき他の部
品と、その場合に必要な処理ルーチンを特定することが
できる。なお、図18はマトリクスd2の例、図19は
テーブルd5の例である。
手順を示すフローチャートである。この手順では、操作
を及ぼす部品が一覧表示され(ステップ201)ユーザ
が部品を選択し画面上に配置する(ステップ202)。
続いて操作の影響を受ける部品が一覧表示され(ステッ
プ203)、ユーザがこれら部品を選択し画面上に配置
する(ステップ204)。
ントが一覧表示され(ステップ205)、ユーザがイベ
ントを選択する(ステップ206)。さらに、選択した
関連にユーザによる処理ルーチンを対応させる場合はこ
れを作成し設定した関連の部品に関連付ける(ステップ
207)。その後、マトリクスd2を用いて各関連に対
応した処理ルーチンが取り出され(ステップ208)、
設定された関連とともにテーブルd4に格納される(ス
テップ209)。
ントが発行されるたびにモジュールd1がテーブルd4
を参照し、データ構造d5で示される処理ルーチンが呼
び出される。
示のためのウインドウの表示例、図22は操作の影響を
受ける部品の一覧表示のためのウインドウの表示例、図
23はイベントの一覧表示のためのウインドウの表示
例、図24は処理ルーチンの記述のためのウインドウの
表示例、図25は部品と処理ルーチンの関連付けのため
のウインドウの表示例である。
上の開発が終了すると、ソースコードジェネレータ4
が、選択された部品、選択された部品の内部データ、結
合関係(関連)に基づいてソフトウェアのソースコード
を生成・出力する。なお、結合関係が設定されている部
品については、特定手段7が必要な前記仲介ルーチンを
特定し、ソースコードジェネレータ4は特定された仲介
ルーチンに基づいてソースコードを生成する。
コードに、プログラマが開発したユーザソースコードを
結合しコンパイル等の作業を行うことで、GUIソフト
ウェア開発が完了する。
ードジェネレータには限定されず、ソフトウェアの動作
を実現できる手段を広く意味するので、例えば、コンパ
イラのように機械語による実行モジュールを直接生成し
たり、インタプリタのように実行してもよい。
発支援装置では、データや処理内容が部品ごとに用意さ
れ、所望の部品を選択するだけでその部品に関するデー
タや処理内容を編集することができ、選択された部品及
びその内部データに基づいてソフトウェアの動作が実現
される。このため、部品とデータや処理内容との関係を
手作業でプログラミングする繁雑な手順が不要となり、
ソフトウェア開発が効率化される。また、同様に、部品
の入れ替えや部品に対応するデータや処理手順の変更も
効率的に行なうことができるので、ソフトウェアの拡張
性、保守性が向上する。
置では、部品と、他の要素例えば他の部品・ソフトウェ
アの内部データなどとの間に結合関係を設定し、この結
合関係に基づいて前記ソフトウェアの動作が実現され
る。このため、部品と他の要素間の関係についても手作
業でプログラミングする手順が不要となり、ソフトウェ
ア開発が効率化される。
やイベントに基づいて構成された部品と要素でも、仲介
ルーチンがデータの型変換など必要な処理を行なうの
で、このような仲介ルーチンをユーザが開発の際に用意
する必要がない。
メニュー欄や背景模様のような表示画面の基本的な内容
が提供され、表示要部品と入力用部品によって入出力の
機能が提供されるので、新たなソフトウェア開発におい
てデータ処理部分のみを新たに開発すればよく、ソフト
ウェア開発が効率化される。
示が部品の認識を容易にし、また、図形に対する視覚的
操作が選択・結合関係の設定・画面上での部品の配置を
容易にするので、ソフトウェア開発が効率化される。
施例に限定されるものではなく、実施態様の変更は自由
であるから、次のような他の実施例をも包含するもので
ある。例えば、本発明のソフトウェア開発支援装置によ
って開発対象とされるソフトウェアはGUIソフトウェ
アには必ずしも限定されず、他のソフトウェアを開発対
象としてもよい。
面に表示されるものには限定されず、ソフトウェアを構
成する要素であって所望のものを部品として扱うことも
できる。また、部品の内部データのうち非依存データに
ついて編集できるようにしてもよい。また、結合手段は
必ずしも必要ではなく、開発された部品の結合のみを手
作業で行なってもよい。
合関係について必要なものではなく、例えば、部品間の
結合であって各部品の取り扱うデータ形式が同一であれ
ば仲介ルーチンは必要ない。この場合、マトリクスのう
ち当該部品間の関係に相当する部分は空欄とすればよ
い。
示用部品・入力用部品には限定されず、コンピュータ外
部との通信用部品など所望の種類の部品を設定すること
ができる。また、部品の選択や結合関係の設定はポイン
ティングデバイスによらず、部品の番号をキーボードか
ら入力するなど他の態様で行なってもよい。
GUIソフトウェアの開発を効率的に行なうソフトウェ
ア開発支援装置を提供することができる。
概念的構成を示す機能ブロック図
おける静的GUI部品のデータ構造
おける静的GUI部品の開発の手順を示すフローチャー
ト
おける部品の一覧表示及び選択のためのウインドウ(Sel
ect Panel)及び部品の配置のためのウインドウ(Palett
e) の表示例
おける内部データ編集のためのウインドウの表示例
おける表示用GUI部品の編集に関するデータを示す概
念図
おけるマトリクスb7の例
おける表示用部品の開発の手順を示すフローチャート
おけるデータ型の一覧表示のためのウインドウの表示例
における部品の一覧表示及び選択のためのウインドウ(S
elect Panel)及び配置のためのウインドウ(Palette) の
表示例
における部品のデータ編集のためのウインドウの表示例
における入力用GUI部品の編集に関するデータを示す
概念図
における入力用部品の開発の手順を示すフローチャート
におけるデータ型の一覧表示及び選択のためのウインド
ウの表示例
における部品の一覧表示及び選択のためのウインドウ(S
elect Panel)及び配置のためのウインドウ(Palette) の
表示例
における部品のデータ編集のためのウインドウの表示例
における部品間の関連付けに関するデータを示す概念図
におけるマトリクスd2の例
におけるテーブルd5の例
における部品間の関連付け処理の手順を示すフローチャ
ート
における操作を及ぼす部品の一覧表示のためのウインド
ウの表示例
における操作の影響を受ける部品の一覧表示を表すウイ
ンドウの表示例
におけるイベントの一覧表示のためのウインドウの表示
例
における処理ルーチンの記述のためのウインドウの表示
例
における部品と処理ルーチンの関連付けのためのウイン
ドウの表示例
Claims (6)
- 【請求項1】 コンピュータのソフトウェアを構成する
部品を組合せてソフトウェアを開発するソフトウェア開
発支援装置において、 各部品に関するデータ及び処理内容を部品に付属する内
部データとして格納する部品格納手段と、 所望の部品を選択する選択手段と、 選択した部品の内部データを編集する編集手段と、 選択された部品及び選択された部品の内部データに基づ
いてソフトウェアの動作を実現する実現手段を有するこ
とを特徴とするソフトウェア開発支援装置。 - 【請求項2】 部品の内部データは、当該部品が組み込
まれるソフトウェアによって異ならない非依存データ
と、当該部品が組み込まれるソフトウェアによって異な
る依存データに区分され、 前記編集手段は、この依存データを編集するように構成
されたことを特徴とする請求項1記載のソフトウェア開
発支援装置。 - 【請求項3】 部品と他の要素との結合関係を設定する
結合手段を有し、 前記実現手段は、前記結合関係を前提に前記ソフトウェ
アの動作を実現するように構成されたことを特徴とする
請求項1記載のソフトウェア開発支援装置。 - 【請求項4】 前記結合関係の対象となり得る前記各部
品と前記各要素との組合せごとの仲介ルーチンを格納す
る仲介ルーチン格納手段と、 前記結合関係が設定された場合に、必要な前記仲介ルー
チンを特定する特定手段とを有し、 前記実現手段は、特定された前記仲介ルーチンに基づい
て前記ソフトウェアの動作を実現するように構成された
ことを特徴とする請求項3記載のソフトウェア開発支援
装置。 - 【請求項5】 表示画面とポインティングデバイスを有
し、 前記各部品を所定の図形によって前記表示画面に表示
し、 前記選択手段は、前記ポインティングデバイスによって
前記図形をポイントすることによって前記選択を行な
い、 前記結合手段は、選択された各部品の前記図形に対して
所定の操作を行なうことによって前記結合関係を設定す
るように構成され、 前記ポインティングデバイスによって所定の操作を行な
うことによって前記図形を前記表示画面上の所望の位置
に配置する配置手段を有することを特徴とする請求項3
記載のソフトウェア開発支援装置。 - 【請求項6】 前記部品は少なくとも、 表示画面上の所定の位置に表示され続ける静的部品と、 ソフトウェア内の情報を表示するための表示用部品と、 ソフトウェアに対して情報を入力するための入力用部品
と、を含むことを特徴とする請求項1記載のソフトウェ
ア開発支援装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP21976094A JP3697274B2 (ja) | 1994-09-14 | 1994-09-14 | ソフトウェア開発支援装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP21976094A JP3697274B2 (ja) | 1994-09-14 | 1994-09-14 | ソフトウェア開発支援装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0883172A true JPH0883172A (ja) | 1996-03-26 |
| JP3697274B2 JP3697274B2 (ja) | 2005-09-21 |
Family
ID=16740578
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP21976094A Expired - Fee Related JP3697274B2 (ja) | 1994-09-14 | 1994-09-14 | ソフトウェア開発支援装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3697274B2 (ja) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH1139145A (ja) * | 1997-07-24 | 1999-02-12 | Casio Comput Co Ltd | プログラム構築支援装置及び記憶媒体 |
| JP2000259400A (ja) * | 1999-03-09 | 2000-09-22 | Nippon Steel Corp | ソフトウェアの自動生成装置、その自動生成方法、及び記録媒体 |
| JP2008003648A (ja) * | 2006-06-20 | 2008-01-10 | Fuji Xerox Co Ltd | 操作画面生成方法、操作画面生成装置、電子機器、プログラム |
| JP2008021095A (ja) * | 2006-07-12 | 2008-01-31 | Nippon Telegr & Teleph Corp <Ntt> | 連携シナリオ作成支援システム及びその方法並びにプログラム |
| JP2022185500A (ja) * | 2021-06-02 | 2022-12-14 | シンメトリー・ディメンションズ・インク | 情報処理装置及びソフトウェア生成支援方法 |
-
1994
- 1994-09-14 JP JP21976094A patent/JP3697274B2/ja not_active Expired - Fee Related
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH1139145A (ja) * | 1997-07-24 | 1999-02-12 | Casio Comput Co Ltd | プログラム構築支援装置及び記憶媒体 |
| JP2000259400A (ja) * | 1999-03-09 | 2000-09-22 | Nippon Steel Corp | ソフトウェアの自動生成装置、その自動生成方法、及び記録媒体 |
| JP2008003648A (ja) * | 2006-06-20 | 2008-01-10 | Fuji Xerox Co Ltd | 操作画面生成方法、操作画面生成装置、電子機器、プログラム |
| JP2008021095A (ja) * | 2006-07-12 | 2008-01-31 | Nippon Telegr & Teleph Corp <Ntt> | 連携シナリオ作成支援システム及びその方法並びにプログラム |
| JP2022185500A (ja) * | 2021-06-02 | 2022-12-14 | シンメトリー・ディメンションズ・インク | 情報処理装置及びソフトウェア生成支援方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP3697274B2 (ja) | 2005-09-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6715132B1 (en) | Datasheet browsing and creation with data-driven datasheet tabs within a microcontroller design tool | |
| KR100475432B1 (ko) | 그래픽 사용자 인터페이스의 디자인 변경 방법 및 이를 위한 기록매체 | |
| CN1105964C (zh) | 用于可视编程中显示功能对象的方法 | |
| JPH09222977A (ja) | アプリケーション用ユーザ・インタフェース設計の規則に基づく方法及び装置 | |
| TWI407425B (zh) | 產生使用者介面相關之一物件屬性的方法 | |
| US20060107220A1 (en) | Method and system for displaying an annotated file | |
| US6070006A (en) | Object oriented software development tool for creation of new class(es) | |
| CN113238749A (zh) | 一种可视化人机交互设计平台的工作方法 | |
| JP3697274B2 (ja) | ソフトウェア開発支援装置 | |
| JPH06348499A (ja) | オブジェクト指向プログラミング支援装置及びオブジェクト指向プログラミング支援方法 | |
| JP3254793B2 (ja) | 対話処理システムの制御方法 | |
| CN101364398B (zh) | 产生使用者接口相关的对象属性的方法 | |
| JP4563551B2 (ja) | プログラム編集装置及びプログラム編集方法 | |
| JP2004078375A (ja) | 情報処理装置および帳票処理方法およびコンピュータが読み取り可能な記憶媒体およびプログラム | |
| JPH0954688A (ja) | Gui設計支援方法 | |
| JP2001051771A (ja) | 画像処理システム及び方法 | |
| CN100511102C (zh) | 人机接口的预设像素编辑方法及其编辑器 | |
| JP3376950B2 (ja) | 画面生成装置 | |
| JP2000020294A (ja) | プログラム開発支援装置、及びコンピュータ読み取り可能な記録媒体 | |
| JPH07334358A (ja) | 手順編集装置 | |
| JP2000047777A (ja) | プログラム式表示装置用の操作画面作成方法 | |
| CN116149652A (zh) | 一种基于vba的汽车仪表人机交互软件设计方法 | |
| JPH086775A (ja) | データ処理装置及びプログラム処理方法 | |
| JPH07200611A (ja) | データ処理装置及びデータ処理方法 | |
| JP2000215035A (ja) | プログラム式表示装置用の操作画面作成方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041207 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050204 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050308 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050428 |
|
| 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: 20050628 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050704 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090708 Year of fee payment: 4 |
|
| LAPS | Cancellation because of no payment of annual fees |