JPH10320207A - オブジェクト指向アプリケーション開発システムおよび方法 - Google Patents

オブジェクト指向アプリケーション開発システムおよび方法

Info

Publication number
JPH10320207A
JPH10320207A JP10107189A JP10718998A JPH10320207A JP H10320207 A JPH10320207 A JP H10320207A JP 10107189 A JP10107189 A JP 10107189A JP 10718998 A JP10718998 A JP 10718998A JP H10320207 A JPH10320207 A JP H10320207A
Authority
JP
Japan
Prior art keywords
class
information
model
code
implementation
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
Application number
JP10107189A
Other languages
English (en)
Inventor
Christina Lau
クリスティナ・ロウ
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH10320207A publication Critical patent/JPH10320207A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse

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)
  • Devices For Executing Special Programs (AREA)

Abstract

(57)【要約】 【課題】 ユーザまたは開発者によって準備されたコー
ド拡張を再利用するための方法およびシステムを開示す
る。 【解決手段】 拡張は、メソッド実装として処理され、
永続記憶モデル内のメソッド本体(MethodBody)に格納
される。したがって、オブジェクト内のメタデータに対
して変更が行われた後にソース・コードが再生成される
時には、そのメソッド本体属性が、無変更のまま取り出
され、ユーザまたは開発者が、編集されるオブジェクト
に拡張を再入力する必要がなくなる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、全般的にはデータ
処理の分野に関し、具体的には、オブジェクト指向プロ
グラミング開発システムの分野に関する。
【0002】
【従来の技術】オブジェクト指向開発ツールには、一般
的に、プログラミング・アプリケーションの中核部分を
構築するツールが含まれる。通常、ビルダ・ツールは、
スケルトン・コードの作成を求める開発者からある量の
入力を集めるユーザ・インターフェースを有する。この
入力は、メタデータである。一般的に言って、メタデー
タとは、サービスと情報の両方を記述できる、自己記述
的な情報である。通常、生成されるコードは、完全なア
プリケーションにはならないので、ユーザまたは開発者
が、ソース・エディタを使用することによって、生成さ
れたコードを拡張しなければならない。このような拡張
の例が、従業員の給料を計算するビジネス・ロジックで
ある。コード拡張の用意を終えた開発者は、従来のコン
パイラを使用してアプリケーションの構築すなわちコン
パイルとリンクを行う。
【0003】従来の方法に伴う問題の1つが、メタデー
タが変更された時に、ユーザがコードを再生成しなけれ
ばならないことである。再生成によって、上記のコード
拡張が上書きされ、したがって、手入力または別のファ
イルからの切取および貼付のいずれかによって、コード
再生成のたびに拡張を再入力する必要がある。そうしな
いと、エディタは単純に空白を入力し、前に入力された
コード拡張が失われる。
【0004】もう1つの問題は、従来のビルダが、言語
固有のコードを生成することである。たとえば、ある形
式のアプリケーション・ウィザードは、C++コードだけ
を生成し、したがって、生成されるコードは、C++コン
パイラでなければ使用できない。
【0005】
【発明が解決しようとする課題】したがって、本発明の
目的は、上記の編集されたコードのすべての永続記憶と
回復を可能にするシステムを提供することである。本発
明のもう1つの目的は、このようなコード拡張が、記述
される言語から独立した形でのコード拡張の記憶を可能
にするシステムを提供することである。本発明のもう1
つの目的は、複雑なアプリケーションの開発のサポート
において、アプリケーション開発メタデータの処理と記
憶のために階層化データ・モデルを使用して、メタデー
タとして編集済みコードを記憶するための機構を提供す
ることである。このようなデータ・モデルの一般的な形
態は、カナダ国特許第2201278号明細書に記載さ
れている。
【0006】
【課題を解決するための手段】したがって、本発明は、
スケルトン・コードを生成するコンポーネントを有する
オブジェクト指向開発システムにおいて、メモリ内記憶
区域および永続記憶区域を提供するステップと、インタ
ーフェース定義情報および実装情報をメモリ内記憶区域
に保存するステップと、インターフェース定義情報およ
び実装情報に対する更新を含む修正されたファイルの用
意の後のユーザ・アプリケーションからの指示の際に、
インターフェース定義情報および実装情報をメタデータ
として永続記憶区域に記憶するステップと、永続記憶区
域からインターフェース定義情報および実装情報を回復
するステップと、インターフェース定義情報および実装
情報を修正されたファイルに書き込むステップとを含
む、インターフェース定義情報および実装情報を格納す
る方法を提供する。
【0007】本発明は、さらに、メモリ内データ記憶区
域と、永続データ記憶区域と、記憶区域のいずれかでの
メタデータとしてのインターフェース情報および実装情
報の記憶能力を提供するためのアプリケーション・プロ
グラム・インターフェースと、少なくとも1つのコンポ
ーネントのコードを変更するためのエディタと、永続記
憶区域から情報を取り出すための手段とを含む、スケル
トン・コードを生成するコンポーネントを提供するオブ
ジェクト指向アプリケーション開発システムを提供す
る。
【0008】
【発明の実施の形態】本発明の好ましい実施例では、オ
ブジェクト指向メモリ内データ・モデルとオブジェクト
指向永続データ・モデルの間の対話を使用し、ビジネス
・ロジックを含むインターフェース情報と実装情報の両
方をデータ・モデルに格納するためのアプリケーション
・プログラミング・インターフェース(API)を提供す
る。オブジェクト・ビルダ・ツールは、アプリケーショ
ン開発環境でユーザがビジネス・オブジェクトを構築す
るのを助ける。APIは、ユーザ・インターフェース・コ
ンポーネントならびに、たとえばパーサやインポータな
ど、ユーザ・インターフェースの一部ではないコンポー
ネントによって呼び出すことができる。オブジェクト・
ビルダ・ツールを走行させるユーザは、オブジェクト指
向永続データ・モデルのインターフェース定義言語(ID
L)ファイルの内容を表示し、修正することができる。
オブジェクト・ビルダ・ツール内から、ユーザは、メソ
ッド実装を編集することもできる。メソッド実装は、永
続データ・モデルに記憶される。ユーザが、ソース・コ
ードを再生成し、インターフェース定義の情報を修正す
る場合、そのユーザは、前に追加したコードを含むイン
ターフェースと実装を再生成することができ、前に追加
したコードは、オブジェクト・ビルダ・ツールの永続デ
ータ・モデルから取り出される。
【0009】ここで図1を参照すると、本発明によるオ
ブジェクト指向永続データ・モデルとオブジェクト指向
開発ツールの全体的なアーキテクチャが示されている。
要素1には、前に用意されたコードを処理するさまざま
なパーサおよびインポータが含まれる。たとえば、ユー
ザは、要素1のIDLパーサを呼び出して、IDLファイルを
解析し、その結果をメモリ内モデル4に格納することが
できる。SmartGuidesまたはウィザードと称する場合も
あるさまざまなビルダ・ツール2は、ユーザまたは開発
者に入力を促し、その後、ビルダ・ツールのメモリ内モ
デル4にメタデータを格納する自動コード生成機構の形
になっている。追加コードも、たとえば図2に示された
編集ペインによって、オリジナルのファイルか、要素1
のパーサまたはインポータもしくはビルダ・ツール2の
SmartGuidesによって用意されたファイルに、ユーザが
直接に入力できる。これらの方法によって用意されるコ
ードのすべてが、永続データ・モデル5に保存される。
メモリ内モデルは、インターフェース定義言語とJava定
義を表すための抽象化を提供し、やり直し機能と問い合
わせをサポートし、パーサおよびインポータと、ウィザ
ードおよびビューアと、エディタとを、オブジェクト指
向の永続データ・モデル5での実装の詳細から分離す
る。永続データ・モデルは、とりわけ、永続性管理、コ
ード生成および開発ビルドのための基本クラスの組を提
供する。各ツールは、それ自体のデータを記憶するため
に、これらの基本クラスの具象実装を提供することが好
ましい。永続データ・モデル5によって管理される永続
データは、たとえばハード・ディスク装置などの移動記
憶装置であることが好ましい永続記憶6に記憶される。
【0010】図2は、本発明の好ましい実施例を使用す
るソフトウェアで実施される表示ウィンドウを示す図で
ある。メイン・ウィンドウ20は、開発システムの主要
な機能を使用しているユーザに表示されるが、これに
は、当業者に既知のツリー・ビューでファイルのリスト
を表示するファイル・ペイン21が含まれる。各ファイ
ルは、ツリー内のノードによって表される。ファイル・
ノード、たとえば「Dog」は、インターフェース定義言
語(IDL)ファイルまたはJavaファイルであることが好
ましい、オブジェクト指向開発システムによって使用可
能なファイルを表す。ファイル・ペイン21内のツリー
は、1つまたは複数のノードを表すために、既知の形で
展開縮小することができる。たとえば、IDLファイル・
ノードは、IDLファイル内に含まれるモジュールやイン
ターフェースを表すノードまで展開することができる。
もう1つの例として、Javaファイル・ノードは、Javaフ
ァイル内に含まれるインターフェースを表すノードまで
展開することができる。
【0011】各ノードには、そのノードに関して呼び出
すことのできる動作が関連付けられている。たとえば、
ノード「Animal」が選択されている場合、ノードに関連
する対応するビルダを起動する動作「Open」が、たとえ
ばアクション・バーなど既知の方法によって使用可能に
なる。このビルダを使用して、ユーザは、たとえば属性
の名前、属性の型、メソッド名、パラメータ、構築され
る型などのメタデータを入力できる。ファイル・ペイン
21は、メイン・ウィンドウ20内の他のペインのすべ
てと同様に、ペイン内で表される情報が画面上のペイン
のサイズを超える場合に、既知の方法によってスクロー
ル可能である。
【0012】関係ペイン22には、ファイル・ペイン2
1で選択されたノードと、継承によって関連付けられた
他のファイルおよびモジュールとの間の継承関係が表示
される。たとえば、ファイルまたはモジュールがファイ
ル・ペイン21内で選択されている場合、そのファイル
またはモジュールに含まれるすべてのインターフェース
とその継承関係が、関係ペイン22に表示される。ファ
イル・ペイン21でインターフェース・ノードが選択さ
れている場合には、関係ペイン22には、そのインター
フェース・ノードだけが表示される。メソッド・ペイン
23には、関係ペイン22で選択されているクラスのメ
ソッドのリストが表示される。たとえば、関係ペイン2
2でクラス「Dog」が選択されている場合、メソッド・
ペイン23には、クラス「Dog」に関して実装されてい
るメソッド、すなわち、「bark」、「sleep」および「e
at」が表示される。
【0013】編集ペイン24には、エディタ・ウィンド
ウが表示され、これによって、ユーザが、メソッド・ペ
イン23で選択されているメソッドのメソッド実装を修
正するか、入力することができるようになる。図示の例
では、メソッド・ペイン23で「bark」が選択されてお
り、そのメソッド実装のコードが、編集ペイン24に表
示されている。メソッド実装は、本発明の好ましい実施
例によれば図1の永続データ・モデル5に格納されるの
で、メソッド・ペイン23でメソッドを選択するという
動作によって、格納されたメソッド実装を永続データ・
モデルの機能によって取り出すことができ、編集ペイン
24に表示することができる。開発中のアプリケーショ
ンのソース・コードを再生成する時には、必ず、編集ペ
イン24のメソッド実装が永続データ・モデル5に保管
される。
【0014】図3は、本発明の好ましい実施例の実施に
使用される派生クラスのグループを示す図である。図3
に示されたクラスのすべてが、スーパークラスであるDM
Persistent Object31から派生する。クラスDMMethod
32は、メソッドのモデル化に使用され、このクラスに
は、下の表に示された属性が含まれる。これらの属性の
ほとんどは、当業者に既知の形で使用されるが、属性Me
thodBodyは、図2の編集ペイン24に示された編集セッ
ションでユーザが入力するメソッド実装であり、Method
Bodyが、クラスDMMethodの各メンバの一体化された部分
として保管され、したがって、ソース・コードの再生成
のためにいつでも回復可能である。MethodBodyは、文字
列バイナリ・ラージ・オブジェクト(文字列blob)とし
て記憶されることが好ましい。文字列として保管するこ
とによって、MethodBodyを文字列として回復できるよう
になり、したがって、MethodBodyは、その文字列を表す
言語から独立になる。この文字列には、たとえばSmallt
alk、C++、Javaなどの適当な言語の文を含めることがで
きる。したがって、ユーザが作業している環境に無関係
に、ユーザは、その環境に適したコードをMethodBodyに
保管し、取り出すことができる。
【0015】
【表1】
【0016】クラスDMArg33は、パラメータのモデル
化に使用され、このクラスには、パラメータの名前を定
義する属性name、intなどのパラメータの型を定義する
属性OB::Typestringおよび、パラメータの方向すなわち
in、outまたはinoutを定義する方向属性が含まれる。ク
ラスDMArg33は、当業者に既知の形で動作する。
【0017】クラスDMType34は、型をモデリングする
クラスであり、これには、下で説明するクラスのDMパー
トに関連する属性partと、修飾子が含まれる。修飾子
は、当業者に既知の形で使用され、これには、たとえば
*やconstなどの適当な宣言修飾子のすべてを含めること
ができる。クラスDMFile36は、IDLファイル用のイン
クルード・ファイルのリストか、Javaファイル用のimpo
rt文のリストをモデル化するのに使用される。クラスDM
File36は、唯一のプロパティとして属性nameを有し、
この属性は、インクルード・ファイルの名前またはimpo
rt文である。
【0018】スーパークラスDMNameScope35は、図1
のメモリ内モデル4および永続データ・モデル5で使用
されるクラス名のスコープを提供する。
【0019】クラスDMNSGroup37は、グループ化に用
いる構造体を表し、名前スコープを定義するクラスであ
る。これは抽象的な概念であり、その具象実装のクラス
OBFileGroup39が、たとえばIDLファイルやJavaファイ
ルのファイル・レベル構造のモデリングに使用される。
クラスOBFileGroup39には、たとえばクラスOBFile4
2、クラスOBModule43、クラスOBInterface44、ク
ラスOBSimpleType45、クラスOBException46、クラ
スOBTypedef48、クラスOBEnum50、クラスOBStruct
52、クラスOBUnion54など、メモリ内データ・モデ
ルに使用されるクラスのコレクションを含めることがで
きる。クラスOBFileGroup39は、クラスOBFile42と
1対1の関係を有し、クラスOBModule43、クラスOBIn
terface44、クラスOBSimpleType45、クラスOBExcep
tion46、クラスOBTypedef48、クラスOBEnum50、
クラスOBStruct52およびクラスOBUnion54のそれぞ
れに対して1対多の関係を有する。これらの関係は、所
有権関係であり、OBFileGroupオブジェクトが破棄され
る時には、それに含まれる全要素も破棄される。
【0020】クラスDMModel38は、モデル・インスタ
ンスのルートを表す。モデルのユーザは、クラスDMMode
l38のメソッドを使用して特定のモデル・インスタン
スに接続する。
【0021】クラスOBApplicationFamily40は、たと
えばCD-ROMディスクなど、製品配布のための記憶媒体に
保管されるオブジェクトのモデルである。これらのオブ
ジェクトは、その後、当技術分野で既知の通り、ソフト
ウェア導入ステップで目標計算機に選択的に導入され
る。
【0022】クラスDMPart41は、さまざまな関係によ
る他のモデル・オブジェクトに関するパート構造とモデ
ル挙動である。この挙動モデルには、たとえば、継承、
データ・メンバおよびメソッドが含まれる。
【0023】本発明の好ましい実施例では、複数のクラ
スがクラスDMPart41から派生している。クラスOBFile
42は、IDLファイルまたはJavaファイルのモデリング
に使用され、クラスOBFileGroup39のインスタンス化
のそれぞれに、1つのクラスOBFile42だけが含まれ
る。OBFileクラスの属性を、下の表に示す。
【0024】
【表2】
【0025】クラスOBModule43は、モジュールのモデ
ル化に使用され、このクラスには、nameとOB::ForwardD
eclという属性が含まれ、OB::ForwardDeclは、前方宣言
のリストを含むバイナリ・ラージ・オブジェクトであ
る。
【0026】クラスOBInterface44は、インターフェ
ースのモデル化に使用される。このクラスの属性には、
name、OBInterface::isPublicと、上で説明したOB::For
wardDeclが含まれる。属性OBInterface::isPublicは、
本発明のJava実装で、そのインターフェースがpublicイ
ンターフェースであるかどうかを示すフラグである。
【0027】クラスOBInterface44には、Javaアプリ
ケーションとインターフェース定義言語アプリケーショ
ンの両方のための属性宣言、メソッド宣言および定数宣
言を含めることができる。インターフェース定義言語ア
プリケーションの場合、たとえばTypedef、Enum、Struc
tおよびUnionなどの型宣言と、Exception宣言も含める
ことができる。クラスOBInterface42は、インターフ
ェース・レベルの定数、属性、メソッド、typedef、列
挙、構造体、共用体、例外およびインターフェースの親
のスコープを指定する。図5に、好ましい実施例での、
OBInterfaceからインターフェース・レベル・オブジェ
クトすなわちDMMethod、DMDataMember、OBException、O
BEnum、OBTypedef、OBStructおよびOBUnionへのナビゲ
ーションのための関係名を示す。
【0028】クラスOBSimpleType45は、永続データ・
モデルによって定義されていない基本データ型のモデル
化に使用される。そのような基本データ型の例には、イ
ンターフェース定義言語の「any」や「octet」、Javaの
基本データ型「byte」が含まれる。クラスOBSimpleType
45は、基本データ型の名前が格納されるプロパティを
有する。
【0029】クラスOBException46は、オブジェクト
指向プログラミング技術に共通する形でIDL例外定義を
モデル化するのに使用される。このクラスには、例外の
名前が格納される。
【0030】クラスOBTypedef48は、IDLTypeDef定義
をモデル化するのに使用される。このクラスには、Type
Defの名前であるnameと、このTypeDefが、たとえばshor
tなどの基本型、バウンデッド・シーケンス、アンバウ
ンデッド・シーケンス、配列のうちのいずれのTypeDef
であるかを示すフラグであるtype qualifier(型修飾
子)と、定義される型がバウンデッド・シーケンスか配
列の場合の要素数を示すsizeという3つのプロパティが
含まれる。size属性は、定義されるTypeDefが基本型ま
たはバウンデッド・シーケンスの場合には不要である。
【0031】クラスOBEnum50、クラスOBStruct52お
よびクラスOBUnion54は、IDLの列挙型、構造体および
共用体をモデル化するのに使用される。クラスOBTypede
f48、クラスOBEnum50、クラスOBStruct52および
クラスOBUnion54のすべてが、対応する永続データ・
モデル・クラスであるクラスDMTypedef47、クラスDME
num49、クラスDMStruct51およびDMUnion53を介し
て動作する。好ましい実施例で、名前が「OB」から始ま
るクラスは、名前が「DM」から始まるスーパークラスの
具象実装である。DMスーパークラス自体は、インスタン
ス化されない。
【0032】クラスDMSubpart60は、モデルの型であ
る。DMDataMember61は、クラスDMSubpart60の具象
実装である。DMDataMember61は、本発明の好ましい実
施例ではオブジェクト・ビルダ・ツールによってインス
タンス化される。DMDataMember61は、定数、属性、構
造体、データ・メンバおよび列挙定数である列挙型のモ
デル化に使用される。好ましい実施例では、DMDataMemb
er61に、下の表に示された属性が含まれる。
【0033】この表のGetImplは、オブジェクトの本質
的な状態を表す属性に関するget実装を格納した文字列
である。SetImplは、オブジェクトの本質的な状態を表
す属性に関するset実装を格納した文字列である。
【0034】
【表3】
【0035】本明細書で説明する本発明の好ましい実施
例では、オブジェクト・ビルダ・ツールによって永続デ
ータ・モデル内に作成されるオブジェクトのそれぞれ
が、ユニークな名前を有する。このユニークな名前は、
オブジェクト名にそれが格納されるパスを連結すること
によって形成される。IDLファイルまたはJavaファイル
が追加される時には、グループを表すOBFileGroupオブ
ジェクトとファイルを表すOBFileオブジェクトが作成さ
れる。たとえば、「F1.idl」を追加するために、このシ
ステムでは、名前が「::F1」のOBFileGroupオブジェク
トが作成される。「::」は、永続データ・モデル・フレ
ームワークによって付加される。OBFileObjectは、OBFi
leGroupオブジェクトによってスコープを指定されるの
で、そのユニークな名前は「::F1::F1」になる。インタ
ーフェースが追加される場合、たとえば「Person」が
「F1.idl」に追加されるならば、OBInterfaceオブジェ
クトが作成され、そのユニークな名前は「::F1::F1::Pe
rson」になる。このユニークな名前の命名方式を用いる
と、システムは、ファイル、モジュールおよびインター
フェースにまたがる名前スコープを使用できるようにな
る。たとえば、「F2.Idl」にも「Person」インターフェ
ースが含まれる場合、そのユニークな名前は「::F2::F
2::Person」になる。したがって、所望のモデル・オブ
ジェクトは、それが配置されるパート・グループでその
ユニークな名前を探索することによって、必ず突き止め
ることができる。
【0036】図3に関して上で説明した永続モデル・ク
ラスは、開発中のプログラミング・システムを構成する
オブジェクトの記憶を処理する。これらのクラスは、デ
ータ・ビットのストリーム・インとストリーム・アウト
を処理する。本発明では、永続クラスの上に位置するメ
モリ内モデルも使用する。メモリ内モデルは、図1に示
されたビューア、エディタ、パーサおよびインポータの
ための簡単な追加、更新、削除および問い合わせのイン
ターフェースを提供する。メモリ内モデルによって、各
コンポーネントが、その基礎となる永続データ・モデル
実装から分離される。
【0037】メモリ内モデルは、たとえば「F1」などの
ユーザ・フレンドリな形式から、たとえば「::F1::F1」
などの永続モデル形式への変換を処理する層である。メ
モリ内モデルは、キャッシュとしても働く。すなわち、
メモリ内モデルには、さまざまなユーザ・インターフェ
ース・ダイアログによって集められたデータが格納され
る。メモリ内モデルの各クラスは、それに必要なメタデ
ータのための入出力APIを有する。メタデータは、ユー
ザまたは開発者が、たとえばユーザ・ダイアログ・ボッ
クスのOKボタンを押すことなどによって、画面上で行っ
た変更を採用することを示すまでメモリ内モデル・オブ
ジェクト内に保存される。変更の採用が指示された時点
で、適当な永続モデル・オブジェクトとモデル・オブジ
ェクト関係が作成される。ユーザが、たとえばユーザ・
インターフェース・ダイアログのキャンセル・ボタンを
クリックすることによって、変更を永久的にしないこと
を示す場合には、システムは、永続モデル・オブジェク
トとモデル関係をインスタンス化しない。
【0038】好ましい実施例では、本発明のメモリ内モ
デルに、以下のクラスが含まれる。
【0039】クラスIXORepositoryは、全体としてのモ
デルのカプセル化を提供するクラスである。これによっ
て、DMModelオブジェクトが作成され、記憶され、モデ
ルに含まれるすべてのファイルを突き止めるか、モデル
内で名前によって特定のファイルを見つけるための、当
技術分野で既知の手段による問い合わせ機能が提供され
る。
【0040】クラスIXOFileGroupは、OBFileGroupオブ
ジェクトを作成し、記憶するクラスである。これによっ
て、特定のファイル・グループに関連するインターフェ
ースおよび実装のためのコードを生成するために呼び出
すことのできるemitメソッドが提供される。
【0041】クラスIXOFileは、IDLファイルまたはJava
ファイルを表すOBFileオブジェクトを作成し、記憶する
クラスである。このクラスでは、include文またはimpor
t文のそれぞれについてDMFileオブジェクトも作成され
る。このクラスによって、特定のファイル・レベルでス
コープを指定されるモジュール、インターフェース、定
数、typedef、構造体、列挙型、共用体および例外の追
加と問い合わせのメソッドが提供される。
【0042】クラスIXOModuleは、IDLモジュールを表す
OBModuleモジュールを作成し、記憶するクラスである。
このクラスによって、特定のモジュール・レベルでスコ
ープを指定されるモジュール、インターフェース、定
数、typedef、構造体、列挙型、共用体および例外を追
加するメソッドと問い合わせるメソッドが提供される。
クラスIXOInterfaceは、IDLインターフェースまたはJav
aインターフェースを表すOBInterfaceオブジェクトを作
成し、記憶するクラスである。このクラスによって、特
定のインターフェース・レベルでスコープを指定される
属性、メソッド、定数、typedef、構造体、列挙型、共
用体および例外の追加、問い合わせ、および検索を行う
メソッドが提供される。クラスIXOInterfaceは、特定の
インターフェースの親インターフェースを追加するメソ
ッドと問い合わせるメソッドも提供する。親インターフ
ェースが追加される時には、親クラスからオーバーライ
トするか実装する必要があるメソッドのそれぞれについ
て、DMMethodオブジェクトが作成され、このクラスに追
加される。
【0043】クラスIXOTypeは、型定義をカプセル化す
るクラスであり、属性の型、メソッドの戻り型、パラメ
ータの型、構造体データ・メンバの型、例外データ・メ
ンバの型、共用体データ・メンバの型およびtypeDefの
型のそれぞれについて、IXOTypeオブジェクトが作成さ
れる。これらのオブジェクトのいずれかを永続データ・
モデルに追加するためには、その型を表すDMPartオブジ
ェクトが、永続モデルにすでに追加されていなければな
らない。IXOTypeクラスによって、型を表すDMPartを突
き止める動作、または、型を表す空のOBInterfaceオブ
ジェクトを追加する動作がもたらされる。
【0044】クラスIXOMemberは、DMDataMemberを作成
し、記憶し、これをDMPartと関連付けるクラスである。
【0045】クラスIXOConstantは、IXOMemberから派生
したクラスである。これは、IDL定数を表すのに使用さ
れる。各IDL定数は、名前、型および値を有する。この
クラスは、メソッドIXOMember::to_cdmを呼び出して、
永続データ・モデルのDMDataMemberオブジェクトを作成
し、その後、必要な定数宣言修飾子と定数値を追加す
る。
【0046】クラスIXOAttributeは、IXOConstantから
派生し、IDL属性またはJavaメンバを表すのに使用され
るクラスである。任意選択として、このクラスがJavaデ
ータ・メンバを表す場合には、このクラスの属性に初期
設定値を含めることもできる。
【0047】クラスIXOOperationは、IDLメソッドまた
はJavaメソッドを表すDMMethodオブジェクトを作成し、
記憶し、そのメソッドに関連するパラメータのリストを
追加するメソッドと問い合わせるメソッドを提供する。
また、対応するメソッドのメソッド実装を取得するメソ
ッドと設定するメソッドも提供する。
【0048】クラスIXOParameterは、IDLパラメータま
たはJavaパラメータを表す、図3のクラスDMArg33の
オブジェクトを作成し、記憶するクラスである。
【0049】クラスIXOExceptionは、IDL例外を表すク
ラスOBException46のオブジェクトを作成し、記憶す
るクラスである。クラスIXOExceptionは、特定の例外に
よってスコープを指定される例外メンバのリストを追加
するメソッドと問い合わせるメソッドも提供する。ま
た、このクラスは、例外メンバを作成する作業をIXOMem
berクラスに委任する。
【0050】クラスIXOEnumは、IDL列挙型を表すクラス
OBEnum50のオブジェクトを作成し、記憶するクラスで
ある。この列挙型によってスコープを指定される列挙定
数およびメンバのリストを追加するメソッドと問い合わ
せるメソッドをこのクラスが提供する。このクラスは、
その列挙定数を作成する作業をIXOMemberクラスに委任
する。
【0051】クラスIXOStructは、IDL構造体を表すクラ
スOBStruct52のオブジェクトを作成し、記憶するクラ
スである。このクラスによって、特定の構造体によって
スコープを指定される構造体メンバのリストを追加する
メソッドと問い合わせるメソッドが提供される。このク
ラスは、その構造体メンバを作成する作業をIXOMember
に委任する。
【0052】クラスIXOUnionは、IDL共用体を表すクラ
スOBUnion54のオブジェクトを作成し、記憶するクラ
スである。この共用体によってスコープを指定される共
用体メンバのリストを追加するメソッドと問い合わせる
メソッドをこのクラスが提供する。このクラスは、その
共用体メンバを作成する作業をIXOUnion_memberクラス
に委任する。
【0053】クラスIXOUnion_memberは、IXOMemberから
派生し、IDL共用体メンバを表すのに使用される。IDL共
用体メンバのそれぞれが、caseラベル、名前および型を
有する。このクラスは、メソッドIXOMember::to_cdmを
呼び出し、このメソッドは、共用体メンバのDMDataMemb
erオブジェクトを作成し、こうして作成されたDMDataMe
mberオブジェクトにcaseラベルを追加する。最後に、ク
ラスIXOTypeDefは、IDLのtypedefを表すクラスOBTypede
f48のオブジェクトを作成し、記憶するクラスであ
る。
【0054】図4は、IDLファイルtest.IDLと、ファイ
ルtest.IDL内の要素のそれぞれのために本発明の好まし
い実施例によってインスタンス化されるモデル・オブジ
ェクトの例を示す図である。この図の左側には、上で説
明した要素のうちのいくつかを実装するコード断片が示
され、右側には、本発明の好ましい実施例で作成される
オブジェクトが示されている。オブジェクトは、「型
(システムによって作成される、その型のインスタン
ス)」として示されている。文「#include "Somobj.id
l"」は、システムに、ヘッダ・ファイルSomobj.idlを追
加し、オブジェクトOBFileGroupのインスタンスtest.id
lを作成することを指示する文である。また、オブジェ
クトOBFileのインスタンスtest.idlと、オブジェクトDM
FileのインスタンスSomobj.idlも作成される。同様に、
他のクラスのインスタンスは、ファイルtest.idl内の文
のそれぞれについて、システムによって作成される。
【0055】例 以下に、従来技術による通常のアプリケーションによっ
て作成されるコード断片の例と、本発明の好ましい実施
例によって作成される同様のコード断片を示す。
【0056】たとえば、開発者が、以下のコードを含む
IDLファイルa.idlを作成する。
【0057】上のコード断片に関連するソース・コード
内のオブジェクトを生成する際に、従来技術のシステム
は、以下のコードを含む実装ファイルa.cppを生成する
はずである。
【0058】その後、開発者がIDLファイルにパラメー
タを追加し、ファイルa.idlに以下のコードを作成す
る。
【0059】従来技術のシステムは、この変更を受け取
り、画面に表示することを意図されたテキストを含ま
ず、以下のコードを含むa.cppファイルを再生成するは
ずである。
【0060】したがって、ユーザがprint文のパラメー
タ・リストを変更した時に、従来技術の処理では、ユー
ザが以前に入力したテキストが空白で上書きされ、ユー
ザは、そのテキストをa.cppファイルにもう一度入力す
る必要がある。
【0061】本発明の好ましい実施例を使用する場合、
ユーザは、以下のように、上の例と同一のコードを含む
IDLファイルを用意する。
【0062】システムは、メモリ内モデル内にOBInterf
aceという名前のクラスを作成し、永続モデル内に、ク
ラスDMMethodとクラスDMArgのインスタンスを作成す
る。上で述べたように、DMMethodのインスタンスには、
編集セッションでユーザが入力したメソッド実装すなわ
ち「cout << "hello";」を含む属性MethodBodyが含まれ
る。
【0063】MethodBodyのメソッド実装には、下記のコ
ードが含まれる。
【0064】ユーザが、たとえばユーザ・ダイアログ・
ボックスのOKボタンをクリックすることによって、この
変更を永久的にすることを決定した時に、MethodBodyを
含むDMMethodが、永続データ・モデルに保管される。
【0065】その後、このユーザが、変更を行ってパラ
メータを追加し、たとえばprint文をパラメータなしか
らパラメータ「in short p1」ありに変更した時には、M
ethodBodyはシステムによって変更されない。
【0066】生成されるa.IDLファイルには、以下のコ
ードが含まれるはずである。
【0067】したがって、ユーザが前に入力したテキス
トは、下記の形で回復され、ユーザは、これを表示する
ことも、編集することもできる。
【0068】上で述べたように、MethodBodyは、文字列
バイナリ・ラージ・オブジェクトとして保管され、した
がって、ユーザによる編集の場合を除いて、システムに
よって変更されることはない。MethodBodyは文字列であ
るから、ユーザが作業しているプラットホームで使用可
能なデータを含めることができる。たとえば、Javaコー
ドやC++コード、もしくは、テキストと個々の言語のコ
ードの組合せを含めることができる。
【0069】本発明の長所は、以前にはエディタによっ
て入力したテキストが上書きされたはずの、IDLファイ
ルからの大量のテキストおよびコードを再入力する必要
がなくなることである。もう1つの長所は、エディタに
よって入力されたコードおよびテキストが、DMMethodク
ラスのインスタンスのMethodBody属性に文字列データと
して格納され、同じ形で取り出されるので、本発明が、
本来の性質として言語に依存しないことである。
【0070】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0071】(1)a)メモリ内データ記憶区域と、 b)永続データ記憶区域と、 c)前記記憶区域のいずれかでのメタデータとしてのイ
ンターフェース情報および実装情報の記憶能力を提供す
るためのアプリケーション・プログラム・インターフェ
ースと、 d)前記実装情報のうちの少なくとも1つのコンポーネ
ントのコードを修正するためのエディタと、 e)前記永続データ記憶区域から前記情報を取り出すた
めの手段と を含む、スケルトン・コードを生成するコンポーネント
を提供するオブジェクト指向アプリケーション開発シス
テム。 (2)前記永続記憶区域が、永続データ・モデル内で提
供される、上記(1)に記載のシステム。 (3)前記実装情報が、クラスのインスタンスの属性と
して格納される、上記(1)または上記(2)に記載の
システム。 (4)前記実装情報が、バイナリ・ラージ・オブジェク
ト・ブロックの形で格納される、上記(1)ないし上記
(3)のいずれかに記載のシステム。 (5)前記メタデータが、メソッド実装情報として格納
される、上記(3)に記載のシステム。 (6)前記実装情報が、ビジネス・ロジックを含む、上
記(3)ないし上記(5)のいずれかに記載のシステ
ム。 (7)前記実装情報が、テキスト文字列を含む、上記
(3)ないし上記(6)のいずれかに記載のシステム。 (8)前記実装情報が、高水準コンピュータ言語のコー
ドのブロックを含む、上記(3)ないし上記(7)のい
ずれかに記載のシステム。 (9)スケルトン・コードを生成するコンポーネントを
有するオブジェクト指向開発システムにおいて、 a)メモリ内記憶モデルと永続記憶モデルを提供するス
テップと、 b)インターフェース定義情報および実装情報を前記メ
モリ内記憶モデルに保存するステップと、 c)前記情報に対する更新を含む修正されたファイルの
用意の後のユーザ・アプリケーションからの指示の際
に、前記インターフェース定義情報および実装情報をメ
タデータとして前記永続記憶モデルに格納するステップ
と、 d)前記永続記憶モデルから前記インターフェース定義
情報および実装情報を回復するステップと、 e)前記インターフェース定義情報および実装情報を前
記修正されたファイルに書き込むステップとを含む、前
記インターフェース定義情報および実装情報を格納する
方法。 (10)前記実装情報が、クラスのインスタンスの属性
として格納される、上記(9)に記載の方法。 (11)前記実装情報が、バイナリ・ラージ・オブジェ
クト・ブロックとして格納される、上記(9)に記載の
方法。 (12)前記実装情報が、テキスト文字列を含む、上記
(11)に記載の方法。
【図面の簡単な説明】
【図1】本発明のシステムが構築される基礎となるオブ
ジェクト指向の永続データ・モデルおよびメモリ内デー
タ・モデルの概略図である。
【図2】本発明の好ましい実施例を実施するソフトウェ
アによって表示されるメイン・ウィンドウを示す図であ
る。
【図3】本発明の好ましい実施例によるオブジェクト指
向データ・モデルの派生クラスを示す図である。
【図4】例のファイルのインターフェース定義言語(ID
L)構造に関してどのモデル・オブジェクトがインスタ
ンス化されるかを示す、本発明の好ましい実施例による
ファイルの例を示す図である。
【図5】アプリケーション・システムのインターフェー
ス・クラスと他の要素の間の、本発明の好ましい実施例
での関係を示す図である。
【符号の説明】
31 DMPersistent Object 32 クラスDMMethod 33 クラスDMArg 34 クラスDMType 35 スーパークラスDMNameScope 36 クラスDMFile 37 クラスDMNSGroup 38 クラスDMModel 39 クラスOBFileGroup 40 クラスOBApplicationFamily 41 クラスDMPart 42 クラスOBFile 43 クラスOBModule 44 クラスOBInterface 45 クラスOBSimpleType 46 クラスOBException 47 クラスDMTypedef 48 クラスOBTypedef 49 クラスDMEnum 50 クラスOBEnum 51 クラスDMStruct 52 クラスOBStruct 53 クラスDMUnion 54 クラスOBUnion 60 クラスDMSubpart 61 DMDataMember

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】a)メモリ内データ記憶区域と、 b)永続データ記憶区域と、 c)前記記憶区域のいずれかでのメタデータとしてのイ
    ンターフェース情報および実装情報の記憶能力を提供す
    るためのアプリケーション・プログラム・インターフェ
    ースと、 d)前記実装情報のうちの少なくとも1つのコンポーネ
    ントのコードを修正するためのエディタと、 e)前記永続データ記憶区域から前記情報を取り出すた
    めの手段とを含む、スケルトン・コードを生成するコン
    ポーネントを提供するオブジェクト指向アプリケーショ
    ン開発システム。
  2. 【請求項2】前記永続記憶区域が、永続データ・モデル
    内で提供される、請求項1に記載のシステム。
  3. 【請求項3】前記実装情報が、クラスのインスタンスの
    属性として格納される、請求項1または請求項2に記載
    のシステム。
  4. 【請求項4】前記実装情報が、バイナリ・ラージ・オブ
    ジェクト・ブロックの形で格納される、請求項1ないし
    請求項3のいずれかに記載のシステム。
  5. 【請求項5】前記メタデータが、メソッド実装情報とし
    て格納される、請求項3に記載のシステム。
  6. 【請求項6】前記実装情報が、ビジネス・ロジックを含
    む、請求項3ないし請求項5のいずれかに記載のシステ
    ム。
  7. 【請求項7】前記実装情報が、テキスト文字列を含む、
    請求項3ないし請求項6のいずれかに記載のシステム。
  8. 【請求項8】前記実装情報が、高水準コンピュータ言語
    のコードのブロックを含む、請求項3ないし請求項7の
    いずれかに記載のシステム。
  9. 【請求項9】スケルトン・コードを生成するコンポーネ
    ントを有するオブジェクト指向開発システムにおいて、 a)メモリ内記憶モデルと永続記憶モデルを提供するス
    テップと、 b)インターフェース定義情報および実装情報を前記メ
    モリ内記憶モデルに保存するステップと、 c)前記情報に対する更新を含む修正されたファイルの
    用意の後のユーザ・アプリケーションからの指示の際
    に、前記インターフェース定義情報および実装情報をメ
    タデータとして前記永続記憶モデルに格納するステップ
    と、 d)前記永続記憶モデルから前記インターフェース定義
    情報および実装情報を回復するステップと、 e)前記インターフェース定義情報および実装情報を前
    記修正されたファイルに書き込むステップとを含む、前
    記インターフェース定義情報および実装情報を格納する
    方法。
  10. 【請求項10】前記実装情報が、クラスのインスタンス
    の属性として格納される、請求項9に記載の方法。
  11. 【請求項11】前記実装情報が、バイナリ・ラージ・オ
    ブジェクト・ブロックとして格納される、請求項9に記
    載の方法。
  12. 【請求項12】前記実装情報が、テキスト文字列を含
    む、請求項11に記載の方法。
