JPWO2005038647A1 - ユーザーインタフェースソフトウェア設計システム - Google Patents
ユーザーインタフェースソフトウェア設計システム Download PDFInfo
- Publication number
- JPWO2005038647A1 JPWO2005038647A1 JP2005514763A JP2005514763A JPWO2005038647A1 JP WO2005038647 A1 JPWO2005038647 A1 JP WO2005038647A1 JP 2005514763 A JP2005514763 A JP 2005514763A JP 2005514763 A JP2005514763 A JP 2005514763A JP WO2005038647 A1 JPWO2005038647 A1 JP WO2005038647A1
- Authority
- JP
- Japan
- Prior art keywords
- design data
- unorganized
- rule
- organized
- storage means
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
差分開発によるユーザーインタフェースソフトウェア設計開発の効率化を図るために、ルール処理手段が、未整理設計データ格納手段に格納された、個々のソフトウェア設計者により設計され蓄積されてきた未整理設計データ、および、ルール格納手段に格納された整理ルール群を読み出し、読み出した未整理設計データに整理ルール群の各整理ルールを逐次適用し、これを解析することにより、その未整理設計データに対して分割、統合等の変換を施すことにより、再利用性の良い整理済み設計データとする。
Description
この発明は、携帯電話、携帯情報端末、カーナビゲーション装置等のソフトウェアプロダクトを装備した機器において使用されるユーザーインタフェースソフトウェアの設計開発の効率化を図るためのユーザーインタフェースソフトウェア設計システムに関するものである。
携帯電話、携帯情報端末、カーナビゲーション装置等のソフトウェアプロダクト装備機器分野においては、近年、技術の進歩や前記の各機器に対するニーズのめまぐるしい変化により製品サイクルの短縮化が著しい。この状況に対処するために、新機種開発、特にソフトウェアプロダクト設計開発の効率化が要請されており、機器に装備されたソフトウェアプロダクトの重要な部分であるユーザーインタフェースソフトウェアの開発を効率化することによりソフトウェアプロダクトの開発を促進することも急務となっている。ユーザーインタフェースソフトウェア設計システムは、このような背景から、ユーザーインタフェースソフトウェアの設計開発の効率化を目的として生まれたものである。
一般に、ソフトウェア開発では、設計開発の効率化のために、過去の設計データ等の資産をできる限り再利用し、新しい機能など、従来とは異なる部分のみを新たに設計する差分開発が重要である。一方、ユーザーインタフェースソフトウェアの設計に使用する設計データは、その時々のソフトウェア設計者の裁量で作成された部分が多く、そのため、再利用には不便なものが多かった。例えば、実質的に同一の一連の画面を、複数の設計データで、定義したり、画面の一部を占める、アイコンなどのユーザーインタフェースの動きと、画面全体の切り替えとを同じ階層の画面遷移として捉えたため、画面遷移が平面的で、数が多くなり、設計データ全体の見通しが悪くなるケース等があった。このように、個々の設計者の設計思想が、統一されずに、ユーザーインタフェースソフトウェアの設計データに反映され、その結果、それらの設計データは再利用の観点が十分に検討されたものとはなっていなかったため、再利用性の良くないものが多かった。このような状況から、ソフトウェア設計者は、新しくユーザーインタフェースソフトウェアの設計開発の際、状態集合編集手段やイベント処理編集手段、属性編集手段、状態表示編集手段など、ユーザーインタフェース設計手段である各種編集手段を通じて、その都度、過去に蓄積された設計データを編集することにより必要な設計データを作成し、ユーザーインタフェースソフトウェア設計システムに入力していた(例えば、特許文献1参照。)。このような状況は、設計データの作成が極めて創造性の高い仕事で、属人性の高いものであるということにも起因している。
このように、差分開発を行う場合でも、設計データに関する限り、その作成には非常に手間のかかることが多かった。そのため、過去に蓄積された設計データ資産の再利用による効率化という差分開発の趣旨が活かされていなかった。
一方、過去の設計データが新規のユーザーインタフェースソフトウェアの開発にとって再利用性のよい形で得られない場合の対応策に、所謂リバースエンジニアリングという手法がある。これは、過去のソフトウェアのソースコードを入力・解析して、設計データを得るという手法で、そのための装置としてリバースエンジニアリング支援システムと呼ばれるものがある(例えば、特許文献2参照)。既存のリバースエンジニアリング支援システムは、ソースコードを入力としてソフトウェアの構造を解析しているが、ユーザーインタフェースソフトウェアのソースコードは、ユーザーとの相互作用によって対応を決定するイベント駆動型(即ち、イベント毎に適用する処理を決めておき、これに従って動作させる方式のこと)で記述されていることが多いので、ソースコードからそのソフトウェアの設計情報を解釈し、再利用しやすいように整理された形で設計データを得ることは困難であった。
このように、従来から蓄積されている設計データは、個々の設計者によって、統一された設計思想に基づかずに作成されているため、再利用性が低く、ソフトウェアの差分開発の効率化のためには、この蓄積された設計データの再利用性を改善する手段が望まれていた。
本発明のユーザーインタフェースソフトウェア設計システムは、ソフトウェアプロダクトへのイベントと、このイベントに対応する前記ソフトウェアプロダクトの画面変化情報とからなる、ユーザーインタフェースソフトウェア用設計データを、未整理設計データとして格納する未整理設計データ格納手段と、前記未整理設計データを再利用しやすい形に変換するルールを記述する整理ルールの集合体である整理ルール群を格納するルール格納手段と、前記未整理設計データ格納手段に格納された未整理設計データ及び前記ルール格納手段に格納された整理ルール群を読み出し、この読み出した未整理設計データに対して、前記読み出した整理ルール群に含まれる各整理ルールを逐次適用し、解析することにより、前記未整理設計データを整理済み設計データに変換するルール処理手段と、このルール処理手段の指示により、前記整理済み設計データを格納する整理済み設計データ格納手段とを有するものである。
上記本発明に係るユーザーインタフェースソフトウェア設計システムは、設計開発時に互いに統一された設計思想に基づかないで作成され、再利用に不便な形のままで蓄積されている未整理設計データを、再利用性のよい、整理済み設計データに変換するため、設計者の意図やユーザーインタフェースの構造の理解が容易となり、ユーザーインタフェースソフトウェア、及び、それを含むソフトウェアプロダクトの差分開発の効率化を図ることができる。
[図1]本発明の実施の形態1に係るユーザーインタフェースソフトウェア設計システム構成図
[図2]本発明の実施の形態1に係る未整理設計データから整理済み設計データへの変換手順
[図3](a)本発明の実施の形態1に係る整理ルールの例1 (b)本発明の実施の形態1に係る未整理設計データの例1 (c)本発明の実施の形態1に係る整理済み設計データの例1
[図4](a)本発明の実施の形態1に係る整理ルールの例2 (b)本発明の実施の形態1に係る未整理設計データの例2 (c)本発明の実施の形態1に係る整理済み設計データの例2
[図5]本発明の実施の形態2に係るユーザーインタフェースソフトウェア設計システム構成図
[図6]本発明の実施の形態2に係るSTEP3の詳細手順
[図7](a)本発明の実施の形態2に係る整理ルールの例1 (b)本発明の実施の形態2に係る未整理設計データの例1 (c)本発明の実施の形態2に係る整理済み設計データの例1
[図8](a)本発明の実施の形態2に係る整理ルールの例2 (b)本発明の実施の形態2に係る未整理設計データの例2 (c)本発明の実施の形態2に係る整理済み設計データの例2
[図9]本発明の実施の形態3に係るユーザーインタフェースソフトウェア設計システム構成図
[図10]本発明の実施の形態3に係るSTEP2以降の詳細手順
[図11](a)本発明の実施の形態3に係るメニューテンプレートの例 (b)本発明の実施の形態3に係る未整理設計データの例1 (c)本発明の実施の形態3に係る整理済み設計データの例1
[図12]本発明の実施の形態3に係る他の例によるSTEP2以降の詳細手順
[図13](a)本発明の実施の形態3に係る整理ルールの例 (b)本発明の実施の形態3に係る未整理設計データの例2 (c)本発明の実施の形態3に係る整理済み設計データの例2
[図14]本発明の実施の形態5に係るユーザーインタフェースソフトウェア設計システム構成図
[図2]本発明の実施の形態1に係る未整理設計データから整理済み設計データへの変換手順
[図3](a)本発明の実施の形態1に係る整理ルールの例1 (b)本発明の実施の形態1に係る未整理設計データの例1 (c)本発明の実施の形態1に係る整理済み設計データの例1
[図4](a)本発明の実施の形態1に係る整理ルールの例2 (b)本発明の実施の形態1に係る未整理設計データの例2 (c)本発明の実施の形態1に係る整理済み設計データの例2
[図5]本発明の実施の形態2に係るユーザーインタフェースソフトウェア設計システム構成図
[図6]本発明の実施の形態2に係るSTEP3の詳細手順
[図7](a)本発明の実施の形態2に係る整理ルールの例1 (b)本発明の実施の形態2に係る未整理設計データの例1 (c)本発明の実施の形態2に係る整理済み設計データの例1
[図8](a)本発明の実施の形態2に係る整理ルールの例2 (b)本発明の実施の形態2に係る未整理設計データの例2 (c)本発明の実施の形態2に係る整理済み設計データの例2
[図9]本発明の実施の形態3に係るユーザーインタフェースソフトウェア設計システム構成図
[図10]本発明の実施の形態3に係るSTEP2以降の詳細手順
[図11](a)本発明の実施の形態3に係るメニューテンプレートの例 (b)本発明の実施の形態3に係る未整理設計データの例1 (c)本発明の実施の形態3に係る整理済み設計データの例1
[図12]本発明の実施の形態3に係る他の例によるSTEP2以降の詳細手順
[図13](a)本発明の実施の形態3に係る整理ルールの例 (b)本発明の実施の形態3に係る未整理設計データの例2 (c)本発明の実施の形態3に係る整理済み設計データの例2
[図14]本発明の実施の形態5に係るユーザーインタフェースソフトウェア設計システム構成図
1 設計データ格納手段、2 モデル解析手段、3 入力情報生成手段、4 ソフトウェアプロダクト、5 モデル生成手段、6 設計データ編集手段、7 ルール編集手段、110 未整理設計データ、120 整理済み設計データ、21 ルール格納手段、22 ルール処理手段、211、212、213、214、216 整理ルール、215 メニューテンプレート
実施の形態1.
本願発明で対象とする、ユーザーインタフェースソフトウェアの設計開発に必要な設計データは、ソフトウェアプロダクトへの一連のイベント(様々な操作入力や状態設定等)と、そのイベント毎に切り替わる表示画面とで構成される画面系列と呼ばれる画面変化情報として定義される。この設計データは、一般ソフトウェアの設計データに比べて単純化されたデータであるという特徴を有している。本願発明は、この点に着目して、設計データを、客観的に容易に理解できる形に変換することにより、その設計データの再利用性を改善するというものである。
本願発明で対象とする、ユーザーインタフェースソフトウェアの設計開発に必要な設計データは、ソフトウェアプロダクトへの一連のイベント(様々な操作入力や状態設定等)と、そのイベント毎に切り替わる表示画面とで構成される画面系列と呼ばれる画面変化情報として定義される。この設計データは、一般ソフトウェアの設計データに比べて単純化されたデータであるという特徴を有している。本願発明は、この点に着目して、設計データを、客観的に容易に理解できる形に変換することにより、その設計データの再利用性を改善するというものである。
図1は、本発明の、実施の形態1の構成を示している。図において、未整理設計データ格納手段11は、過去に、個々のソフトウェア設計者が、その都度作成したことにより互いに設計思想が統一されておらず、再利用しやすい形に整理されていない、未整理設計データを記憶蓄積しておく格納手段、整理済み設計データ格納手段12は、この未整理設計データを後述する所定のルールに基づき、再利用しやすい形態に変換した、整理済み設計データを記憶蓄積しておく格納手段である。図1では、未整理設計データ格納手段11と整理済み設計データ格納手段12とを包含する形で設計データ格納手段1を示したが、これは、未整理設計データ格納手段11と整理済み設計データ格納手段12とを一体化して、その中に未整理設計データ格納手段11と、整理済み設計データ格納手段12とを設定してもよいことを示すものである。モデル解析手段2は、ルール格納手段21とルール処理手段22とを含む。ルール格納手段21は、未整理設計データを、再利用しやすい形態である整理済み設計データに変換するための整理ルール群を格納する機能を有し、ルール処理手段22は、上記整理ルール群をルール格納手段21から読み出し、この整理ルール群に含まれる各整理ルールを逐次適用して、前記未整理設計データ格納手段11から読み出した未整理設計データを解析し、階層化、統合化、分岐化、分割化等の処理を行うことにより、整理済み設計データに変換するとともに、これを整理済み設計データ格納手段12に格納するよう指示する機能を有する。
図2は、本実施の形態1についての未整理設計データを整理済み設計データに変換する際の手順を説明する図である。以下、この図に従ってその手順を説明する。ルール処理手段22は、ルール格納手段21に格納されている整理ルール群を読み込み(STEP1)、更に、未整理設計データ格納手段11に格納されている未整理設計データを読み込む(STEP2)。
次に、ルール処理手段22は、整理ルール群に含まれている各整理ルールを逐次、前記読み込んだ未整理設計データに適用する。各整理ルールは、適用の「条件」と、整理ルールによる処理の内容を記載した「適用処理」とを含む。未整理設計データに、この「条件」に合致する部分があれば、「適用処理」に従って、未整理設計データに対して、例えば、階層化、統合化、分割化等の変換を施す(STEP3)。STEP3の処理は、全未整理設計データを対象として行われる。この処理が完了したら、ルール処理手段22は、全ての整理ルールについてSTEP3の処理が終了したかどうかを判断し、終了したと判断した場合(STEP4/YES)は、上記変換後の設計データを、整理済み設計データ格納手段12に格納するよう指示を出す(STEP5)。整理済み設計データ格納手段12はこの変換後の設計データをルール処理手段22の指示により、整理済み設計データとして格納する(STEP6)。ルール処理手段22が、STEP3の処理を終了していない整理ルールがあると判断した場合は、ルール処理手段22は、次の整理ルールに対してSTEP3の処理を実行する。
図3は、未整理設計データの具体例と、これに対して、ある特定の整理ルールを適用した例を示す。図3(a)は、前記整理ルール群に含まれる整理ルールの一例を整理ルール211として示している。整理ルール211には、そのルールの「名称」と、ルール適用の「条件」と、その条件に対する数値基準である「条件値」と、その条件が満たされた場合の未整理設計データに対する処理内容である「適用処理」が記載されている。ここで示す整理ルール211は、整理ルールを表形式で示した場合の例である。図3(b)は未整理設計データ110の一例を画面系列111と112とで示している。この画面系列のうちの一部分を取り出したものを部分画面系列と呼ぶ。画面系列111、112に示す符号1111、1121はそれぞれ、画面系列111、112の部分画面系列の例を示す。図3(c)は、整理済み設計データを画面系列121〜123で示したものである。整理済み設計データ120には通常はその他の整理済み設計データが含まれるが、画面系列121〜123は、その一部を示したものである。
次に、図2のSTEP3の変換処理手順を、図3の例を使って説明する。まず、ルール処理手段22は、STEP1において、ルール格納手段21から読み込んだ図3(a)の整理ルール211の「条件」に適合する未整理設計データの有無を、STEP2において未整理設計データ格納手段11から読み出した未整理設計データについて検索する。「条件」適合性の検索に際しては「条件値」を考慮する。未整理設計データである、図3(b)の画面系列111と112を見ると、画面Eにイベントefが発生して画面遷移が生じ、画面Fになる部分(部分画面系列1111と1121)が共通している。しかし、この共通部分が、それぞれの画面系列で独立に記述されているために、この2つの設計データは煩雑な表記となっている。ルール処理手段22は、これらの未整理設計データに整理ルール211の「適用処理」に記載の”対象部分画面系列を1状態として切り出し階層化”するという処理を施して整理統合する。その結果、ルール処理手段22は、画面EFを新たに定義することで、整理済み設計データを図3(c)の画面系列121〜123に示すように階層化された設計データに変換する。すなわち、この整理ルール211による処理は、未整理設計データの画面系列の中に、n個の要素(部分画面系列を構成する画面の数のことで、この例ではn=2)からなる同一の部分画面系列を有する未整理設計データがm回(この例ではm=2)以上出現するときに、この共通の部分画面系列を画面EFとして切り出し、階層化したもので、出現頻度の高い部分画面系列を一つの画面として代表化させたものである。図3は未整理設計データである画面系列2個について、その間で同一の部分画面系列がある場合の例を示したが、未整理設計データである画面系列数がもっと多い場合や、一つの未整理設計データの画面系列内に同一の部分画面系列が複数回出現する場合についても同様の処理が可能である。
このように統合化することで、ソフトウェア設計者は、例えば部分画面系列1111や1121について機能の拡張・縮小・変更等の各種処理を施す場合に、個々の部分画面系列1111や1121ごとに処理を施す必要がなくなり、整理済み設計データ123に示す、画面EFの定義部分にのみ必要な処理を施せばすむことになり、処理が大幅に簡略化できる。条件値n、mは、予め決められた値であるが、ソフトウェアの設計に大きく影響する点に留意して決定される。
図4は、他の整理ルールの適用例を説明する図である。図4(a)は、前記整理ルール群に含まれる整理ルールの他の例を整理ルール212として示している。この整理ルール212は、「名称」、「条件」および「適用処理」の欄に記載されているように、未整理設計データに対応した複数の画面系列において、各画面系列の最初からn個の要素からなる部分画面系列が同一の場合、この複数の画面系列を、分岐を使って統合するものである。図4(b)は、未整理設計データ110に含まれる画面系列114中の最初の部分画面系列1141と、画面系列115中の最初の部分画面系列1151とが同一である場合を示している。この場合には、未整理設計データは、ルール処理手段22により、整理ルール212に基づいて整理済み設計データ1200に変換される。この変換された整理済み設計データ1200は、図4(c)に示すように、共通の部分画面系列1241(互いに同一の部分画面系列である1141及び1151と同じ。)と、そこから分岐する部分画面系列1242と1243とで表わされたものとなる。図4は未整理設計データである画面系列2個について、その間で同一の部分画面系列がある場合の例である。この種の処理には、未整理設計データである画面系列数がもっと多い場合も含めてよい。
このように統合化することで、ソフトウェア設計者は、例えば部分画面系列1141や1151について機能の拡張・縮小・変更等の処理を施す場合に、個々の部分画面系列1141や1151ごとに処理を施す必要がなくなり、整理済み設計データの部分画面系列1241にのみ必要な処理を施せばすむことになる。また、この例では、整理済み設計データにより分岐構造が明示される形になるため、ソフトウェア設計者は、分岐数の増減処理による機能の拡張・縮小・変更を容易に実施できるため、未整理設計データで同様な処理を施す場合に比べると処理を大幅に簡略化することが可能となり、開発の効率化を図ことができる。また、処理の簡略化により、完成したソフトウェアの信頼性も向上する。整理ルール212の条件値nは、予め決められた値であるが、ソフトウェアの設計に大きく影響する点に留意して決定される。
以上の2例に示すように、整理ルール群を格納するルール格納手段21と、この整理ルール群の各整理ルールを、設計データ格納手段1に格納されている既存の未整理設計データに適用するルール処理手段22とを用いることにより、既存の未整理設計データは、階層化、統合化、分岐化、分割化等の処理が施され、設計データの構造の理解が容易な形に整理された、整理済み設計データに変換される。未整理設計データをそのまま再利用する場合、ソフトウェア設計者は、ソフトウェアの機能の拡張、縮小、変更、構造変更等を実施するにあたって、そのソフトウェア構造が見えない中で、再利用したい設計データごとに、その再利用のために必要な処理を検討しなければならないことから、設計には大変な困難を伴う。しかし、上記のような整理がなされることで、ソフトウェア設計者は、他のソフトウェア設計者の設計意図を容易に理解することができ、ソフトウェア機能の拡張、縮小、変更、構造変更等に際して、蓄積された設計データの再利用が容易になる。
尚、以上の説明では、2種類の整理ルールを例示して説明したが、本実施の形態に係る発明は、これらの整理ルールに限定されるものではなく、その他の整理ルールについても同様の効果を奏することができる。また、上記整理ルールは、表形式で記述したものであったが、表形式にこだわるものではなく、「条件(条件値含む)」とその条件を満たす場合の「適用処理」が記述されていればよい。例えば、整理ルールがIF−THENルールやその他の形式で表現されていても上記と同様な効果を奏することができる。なお、未整理設計データ格納手段11と整理済み設計データ格納手段12と設計データ格納手段1との関係はすでに説明したとおり、自由な構成が可能であり、そのいずれにおいても上記と同様な効果を奏することができる。
また、以上の説明で、ルール処理手段22は、未整理設計データに対して全整理ルールを1回しか適用していないが、これを複数回適用してもよい。複数回の適用の際は、その前の回の整理済み設計データを未整理設計データとして扱うことになる。このように整理ルールを繰り返す適用することで、設計データの整理が促進され、より再利用性の高い設計データに変換される。
また、以上の説明で、ルール処理手段22は、未整理設計データに対して全整理ルールを1回しか適用していないが、これを複数回適用してもよい。複数回の適用の際は、その前の回の整理済み設計データを未整理設計データとして扱うことになる。このように整理ルールを繰り返す適用することで、設計データの整理が促進され、より再利用性の高い設計データに変換される。
実施の形態2
実施の形態2の発明は、整理ルールの「条件」を満たすために必要な十分な数の未整理設計データが蓄積されていない場合でも、未整理設計データを新たに生成補充することにより、この整理ルールの「条件」を満たす状況を作り出し、整理を進めるというものである。図5は、実施の形態2の発明の構成を示している。この構成は、実施の形態1の構成に、入力情報生成手段3と、モデル生成手段5とを付加したものである。入力情報生成手段3は、ルール処理手段22からの指示により、イベントを生成し、差分開発の基礎とするソフトウェアプロダクト4に、このイベントを入力する。モデル生成手段5は、入力されたイベントによりソフトウェアプロダクト4に生じた表示画面の変化情報と、この入力されたイベントとを入力し、これらを合わせて画面系列とし、この画面系列をモデル設計データとする。そして、このモデル設計データを、未整理設計データの一部として未整理設計データ格納手段11に格納する指示をする。他の構成要素は実施の形態1の場合と同じである。即ち、実施の形態1の図1に示す構成に、入力情報生成手段3と、モデル生成手段5とを付加することにより、差分開発の基礎とするソフトウェアプロダクト4を介して未整理設計データを新たに生成補充する手段が提供される。この補充により、整理ルールの「条件」を満たすだけの未整理設計データがそろえば、その整理ルールに基づく未整理設計データの整理が促進される。
実施の形態2の発明は、整理ルールの「条件」を満たすために必要な十分な数の未整理設計データが蓄積されていない場合でも、未整理設計データを新たに生成補充することにより、この整理ルールの「条件」を満たす状況を作り出し、整理を進めるというものである。図5は、実施の形態2の発明の構成を示している。この構成は、実施の形態1の構成に、入力情報生成手段3と、モデル生成手段5とを付加したものである。入力情報生成手段3は、ルール処理手段22からの指示により、イベントを生成し、差分開発の基礎とするソフトウェアプロダクト4に、このイベントを入力する。モデル生成手段5は、入力されたイベントによりソフトウェアプロダクト4に生じた表示画面の変化情報と、この入力されたイベントとを入力し、これらを合わせて画面系列とし、この画面系列をモデル設計データとする。そして、このモデル設計データを、未整理設計データの一部として未整理設計データ格納手段11に格納する指示をする。他の構成要素は実施の形態1の場合と同じである。即ち、実施の形態1の図1に示す構成に、入力情報生成手段3と、モデル生成手段5とを付加することにより、差分開発の基礎とするソフトウェアプロダクト4を介して未整理設計データを新たに生成補充する手段が提供される。この補充により、整理ルールの「条件」を満たすだけの未整理設計データがそろえば、その整理ルールに基づく未整理設計データの整理が促進される。
本実施の形態により未整理設計データを整理済み設計データに変換する手順は、図2と図6とで示される。図2についての説明は、実施の形態1での説明と同じであるが、図2のSTEP3については、図6の手順に従うものとする。図7は、本実施の形態を説明するための整理ルール、未整理設計データおよび整理済み設計データの具体例を示す。図7(a)は実施の形態1で示した整理ルールとは異なる他の例を、図7(b)はこの整理ルールに対応した未整理設計データの例を、図7(d)は、この整理ルールで整理した、整理済み設計データの例を示す。この例に示す処理は、図7(a)、(b)に示すとおり、イベントxを、任意の画面に入力するとその画面のひとつ前の画面に戻るという「戻るイベント」である。図7(a)に示す整理ルール213の「戻るイベント同定1」には、未整理設計データの一部を「戻るイベント」であると同定し、整理するための「条件」と、その条件が満たされた場合の「適用処理」の内容が記載されている。
この「条件」を満足する場合は、整理ルール213の「適用処理」に記載の内容に従って(この例では「戻るイベント」を使って)、未整理設計データが、整理済み設計データに変換される。このことは実施の形態1で説明したとおりである。しかし、この条件を満たさないために整理対象から除外され、未整理設計データの整理が進まないというケースもある。このようなケースをできるだけ低減するために、整理ルール「戻るイベント同定1」の後にもう一つの整理ルール「戻るイベント同定2」が置かれる。この「戻るイベント同定2」の「条件」を満たす場合は、「戻るイベント同定2」の「適用処理」に従い、設計データが補充され、補充された設計データは未整理設計データに含められる。そして、この補充された未整理設計データは、改めて「戻るイベント同定1」で再評価される。
以上の処理を図2と図6に従って説明する。図2のSTEP1,2の処理内容は、実施の形態1の場合と同じなので、説明を省略する。すでに説明したとおり、図6は、図2のSTEP3に該当する部分の手順を詳細に示したものである。まず、ルール処理手段22は、図7(a)の整理ルール213に含まれる最初の整理ルール(ここでは説明の簡略化のために、i=1としておく)「戻るイベント同定1」の「条件」を未整理設計データ110に適用し(図6のSTEP31)、この「条件」を満たすかどうかの判定を行う(STEP32)。図7(b)に示す未整理設計データ110では、該当するデータ数が2個しかなく、”3回”を要求するこの「条件」を満たさない。従って、ルール処理手段22は、処理手順を、図2のSTEP4に戻す。次に、ルール処理手段22は、i=2に対応する「戻るイベント同定2」を未整理設計データ110に適用し(STEP31)、この整理ルールの条件を満たすかどうかの判定を行う(STEP32)。満たさなければ、再度STEP4に移行し、本実施の形態に係る処理は完了し、他の整理ルールについての処理に移行する(図2のSTEP4)。上記「戻るイベント同定2」の条件を満たす場合は、ルール処理手段22は、処理手順を設計データを補充する過程(STEP33からSTEP39)に進める。
補充は、以下に説明する通り、差分開発の基礎とするソフトウェアプロダクト4にイベントを入力することにより実行される。ルール処理手段22は、まず、補充するデータ数kを設定する(STEP33)。このkの値は、「戻るイベント同定2」の「適用処理」に記載された値であるが、あらかじめ任意に決めておく性格のものである。次に、ルール処理手段22は、データの補充が必要と判断された整理ルール、即ちこの例では「戻るイベント同定1」の「適用処理」の内容を解析することにより、1連の画面系列を設計データとして補充する際にどのような画面から始めるか、また、どのようなイベントを必要とするかについて決定する(STEP34)。最初にイベントを入力する初期画面は、どのような設計データを補充するかにより、任意の画面から始めてよいこともあるし、特定の画面から始めなければならない場合もあるからである。イベントについても同様で、特定のイベントを指定する場合もあるし、特定の画面に対して任意のイベントでよい場合もある。
「戻るイベント同定1」の場合、ルール処理手段22は、イベントをイベントxに固定し、初期画面を任意に設定する。なお、補充すべき設計データを取得するために、差分開発の基礎となる既知のソフトウェアプロダクト4が使用されるので、上記初期画面を設定するために必要な入力イベントは既知であり、ルール処理手段22はこれを認識・設定することができる。
「戻るイベント同定1」の場合、ルール処理手段22は、イベントをイベントxに固定し、初期画面を任意に設定する。なお、補充すべき設計データを取得するために、差分開発の基礎となる既知のソフトウェアプロダクト4が使用されるので、上記初期画面を設定するために必要な入力イベントは既知であり、ルール処理手段22はこれを認識・設定することができる。
ルール処理手段22は、このようにして設定されたイベントの発生を入力情報生成手段3に指示する(STEP34およびSTEP35)。入力情報生成手段3は、まず、初期画面設定用に指示されたイベントをソフトウェアプロダクト4に入力し(STEP34)、表示画面を、設定した初期画面に移行させ、その後に、さらに一画面系列の取得に必要な指示されたイベントp(この例では「戻るイベント」であるイベントx)を逐次ソフトウェアプロダクト4に入力(STEP35)する。ソフトウェアプロダクト4ではイベントpの処理を実行することにより、表示画面が表示画面pに変化する(STEP36)。モデル生成手段5は、初期画面移行後に、ソフトウェアプロダクト4に入力した一連のイベント(戻るイベントの例では、イベントxは1個だけ。)と、その結果生じたソフトウェアプロダクト4の画面変化情報とを入力する(STEP37)。ルール処理手段22は、1画面系列の補充に必要な一連のイベントの処理が終了したかどうか(STEP38)を判定し、まだの場合は1画面系列の補充に必要な一連のイベント処理が終了するまで、STEP35からSTEP37の処理を繰り返させる。ルール処理手段22は、1画面系列が得られたとの判定がなされた場合には、次に、整理ルール「戻るイベント同定2」の適用処理に規定されている補充を要するk個の画面系列の作成が終了したかどうかを判定する(STEP39)。終了していれば、モデル生成手段5は、入力された、一連のイベントと、対応する画面変化情報から、画面系列としての設計データをk個作成する(STEP40)。これをモデル設計データと呼ぶが、モデル生成手段5は、このモデル設計データを未整理設計データに補充し、未整理設計データ格納手段11にも格納する(STEP41)。ルール処理手段22は、この補充後の未整理設計データを整理ルール213の「戻るイベント同定1」の「条件」に従って再評価して整理する(STEP42)。上述の通りk通りの一連のイベントとそれに対応するk通りの表示画面データ、即ちk個の画面系列が生成され未整理設計データに補充されるが、「戻るイベント同定1」の「条件」を満たすだけの設計データが補充されているかどうかは不明であり、再度、「戻るイベント同定1」の「条件」を満たさないこともある。その場合、この「戻るイベント同定1」と「戻るイベント同定2」とを、何回繰り返すかは、それぞれの適用処理の中で明示することができる。図7(c)は、このような補充過程を経た後、補充されたモデル設計データの例を示す。図7(b)と(c)の設計データをあわせて未整理設計データとして、これを整理ルール213「戻るイベント同定1」で再評価した結果、「イベントx」は「戻るイベント」であるとして、図7(d)に示すような整理済み設計データに変換される。
図8は、本実施の形態を説明するための他の整理ルール、未整理設計データおよび整理済み設計データの具体例を示す。図8(a)は図7(a)で示した整理ルールとは異なる他の整理ルールの例を、図8(b)はこの整理ルールに対応した未整理設計データの例を、図8(c)は、図7の(c)の場合と同様に、補充されたモデル生成設計データの例を、図8(d)は、この整理ルールで整理した、整理済み設計データの例を示す。
図8(a)に示す整理ルール214は、整理ルール「中間画面統合1」と、この後に置かれる整理ルール「中間画面統合2」とで構成されている。「中間画面統合1」は、複数の画面系列において中間の画面が同一で、且つ当該画面までの部分画面系列(若しくは履歴)にかかわらず、当該画面でのイベントのみに依存して遷移先が決まる場合、そのような画面系列数がn以上あれば、それを統合するという内容である。また、「中間画面統合2」は上記画面系列数がnに満たなくてもm以上であれば、この「中間画面統合2」の「適用処理」に従がって処理する、即ち、設計データの補充を行い「中間画面統合1」に戻り再評価するという内容である。この例の未整理設計データから整理済み設計データへの変換処理は、以下のように実行される。なお、図2、図6で説明した処理の手順はこの例においても同じなので、以下では図2、図6の各STEPとの照合は省略する。
図8(a)に示す整理ルール214は、整理ルール「中間画面統合1」と、この後に置かれる整理ルール「中間画面統合2」とで構成されている。「中間画面統合1」は、複数の画面系列において中間の画面が同一で、且つ当該画面までの部分画面系列(若しくは履歴)にかかわらず、当該画面でのイベントのみに依存して遷移先が決まる場合、そのような画面系列数がn以上あれば、それを統合するという内容である。また、「中間画面統合2」は上記画面系列数がnに満たなくてもm以上であれば、この「中間画面統合2」の「適用処理」に従がって処理する、即ち、設計データの補充を行い「中間画面統合1」に戻り再評価するという内容である。この例の未整理設計データから整理済み設計データへの変換処理は、以下のように実行される。なお、図2、図6で説明した処理の手順はこの例においても同じなので、以下では図2、図6の各STEPとの照合は省略する。
この例の未整理設計データは、図8(b)に示すように2つの未整理設計データである画面系列118、119を有している。両画面系列とも画面Xを有し、その直後の画面は、この画面Xに到る部分画面系列(即ち履歴)に依らず、この画面Xに対するイベントのみによって決定されている。即ち、イベント発生後の画面は、そのイベントがイベントxbであれば画面Bに、イベントxdであれば画面Dに遷移する。ルール処理手段22は、この未整理設計データに対して、整理ルール「中間画面統合1」を適用して、整理を試みる。この「中間画面統合1」の例では「条件値」はn=4に設定されており、「中間画面統合1」の「条件」は、未整理設計データ118,119の2例だけでは満たされない。従って、ルール処理手段22は、未整理設計データ118と119とを統合して整理することは出来ないと判断し、次に、整理ルール「中間画面統合2」による評価に移行する。「中間画面統合2」の「条件値」は、この例ではm=2なので、未整理設計データが118,119の2例だけでも、この「条件」は満たされる。そこで、ルール処理手段22は、不足する設計データを未整理設計データの一部として補充するための処理に移行する。補充手順は、図7の説明で述べたとおりで、モデル生成手段5で生成されたモデル設計データが、図8(c)の画面系列512、513である。モデル生成手段5は、これらを未整理設計データ110に加え、ルール処理手段22は、この補充後の未整理設計データについて、整理ルール「中間画面統合1」による再評価を行う。このケースでは「条件」に対応する画面系列の数が当初の2から4に増加し、「条件」が満たされることになるので、ルール処理手段22は、補充後の未整理設計データに対して「中間画面統合1」の「適用処理」の欄に記載された処理を実行し、その結果、未整理設計データ118、119は図8(c)に示す2つのモデル生成設計データ512、513の補充を受け、図8(d)に示す通り、一つの整理済み設計データ128に変換される。
以上の2例に示すように、ルール処理手段22は、設計データ格納手段1に格納されている未整理設計データだけでは、データ数の点で条件を満足できず、十分な整理ができない場合に、不足する未整理設計データの生成指示を入力情報生成手段3に対して行う。この指示を受けた入力情報生成手段3は、イベントを生成し、ソフトウェアプロダクト4に対して、このイベントを入力する。モデル生成手段5は、ソフトウェアプロダクト4に入力されたイベントと、この入力によりソフトウェアプロダクト4において生じた画面変化とからモデル設計データを生成し、これを未整理設計データの一部として補充するとともに、未整理設計データ格納手段11に格納する。ルール処理手段22は、この補充後の未整理設計データに対して、実施の形態1で説明した処理と同様の処理を行い、整理済み設計データに変換する。このような整理がなされることで、設計データの不足により整理ができなかった設計データも整理が可能となり、より再利用しやすい形の設計データを得ることができる。この様に、本実施の形態に依れば、より広範なケースに対して実施の形態1の効果と同様の効果が期待できる。
本実施の形態に依れば、以上の効果に加え、ユーザーインタフェースソフトウェア設計システムを初めて利用する場合においても、一定の効果が期待できる。すなわち、未整理設計データ格納手段11に未整理設計データ1が蓄積されていなかった場合でも、差分開発の基礎となるソフトウェアプロダクト4を介して上述した過程によりモデル設計データを容易に生成することができ、これを過去の蓄積された未整理設計データとみなして整理済み設計データへの変換を行うことができる。従がって、ユーザーインタフェースソフトウェア設計システムの使用初期の段階から、設計開発の効率化が可能となる。なお、本実施の形態は、ここで例示した整理ルールに限定されるものではなく、他の整理ルールについても、同様に適用できるものであり、上述同様の効果を奏する。
尚、以上の説明では、2種類の整理ルールを例示して説明したが、本実施の形態に係る発明は、これらの整理ルールに限定されるものではなく、その他の整理ルールについても同様の効果を奏することができる。また、上記整理ルールは、表形式で記述したものであったが、表形式にこだわるものではなく、「条件(条件値含む)」とその条件を満たす場合の「適用処理」が記述されていればよい。例えば、整理ルールがIF−THENルールやその他の形式で表現されていても上記と同様な効果を奏することができる。なお、未整理設計データ格納手段11と整理済み設計データ格納手段12と設計データ格納手段1との関係はすでに説明したとおり、自由な構成が可能であり、そのいずれにおいても上記と同様な効果を奏することができる。
また、実施の形態1での説明と同様に、ルール処理手段22は、未整理設計データに対して全整理ルールを複数回適用してもよい。複数回の適用の際は、その前の回の整理済み設計データを未整理設計データとして扱うことになる。このように整理ルールを繰り返し適用することで、設計データの整理が促進され、より再利用性の高い設計データに変換される。
また、実施の形態1での説明と同様に、ルール処理手段22は、未整理設計データに対して全整理ルールを複数回適用してもよい。複数回の適用の際は、その前の回の整理済み設計データを未整理設計データとして扱うことになる。このように整理ルールを繰り返し適用することで、設計データの整理が促進され、より再利用性の高い設計データに変換される。
実施の形態3
図9は、本発明の実施の形態3の構成を示している。この構成は、実施の形態1の構成に設計データ編集手段6を加えたものである。設計データ編集手段6は、未整理設計データ格納手段11に格納されている未整理設計データを編集する手段である。ソフトウェア設計者は、この設計データ編集手段6を使い、特定の未整理設計データ110に対して、これまで説明してきた整理ルールとは別枠で予め設定されているルールテンプレートという整理ルールを優先適用することを指定できる。このルールテンプレートは、ルール格納手段21に、これまで説明してきた整理ルールとは別に格納されている。複数のルールテンプレートもありうるので、上記設計データ編集手段6での指定には、対象とする未整理設計データの指定と共に、優先適用するルールテンプレートの名称(又は番号、符号等の識別子。以下、名称と略称する。)の指定も含めることができる。例えば、未整理設計データの個々の設計データ毎に、優先適用記載欄が設けられ、ソフトウェア設計者は、予め、その欄に優先適用するルールテンプレートの名称等を入力する。
図9は、本発明の実施の形態3の構成を示している。この構成は、実施の形態1の構成に設計データ編集手段6を加えたものである。設計データ編集手段6は、未整理設計データ格納手段11に格納されている未整理設計データを編集する手段である。ソフトウェア設計者は、この設計データ編集手段6を使い、特定の未整理設計データ110に対して、これまで説明してきた整理ルールとは別枠で予め設定されているルールテンプレートという整理ルールを優先適用することを指定できる。このルールテンプレートは、ルール格納手段21に、これまで説明してきた整理ルールとは別に格納されている。複数のルールテンプレートもありうるので、上記設計データ編集手段6での指定には、対象とする未整理設計データの指定と共に、優先適用するルールテンプレートの名称(又は番号、符号等の識別子。以下、名称と略称する。)の指定も含めることができる。例えば、未整理設計データの個々の設計データ毎に、優先適用記載欄が設けられ、ソフトウェア設計者は、予め、その欄に優先適用するルールテンプレートの名称等を入力する。
ルールテンプレートの優先適用は、例えば、未整理設計データの画面系列内で、特定の部分画面系列が特定の形状でその前後とつながりがあることが予めわかっている場合等に必要となる。そのような未整理設計データに対しては、ルール格納手段21に格納されている整理ルールを機械的に適用させるのではなく、前記特定の形状を有する部分画像系列に応じた「ルールテンプレート」を適用するほうが設計意図を良く表すことができる場合があるからである。
図10は本実施の形態に係る処理を示すもので、この処理は、図2のSTEP2とSTEP3の間に挿入される。また、図11は、本実施の形態の説明に使用する具体例を示す。図11(a)はルールテンプレートの具体例であるメニューテンプレート215を示す。その内容は、図11(a)の表に記載された通りである。図11(b)は未整理設計データ1100、図11(c)はメニューテンプレート215に従って未整理設計データ110を整理した後の整理済み設計データを示す。ここで、ソフトウェア設計者は、図11(b)の未整理設計データ1100に含まれる画面Aが、メニュー画面である可能性を認識しているものとする。従って、ソフトウェア設計者は、設計データ編集手段6を使い、あらかじめ、この未整理設計データ1100の優先適用記載欄に優先適用するルールテンプレートの名称として、メニューテンプレート215の名称を記載しているものとする。以下、図10、図11に従って、ルール処理手段22による未整理設計データの処理手順を説明する。処理は、図2のSTEP1から開始されるが、STEP2までは実施の形態1の場合と同じなので、ここでは説明を省略する。STEP2の後、ルール処理手段22は、未整理設計データに優先適用のルールテンプレートの指定があるかどうかを判定する(STEP21)。指定がなければ、図2のSTEP3に戻り、指定があれば、その未整理設計データに対して指定されたルールテンプレート(本例ではメニューテンプレート215)での処理を実施する(STEP21)。図11の例では、未整理設計データ1100には指定があるので、STEP22での処理の対象となる。
以下、STEP22の処理内容を詳細に説明する。図11(a)に示すメニューテンプレート215には、”分岐先の階層化”という「適用処理」とその適用のための「条件」が、記載されている。ルール処理手段22は、メニューテンプレート215に示されている「条件」に従って、画面系列1100を解析し、ある画面Aに分岐がn以上ある場合に、その画面Aはメニュー画面と判断する。この例では、画面Aは部分画面系列1101から1103に分岐しているので、n=3となり、図11(a)の「条件値」を満たす。そこで、画面Aはメニュー画面であると見なされ、未整理設計データ1100に対して、図11(a)の「適用処理」に従って、”分岐先の階層化”処理が実行される。その結果、未整理設計データ1100は、図11(c)に示す4個の階層化された整理済み設計データ1200から1203に変換される。
次に、本実施の形態のバリエーションについて説明する。ここでは、ソフトウェア設計者は、設計データ編集手段6を使い、特定の未整理設計データに対して、予め、整理ルール”非適用”の指定を行う。指定された設計データ、即ち画面系列は、整理ルール適用対象から除外される。この指定による処理は、すでにある程度整理されている設計データを再度整理する場合などに必要とされることが多い。
図2のSTEP3に移行する前に、図12に示すとおり、非適用指定の有無を判断するSTEP23が挿入されており、未整理設計データに対して、指定がなければ実施の形態1と同様の処理を、指定があれば、図2のSTEP4に移行し、整理ルールの適用を行わないこととする。この非適用指定欄は独立して設けることもできるが、図10、図11で説明した整理ルール優先適用の指定欄と共用することもできる。
図2のSTEP3に移行する前に、図12に示すとおり、非適用指定の有無を判断するSTEP23が挿入されており、未整理設計データに対して、指定がなければ実施の形態1と同様の処理を、指定があれば、図2のSTEP4に移行し、整理ルールの適用を行わないこととする。この非適用指定欄は独立して設けることもできるが、図10、図11で説明した整理ルール優先適用の指定欄と共用することもできる。
なお、整理済み設計データに対して、再度別な観点からの整理を行いたい場合にも、この機能を使うことができる。具体的には、既に一定の整理が進み、これ以上の整理を望まない設計データに対して、ソフトウェア設計者は、設計データ編集手段6を使って、整理適用除外(非適用)を指定する。そうすると、ルール処理手段22は、この非適用指定された設計データも含む、一定の整理が進んだ設計データ全てを、未整理設計データとして未整理設計データ格納手段へ格納指示をするとともに、この未整理設計データに対して、再度整理ルールを適用して整理を行う。
具体例を図13に示す。図13(a)の整理ルール216は、通常の未整理設計データに対して適用すべき整理ルールの例、図13(b)は未整理設計データ、図13(c)は整理済み設計データを示す。ここで、未整理設計データ1104は、非適用を指定されているものとする。ルール処理手段22は、未整理設計データ1104に対しては整理ルール216の適用を除外し、整理ルール216による解析、処理を一切行わない。しかし、非適用指定のない、他の未整理設計データ、たとえば画面系列1105に対しては解析・変換を実行し、13(c)に示す画面系列1205のように変換する。即ち、画面系列1105は、既にある程度整理が進んだ設計データである既存の画面系列1104と同じ部分画面系列を含んでいるので、当該部分画面系列については、この既存の画面系列を呼び出す形で置き換え処理される。このように置き換え処理を施すためには、置き換えのベースとなる画面系列が変換されて変質してしまわないように保存しておく必要がある。そのため、予め、この画面系列である設計データに”非適用”指定がなされる。
このように設計データ編集手段6の導入により、ソフトウェア設計者は、整理ルールの機械的な適用による解析、変換のみでなく、個々の設計データの状況に対応して設計者の意図を反映した形での設計データの整理を行うことができるので、より再利用しやすい設計データの構築が可能となる。なお、以上の例では、ルールテンプレートの優先適用を指定する手段、及び、整理ルールの適用除外を指定する手段として、設計データ編集手段6が利用されているが、実質的に設計データに上記の指定ができる手段であれば「編集手段」でなくてもよく、本実施の形態同様の効果を奏することができる。また、この実施の形態では設計データ編集手段6を実施の形態1の図1に示すシステムに付加した例を示したが、実施の形態2の図5に示すシステムに付加した場合でもこの実施の形態で説明した効果と同様の効果を奏することができる。
尚、本実施の形態に係る発明は、例示した整理ルールに限定されるものではなく、その他の整理ルールについても同様の効果を奏することができる。また、上記整理ルールは、表形式で記述したものであったが、表形式にこだわるものではなく、「条件(条件値含む)」とその条件を満たす場合の「適用処理」が記述されていればよい。例えば、整理ルールがIF−THENルールやその他の形式で表現されていても上記と同様な効果を奏することができる。なお、未整理設計データ格納手段11と整理済み設計データ格納手段12と設計データ格納手段1との関係はすでに説明したとおり、自由な構成が可能であり、そのいずれにおいても上記と同様な効果を奏することができる。
また、実施の形態1での説明と同様に、ルール処理手段22は、未整理設計データに対して全整理ルールを複数回適用してもよい。複数回の適用の際は、その前の回の整理済み設計データを未整理設計データとして扱うことになる。このように整理ルールを繰り返し適用することで、設計データの整理が促進され、より再利用性の高い設計データに変換される。
また、実施の形態1での説明と同様に、ルール処理手段22は、未整理設計データに対して全整理ルールを複数回適用してもよい。複数回の適用の際は、その前の回の整理済み設計データを未整理設計データとして扱うことになる。このように整理ルールを繰り返し適用することで、設計データの整理が促進され、より再利用性の高い設計データに変換される。
実施の形態4
実施の形態4は、これまで説明してきた各実施の形態のいずれかにルール編集手段7を加えたものである。ルール編集手段7によれば、ソフトウェア設計者は、ルール格納手段21に格納された整理ルールやテンプレートの追加、削除、変更等を行うことが可能となるとともに、ルールの適用順序も変更することができる。この様な手段を設けることにより、整理ルール群の充実化や、ルール適用処理の適正化が可能となり、そのことにより、ソフトウェア設計者は、より効果的に設計データの整理を行うことができる。これにより、設計意図の理解が容易な形に整理された、より再利用しやすい設計データの構築が可能となる。なお、図14は、本発明の実施の形態4の構成を、実施の形態1から3までの全ての要素を含めた場合について示したものである。
実施の形態4は、これまで説明してきた各実施の形態のいずれかにルール編集手段7を加えたものである。ルール編集手段7によれば、ソフトウェア設計者は、ルール格納手段21に格納された整理ルールやテンプレートの追加、削除、変更等を行うことが可能となるとともに、ルールの適用順序も変更することができる。この様な手段を設けることにより、整理ルール群の充実化や、ルール適用処理の適正化が可能となり、そのことにより、ソフトウェア設計者は、より効果的に設計データの整理を行うことができる。これにより、設計意図の理解が容易な形に整理された、より再利用しやすい設計データの構築が可能となる。なお、図14は、本発明の実施の形態4の構成を、実施の形態1から3までの全ての要素を含めた場合について示したものである。
この発明は、携帯電話、携帯情報端末、カーナビゲーション装置等のソフトウェアプロダクト装備機器分野におけるソフトウェアの一部であるユーザインタフェースソフトウェアの設計開発に利用される。
Claims (8)
- ソフトウェアプロダクトへのイベントと、このイベントに対応する前記ソフトウェアプロダクトの画面変化情報とからなる、ユーザーインタフェースソフトウェア用設計データを、未整理設計データとして格納する未整理設計データ格納手段と、前記未整理設計データを再利用しやすい形に変換するルールを記述する整理ルールの集合体である整理ルール群を格納するルール格納手段と、前記未整理設計データ格納手段に格納された未整理設計データ及び前記ルール格納手段に格納された整理ルール群を読み出し、この読み出した未整理設計データに対して、前記読み出した整理ルール群に含まれる各整理ルールを逐次適用し、解析することにより、前記未整理設計データを整理済み設計データに変換するルール処理手段と、このルール処理手段の指示により、前記整理済み設計データを格納する整理済み設計データ格納手段とを有するユーザーインタフェースソフトウェア設計システム。
- ルール処理手段の指示により、整理済み設計データを未整理設計データに置き換え、この未整理設計データに対して、整理ルール群に含まれる整理ルールを再度逐次適用し、解析することにより、整理済み設計データに変換することを特徴とする請求項1に記載のユーザーインタフェースソフトウェア設計システム。
- 差分開発の基礎とするソフトウェアプロダクトへのイベントを生成し、当該ソフトウェアプロダクトに入力する入力情報生成手段と、前記ソフトウェアプロダクトへ入力した前記イベント、及び、この入力したイベントに対する前記ソフトウェアプロダクトの画面変化情報を入力し、このイベントと画面変化情報とからなるデータをユーザーインタフェースソフトウェアの追加設計データとして生成するモデル生成手段とを有し、このモデル生成手段で生成された追加設計データを未整理設計データに加えることにより生成される新たな未整理設計データを、ルール処理手段により、整理済み設計データに変換することを特徴とする請求項1又は2に記載のユーザーインタフェースソフトウェア設計システム。
- ルール処理手段が、整理ルールに基づき、未整理設計データの解析を行ない、その結果から、設計データの追加が必要と判断した場合に、必要な追加設計データの生成を入力情報生成手段に対して指示することにより、この入力情報生成手段が、ソフトウェアプロダクトへのイベントを生成し、当該ソフトウェアプロダクトに入力することを特徴とする請求項3に記載のユーザーインタフェースソフトウェア設計システム。
- 未整理設計データの中の、特定の設計データは、予め指定された整理ルールの優先適用、および整理ルールの非適用のいずれかを指定するための指定欄を有し、この指定欄への指示を可能とする設計データ編集手段を有することを特徴とする請求項1乃至4のいずれかに記載のユーザーインタフェースソフトウェア設計システム。
- 入力情報に基づき整理ルールを編集するルール編集手段を有することを特徴とする請求項1乃至5のいずれかに記載のユーザーインタフェース設計システム。
- 未整理設計データ格納手段と、整理済み設計データ格納手段とを、設計データ格納手段として共用し、前記未整理設計データと前記整理済み設計データとを、それぞれ前記設計データ格納手段の異なる領域に格納することを特徴とする請求項1乃至6のいずれかに記載のユーザーインタフェースソフトウェア設計システム。
- 未整理設計データ格納手段と、整理済み設計データ格納手段とを、設計データ格納手段として共用し、この設計データ格納手段に格納されている前記未整理設計データを、整理済み設計データで書き換えることにより、この整理済み設計データを前記設計データ格納手段に格納することを特徴する請求項1乃至6のいずれかに記載のユーザーインタフェースソフトウェア設計システム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003356608 | 2003-10-16 | ||
JP2003356608 | 2003-10-16 | ||
PCT/JP2004/015124 WO2005038647A1 (ja) | 2003-10-16 | 2004-10-14 | ユーザーインタフェースソフトウェア設計システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2005038647A1 true JPWO2005038647A1 (ja) | 2007-01-18 |
Family
ID=34463215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005514763A Pending JPWO2005038647A1 (ja) | 2003-10-16 | 2004-10-14 | ユーザーインタフェースソフトウェア設計システム |
Country Status (5)
Country | Link |
---|---|
US (1) | US20070213968A1 (ja) |
JP (1) | JPWO2005038647A1 (ja) |
CN (1) | CN1867892B (ja) |
DE (1) | DE112004001955T5 (ja) |
WO (1) | WO2005038647A1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100382022C (zh) * | 2005-09-09 | 2008-04-16 | 华为技术有限公司 | 一种接口数据文法分析处理系统及其分析处理方法 |
US11676090B2 (en) | 2011-11-29 | 2023-06-13 | Model N, Inc. | Enhanced multi-component object-based design, computation, and evaluation |
JP5889135B2 (ja) * | 2012-07-10 | 2016-03-22 | 三菱電機株式会社 | ユーザインタフェース設計装置 |
US9466026B2 (en) | 2012-12-21 | 2016-10-11 | Model N, Inc. | Rule assignments and templating |
US11074643B1 (en) | 2012-12-21 | 2021-07-27 | Model N, Inc. | Method and systems for efficient product navigation and product configuration |
US10373066B2 (en) | 2012-12-21 | 2019-08-06 | Model N. Inc. | Simplified product configuration using table-based rules, rule conflict resolution through voting, and efficient model compilation |
US10757169B2 (en) | 2018-05-25 | 2020-08-25 | Model N, Inc. | Selective master data transport |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0451367A (ja) * | 1990-06-20 | 1992-02-19 | Toshiba Corp | 論理回路の合成装置 |
JPH1145176A (ja) * | 1997-07-28 | 1999-02-16 | Toshiba Corp | 編集装置、編集方法及び記録媒体 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH056272A (ja) * | 1991-06-28 | 1993-01-14 | Toshiba Corp | ソフトウエア設計装置 |
US5812847A (en) * | 1996-02-02 | 1998-09-22 | International Business Machines Corporation | Rule-based method for designing user interfaces for applications |
US6314415B1 (en) * | 1998-11-04 | 2001-11-06 | Cch Incorporated | Automated forms publishing system and method using a rule-based expert system to dynamically generate a graphical user interface |
US6427230B1 (en) * | 1998-11-09 | 2002-07-30 | Unisys Corporation | System and method for defining and managing reusable groups software constructs within an object management system |
US6256773B1 (en) * | 1999-08-31 | 2001-07-03 | Accenture Llp | System, method and article of manufacture for configuration management in a development architecture framework |
JP3881179B2 (ja) * | 2001-02-14 | 2007-02-14 | 三菱電機株式会社 | ユーザインタフェース設計装置 |
WO2002079912A2 (en) * | 2001-04-02 | 2002-10-10 | Orchid Systems, Inc. | System for and method of improving the operation of an existing software application |
US7149734B2 (en) * | 2001-07-06 | 2006-12-12 | Logic Library, Inc. | Managing reusable software assets |
US7322024B2 (en) * | 2002-03-18 | 2008-01-22 | Logiclibrary, Inc. | Generating reusable software assets from distributed artifacts |
US7647561B2 (en) * | 2001-08-28 | 2010-01-12 | Nvidia International, Inc. | System, method and computer program product for application development using a visual paradigm to combine existing data and applications |
US7412658B2 (en) * | 2002-11-14 | 2008-08-12 | Sap Ag | Modeling system for graphic user interface |
US7711736B2 (en) * | 2006-06-21 | 2010-05-04 | Microsoft International Holdings B.V. | Detection of attributes in unstructured data |
-
2004
- 2004-10-14 WO PCT/JP2004/015124 patent/WO2005038647A1/ja active Application Filing
- 2004-10-14 DE DE112004001955T patent/DE112004001955T5/de not_active Withdrawn
- 2004-10-14 US US10/574,785 patent/US20070213968A1/en not_active Abandoned
- 2004-10-14 JP JP2005514763A patent/JPWO2005038647A1/ja active Pending
- 2004-10-14 CN CN2004800303564A patent/CN1867892B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0451367A (ja) * | 1990-06-20 | 1992-02-19 | Toshiba Corp | 論理回路の合成装置 |
JPH1145176A (ja) * | 1997-07-28 | 1999-02-16 | Toshiba Corp | 編集装置、編集方法及び記録媒体 |
Non-Patent Citations (4)
Title |
---|
CSNG199800866011, 田倉昭(外2名), "「通信サービス仕様記述における要求理解について」", 電子情報通信学会技術研究報告, 19930723, 第93巻,第160号(SSE93−26〜38), 第61〜66頁, JP, 社団法人電子情報通信学会 * |
CSNG200100786004, 方学芬(外1名), "「再構築のためのソフトウェア解析アプローチ」", 情報処理学会研究報告, 20000526, 第2000巻,第46号(2000−SE−127), 第23〜30頁, JP, 社団法人情報処理学会 * |
JPN6010039845, 田倉昭(外2名), "「通信サービス仕様記述における要求理解について」", 電子情報通信学会技術研究報告, 19930723, 第93巻,第160号(SSE93−26〜38), 第61〜66頁, JP, 社団法人電子情報通信学会 * |
JPN6010039846, 方学芬(外1名), "「再構築のためのソフトウェア解析アプローチ」", 情報処理学会研究報告, 20000526, 第2000巻,第46号(2000−SE−127), 第23〜30頁, JP, 社団法人情報処理学会 * |
Also Published As
Publication number | Publication date |
---|---|
CN1867892A (zh) | 2006-11-22 |
WO2005038647A1 (ja) | 2005-04-28 |
CN1867892B (zh) | 2010-04-21 |
US20070213968A1 (en) | 2007-09-13 |
DE112004001955T5 (de) | 2006-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6966050B2 (en) | Software building support system | |
CN108984172B (zh) | 一种界面文件的生成方法及装置 | |
CN114115883A (zh) | 一种使用中台业务能力快速构建前端应用的方法 | |
CN111666100B (zh) | 软件框架生成方法、装置、电子设备及存储介质 | |
JPWO2005038647A1 (ja) | ユーザーインタフェースソフトウェア設計システム | |
JP2007323219A (ja) | Fmea支援装置、その装置、そのプログラム及びその媒体 | |
US20040049742A1 (en) | Document creation support system | |
JP3288460B2 (ja) | 表示データ生成装置及び方法 | |
CN114449063B (zh) | 一种报文处理方法、装置及设备 | |
JP2008146300A (ja) | 情報処理装置、情報処理方法およびプログラム | |
JP2011059770A (ja) | プロセス情報管理装置および方法およびプロセス情報管理プログラムを記録した記憶媒体 | |
JPS62197826A (ja) | システムフロ−仕様生成方式 | |
CN111124548B (zh) | 一种基于yaml文件的规则解析方法及系统 | |
CN113791772B (zh) | 一种可视化编辑器及使用方法 | |
CN112035094B (zh) | 基于Vuetify框架的穿梭框实现方法及装置 | |
JP4980025B2 (ja) | ページ差分生成装置及びページ差分生成プログラム | |
JP2002175185A (ja) | シナリオのクラス編集装置 | |
CN116540983A (zh) | 一种逻辑组态设计方法、装置及平台 | |
JPH08212061A (ja) | シナリオ表示装置、シナリオ表示方法及びシナリオのクラス編集装置 | |
CN117978662A (zh) | 一种可视化拓扑图的实现方法及装置 | |
JP2004240507A (ja) | Xml生成装置、およびxml生成プログラム | |
JP3843957B2 (ja) | ソフトウェア開発加工関連図生成システム,装置,方法およびプログラム | |
JP2001338001A (ja) | Cadモデル作成システムおよびcadモデル作成プログラムを記録した記録媒体 | |
Feng et al. | An agilely adaptive user interface based on design pattern | |
Tsygankov et al. | Constructive & Functional Representation of Engineering Products in a CAD-system at the Stage of Technical Design |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071004 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20071004 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100713 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20101109 |