JP10107189A 1997-05-01 1998-04-17 オブジェクト指向アプリケーション開発システムおよび方法 Pending JPH10320207A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/846,869 US6182274B1 (en) 1997-05-01 1997-05-01 Reusing code in object-oriented program development
US08/846869 1997-05-01

Publications (1)

Publication Number Publication Date
JPH10320207A true JPH10320207A (ja) 1998-12-04

Family

ID=25299175

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10107189A Pending JPH10320207A (ja) 1997-05-01 1998-04-17 オブジェクト指向アプリケーション開発システムおよび方法

Country Status (3)

Country Link
US (1) US6182274B1 (ja)
JP (1) JPH10320207A (ja)
GB (1) GB2325539B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107179990A (zh) * 2017-05-17 2017-09-19 郑州云海信息技术有限公司 一种实现测试校验的方法及装置

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10839321B2 (en) 1997-01-06 2020-11-17 Jeffrey Eder Automated data storage system
US6385618B1 (en) * 1997-12-22 2002-05-07 Sun Microsystems, Inc. Integrating both modifications to an object model and modifications to a database into source code by an object-relational mapping tool
US6253219B1 (en) * 1997-12-23 2001-06-26 Pitney Bowes Inc. Method for utilizing the postal service address as an object in an object oriented environment
US6381734B1 (en) * 1998-06-03 2002-04-30 Microsoft Corporation Method, software and apparatus for referencing a method in object-based programming
US6308315B1 (en) * 1998-10-14 2001-10-23 Sun Microsystems, Inc. System and method for automatically and selectively promoting object variables to method fields and variables in a digital computer system
WO2000023863A2 (en) * 1998-10-16 2000-04-27 Computer Associates Think, Inc. Determining differences between two or more metadata models
CA2255017A1 (en) * 1998-11-30 2000-05-30 Christina P. Lau Method and mechanism for a task oriented xml data model
DE10003015A1 (de) * 1999-02-06 2000-08-17 Ibm Die Erzeugung von Ereignis-Bedingungs-Aktions-Regeln aus Prozessmodellen
US7013284B2 (en) * 1999-05-04 2006-03-14 Accenture Llp Component based interface to handle tasks during claim processing
US7979382B2 (en) 1999-05-04 2011-07-12 Accenture Global Services Limited Component based information linking during claim processing
US7617240B2 (en) 1999-05-04 2009-11-10 Accenture Llp Component based task handling during claim processing
US6574636B1 (en) * 1999-05-04 2003-06-03 Accenture Llp Method and article of manufacture for isolating data within a computer program
US6662356B1 (en) * 1999-06-30 2003-12-09 Microsoft Corporation Application program interface for transforming heterogeneous programs
JP3871832B2 (ja) * 1999-08-20 2007-01-24 日本電気株式会社 データ処理プログラム自動生成システム及びその方法並びにコンピュータ可読記録媒体
US7734457B2 (en) * 1999-10-16 2010-06-08 Computer Associates Think, Inc. Method and system for generating dynamic comparison models
US20050160401A1 (en) * 1999-10-16 2005-07-21 Computer Associates Think, Inc. System and method for adding user-defined objects to a modeling tool
US6591275B1 (en) 2000-06-02 2003-07-08 Sun Microsystems, Inc. Object-relational mapping for tables without primary keys
AU2001296497A1 (en) * 2000-10-03 2002-04-15 Aergo Solutions Workflow management software overview
US20030056195A1 (en) * 2001-07-19 2003-03-20 Hunt Joseph R. Code generator
US6778990B2 (en) 2001-07-27 2004-08-17 Hewlett-Packard Development Company, L.P. Dynamic component activation method using a relational database as the repository for registration information
US6801919B2 (en) 2001-07-27 2004-10-05 Hewlett-Packard Development Company, L.P. Object oriented database interface encapsulation that allows for chronologically overlapping transactions in a multi-threaded environment
US7243334B1 (en) * 2002-01-16 2007-07-10 Prelude Systems, Inc. System and method for generating user interface code
US20030200532A1 (en) * 2002-04-17 2003-10-23 Thomas Gensel System and method for sharing reusable code base
US7823060B2 (en) * 2002-06-07 2010-10-26 Microsoft Corporation Undo/redo architecture across multiple files
EP1387261A1 (fr) * 2002-07-30 2004-02-04 Sereneo Logiciel de generation de code d'application informatique et langage de description de logiciel
KR100456623B1 (ko) * 2002-08-02 2004-11-10 한국전자통신연구원 설계 모델과 소스코드의 일관성을 유지시켜 동시순환공학을 지원하기 위한 장치 및 방법
US20040031017A1 (en) * 2002-08-12 2004-02-12 Shankar Vaidyanathan System and method for context-sensitive help in a design environment
US7263697B2 (en) * 2003-01-17 2007-08-28 Sap Aktiengesellschaft Composite computer program extensions
US7913159B2 (en) 2003-03-28 2011-03-22 Microsoft Corporation System and method for real-time validation of structured data files
US8126742B2 (en) 2003-05-09 2012-02-28 Accenture Global Services Limited Automated assignment of insurable events
US7406660B1 (en) 2003-08-01 2008-07-29 Microsoft Corporation Mapping between structured data and a visual surface
US7334187B1 (en) 2003-08-06 2008-02-19 Microsoft Corporation Electronic form aggregation
US7607099B2 (en) 2003-11-03 2009-10-20 Intentional Software Corporation Method and system for reversible design tree transformations
US7644409B2 (en) 2004-06-04 2010-01-05 Sun Microsystems, Inc. Techniques for accessing a shared resource using an improved synchronization mechanism
US7594234B1 (en) 2004-06-04 2009-09-22 Sun Microsystems, Inc. Adaptive spin-then-block mutual exclusion in multi-threaded processing
US7475397B1 (en) 2004-07-28 2009-01-06 Sun Microsystems, Inc. Methods and apparatus for providing a remote serialization guarantee
US7676747B2 (en) * 2005-07-06 2010-03-09 The Mitre Corporation Method for representing security features of a distributed system
US7933786B2 (en) * 2005-11-01 2011-04-26 Accenture Global Services Limited Collaborative intelligent task processor for insurance claims
US8001459B2 (en) 2005-12-05 2011-08-16 Microsoft Corporation Enabling electronic documents for limited-capability computing devices
US8533692B2 (en) * 2005-12-30 2013-09-10 Sap Ag Dynamic software enhancement parameters
US8171452B2 (en) * 2005-12-30 2012-05-01 Sap Ag Dynamic software enhancement
US20070234278A1 (en) * 2006-03-02 2007-10-04 Microsoft Corporation Managing source code in a model-based development environment
US8001521B2 (en) * 2006-06-12 2011-08-16 Sap Ag Meta-date driven implementation of business objects and their transactional behavior
US8719766B1 (en) * 2006-10-16 2014-05-06 The Math Works, Inc. System and method for identifying and adding files to a project manifest
US7949949B2 (en) * 2006-11-20 2011-05-24 Intentional Software Corporation Domain transformation languages
US9626161B2 (en) * 2006-12-12 2017-04-18 Ca, Inc. Computer readable medium and methods for filtering a dynamic comparison model
US8276118B2 (en) * 2007-03-01 2012-09-25 International Business Machines Corporation Depicting changes to structures in an integrated development environment
US8515786B2 (en) * 2008-02-22 2013-08-20 Accenture Global Services Gmbh Rule generation system adapted for an insurance claim processing system
US20090217146A1 (en) * 2008-02-22 2009-08-27 Eugene Goldfarb Page navigation generation system for a customizable application
US8478769B2 (en) * 2008-02-22 2013-07-02 Accenture Global Services Limited Conversational question generation system adapted for an insurance claim processing system
US20090319982A1 (en) * 2008-06-24 2009-12-24 Microsoft Corporation Multiple Code Inheritance with Explicit Base Calling
US9696973B1 (en) * 2016-02-24 2017-07-04 Semmle Limited Compilation cache with imports scanner
US11138270B2 (en) * 2017-05-12 2021-10-05 Elumus, LLC Business software platform and kiosk

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5191646A (en) * 1986-11-20 1993-03-02 Hitachi, Ltd. Display method in software development support system
CA2019603A1 (en) 1989-06-30 1990-12-31 William M. Mckeeman Incremental compiler for source-code development system
US5313387A (en) * 1989-06-30 1994-05-17 Digital Equipment Corporation Re-execution of edit-compile-run cycles for changed lines of source code, with storage of associated data in buffers
US5930505A (en) * 1991-12-17 1999-07-27 Hudson Soft Co. Ltd. Method for storing a program into an auxiliary memory
JPH05314073A (ja) * 1992-05-08 1993-11-26 Nec Corp プログラム仕様データの部分転送方式
US5339433A (en) * 1992-11-19 1994-08-16 Borland International, Inc. Symbol browsing in an object-oriented development system
JPH06332680A (ja) * 1993-05-21 1994-12-02 Tadao Shogetsu プログラム自動生成装置
US5790861A (en) * 1995-07-07 1998-08-04 Sun Microsystems, Inc. Method and apparatus for generating executable code from object-oriented C++ source code
US5911070A (en) * 1995-08-07 1999-06-08 Inprise Corporation Development system with methods for bi-directional application program code generation
US5867709A (en) * 1995-10-18 1999-02-02 Kapre Software, Inc. Method and system for reusing customizations to a software product
US5778378A (en) * 1996-04-30 1998-07-07 International Business Machines Corporation Object oriented information retrieval framework mechanism
US5754858A (en) * 1996-05-01 1998-05-19 Microsoft Corporation Customizable application project generation process and system
US5809507A (en) * 1996-07-01 1998-09-15 Sun Microsystems, Inc. Method and apparatus for storing persistent objects on a distributed object network using a marshaling framework
US5911071A (en) * 1996-09-13 1999-06-08 Sun Microsystems, Inc. Persistent programming system and method for deploying self-containing executable applications
US5926637A (en) * 1997-08-20 1999-07-20 Bea Systems, Inc. Service interface repository code generation data

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107179990A (zh) * 2017-05-17 2017-09-19 郑州云海信息技术有限公司 一种实现测试校验的方法及装置
CN107179990B (zh) * 2017-05-17 2020-09-08 浪潮云信息技术股份公司 一种实现测试校验的方法及装置

Also Published As

Publication number Publication date
GB9806329D0 (en) 1998-05-20
GB2325539A (en) 1998-11-25
GB2325539B (en) 2002-01-23
US6182274B1 (en) 2001-01-30

Similar Documents

Publication Publication Date Title
JPH10320207A (ja) オブジェクト指向アプリケーション開発システムおよび方法
JP4365142B2 (ja) プロパティをオブジェクトに関連付けするための、コンピュータ可読媒体、システム、および、方法
JP3272014B2 (ja) 階層構造データ処理情報を含むデータ処理辞書を作成する方法及び装置
US7694272B2 (en) Method, a language and a system for the definition and implementation of software solutions by using a visualizable computer executable modeling language
US6560769B1 (en) Computer-implemented method for generating a UML representation from JAVA source code
US5699310A (en) Method and apparatus for a fully inherited object-oriented computer system for generating source code from user-entered specifications
US7546590B2 (en) Dynamic conversion of object-oriented programs to tag-based procedural code
US5937409A (en) Integrating relational databases in an object oriented environment
JPH10275077A (ja) メタデータ・コンテナおよびメタデータ・ストア
US5752245A (en) Object-oriented system for configuration history management with a project workspace and project history database for draft identification
US6363435B1 (en) Event sourcing and filtering for transient objects in a hierarchical object model
US7912844B2 (en) System for navigating beans using filters and container managed relationships
JP2003345717A (ja) ウェブ・ドキュメントを再編集して再配布する方法及び装置
JP2010146583A (ja) プログラムツリー内でカテゴリ別にノードをまとめる方法及びシステム
RU2421784C2 (ru) Моделирование отношений
US20070079299A1 (en) Method, apparatus and program storage device for representing eclipse modeling framework (EMF) ecore models in textual form
US6832365B1 (en) System and method for interacting with computer programming languages at semantic level
US20050010906A1 (en) Method and system for providing multiple levels of help information for a computer program
US6501486B1 (en) Multiple language support for component-based systems
JP2005301985A (ja) 情報処理装置、オブジェクト生成方法、オブジェクト変換方法、オブジェクト生成プログラム、オブジェクト変換プログラム及び記録媒体
JPH07129382A (ja) スパイラル型オブジェクト指向のソフトウェア開発支援システムおよびソフトウェア開発方法
Rashid On to aspect persistence
JPH064280A (ja) ウィズィウィグ式エディターでオブジェクトをユーザ制御する機能を備えたグラフィカル・ユーザ・インターフェース
CN100485687C (zh) 建立无连接的数据编程模型的方法、装置及其应用
Toffoli The Definitive Guide to iReport

Legal Events

Date Code Title Description
A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20050930

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20051005

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20051216

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20051216