(57)【要約】      （修正有）【課題】ビジネスアプリケーションにおいて単一コードを用いて多重スクリーンを支援するコンポーネントを構造化する方法に関するコンポーネント構造化方法、コンピュータプログラム及び電子装置を提供する。【解決手段】電子装置１０は、ＵＩ（ｕｓｅｒ  ｉｎｔｅｒｆａｃｅ）およびＵＸ（ｕｓｅｒ  ｅｘｐｅｒｉｅｎｃｅ）の基礎になるデータの構造およびデータ管理ロジックを定義して格納するコンポーネント規約部１５０と、外部から取得された少なくとも一つの情報に基づいて、ＵＩおよびＵＸの提供方式と関連したインスタンスの生成要請を生成部１６０に伝達するビジネスアプリケーション部１７０と、生成要請に応答してのコンポーネントに含まれたデータ部のオブジェクトおよび入出力部のオブジェクトを生成し、初期化した後、データ部のオブジェクトをビジネスアプリケーション部１７０に伝達する生成部１６０と、を備える。【選択図】図１
2019220158.tif 000002
【特許請求の範囲】
【請求項１】
電子装置の規約部が、ＵＩおよびＵＸの基礎になるデータの構造およびデータ管理ロジックを定義して前記電子装置の格納部に格納する動作、
前記電子装置のビジネスアプリケーション部が、外部から取得された少なくとも一つの情報に基づいて、前記ＵＩおよびＵＸの提供方式と関連したインスタンスの生成要請を前記電子装置の生成部に伝達する動作、
前記電子装置の生成部が、前記生成要請に応答して前記電子装置のコンポーネントに含まれたデータ部のオブジェクトおよび入出力部のオブジェクトを生成し、前記データ部のオブジェクトおよび前記入出力部のオブジェクトを初期化した後、前記データ部のオブジェクトを前記ビジネスアプリケーション部に伝達する動作、
前記電子装置のビジネスアプリケーション部が、前記伝達されたデータ部のオブジェクトに対して前記規約部により定義された前記データの構造およびデータ管理ロジックに応じた構造化要請を前記コンポーネントに伝達する動作、
前記コンポーネントのデータ部が、前記データ部のオブジェクトを構造化して前記格納部に格納し、前記格納されたデータ部のオブジェクトに対する出力要請を前記入出力部に伝達する動作、
前記コンポーネントの入出力部が、前記出力要請に応答して前記データ部のオブジェクトと対応する前記ＵＩおよびＵＸを前記電子装置の表示部を介して出力する動作、および、
前記電子装置のコンテナが、前記電子装置の政策部に定義された情報を用いて、前記電子装置の生成部を介して前記コンポーネントのオブジェクトを生成し、前記生成された前記コンポーネントのオブジェクトのうち少なくとも２個以上を組み合わせて複合コンポーネントを生成する動作を含み、
前記電子装置の規約部は、前記データの構造、前記データ管理ロジックおよび共通入出力機能だけを定義し、個別入出力機能は定義せず、および、
前記電子装置の規約部は、前記データ部のオブジェクトおよび前記入出力部のオブジェクトを生成する前記生成部を含む
ことを特徴とする、多重スクリーンを支援するコンポーネント構造化方法。
【請求項２】
前記データ部は基本データ部および拡張データ部を含み、
前記基本データ部が、前記電子装置の規約部により定義されたデータのうち入出力方式に影響を受けずスクリーン種類に関係なく全てのスクリーンに共通に適用可能な第１データを格納する動作、および、
前記拡張データ部が、前記電子装置の規約部により定義されておらず且つスクリーン種類に関係なく全てのスクリーンに共通に適用可能な第２データを格納する動作を含む
請求項１に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項３】
前記入出力部は基本入出力部および拡張入出力部を含み、
前記基本入出力部が、前記基本データ部に格納された前記第１データだけをスクリーン種類に関係なく同一の形態で出力する動作、および、
前記拡張入出力部が、前記拡張データ部に格納された前記第２データだけをスクリーン種類に関係なく同一の形態で出力する動作を含む
請求項２に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項４】
前記基本入出力部が、前記スクリーンの特性および制約事項に基づいて、前記基本データ部のオブジェクトに対する表示形態、内部構成要素の配置形態および外部との相互作用方式を決定する動作、および、
前記拡張入出力部が、前記スクリーンの特性および制約事項に基づいて、前記拡張データ部のオブジェクトに対する表示形態、内部構成要素の配置形態および外部との相互作用方式を決定する動作を含む
請求項３に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項５】
前記電子装置の生成部はシステム生成部およびユーザ生成部を含み、
前記システム生成部が、前記格納部に予め格納されたデータを用いて前記コンポーネントのオブジェクトを生成し、前記生成された前記コンポーネントのオブジェクトを組み合わせる動作、および、
前記ユーザ生成部が、外部から受信されたデータを用いて前記生成されたコンポーネントのオブジェクトと関連した追加オブジェクトを生成し、前記生成された追加オブジェクトを組み合わせる動作を含む
請求項１に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項６】
前記電子装置のコンテナが、前記規約部を用いて、前記複合コンポーネントを生成するのに必要なデータを定義し、前記生成された複合コンポーネントの一つ以上のデータ部および一つ以上の入出力部を組み合わせて新しいコンポーネントのオブジェクトを生成する動作を含む
請求項１に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項７】
前記電子装置のビジネスアプリケーション部が、第１時点に前記コンポーネントの機能実行範囲および実行方式と関連して前記政策部に定義された情報を前記生成部に提供する動作、および、
前記電子装置のビジネスアプリケーション部が、前記生成部から前記ＵＩおよびＵＸの提供方式と関連したインスタンスを受信する動作を含み、
前記電子装置のビジネスアプリケーション部は、前記データ部のオブジェクトおよび前記入出力部のオブジェクトを用い、スクリーン別に特化されたオブジェクトは用いないことによって、単一コード（ｓｉｎｇｌｅ  ｃｏｄｅ）を介して前記コンポーネントを制御する
請求項１に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項８】
前記電子装置の生成部が、前記生成要請に応答して前記電子装置のコンポーネントに含まれた基本データ部のオブジェクトおよび拡張データ部のオブジェクトを生成し、前記基本データ部のオブジェクトおよび前記拡張データ部のオブジェクトを初期化する動作、および、
前記電子装置の生成部が、前記基本データ部のオブジェクトをラッピング（ｗｒａｐｐｉｎｇ）する動作をさらに含む
請求項１に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項９】
前記電子装置の生成部が、前記コンポーネントのデータ部に前記コンポーネントの入出力部を注入（ｉｎｊｅｃｔ）する動作、
前記電子装置の生成部が、前記生成要請に応答して前記電子装置のコンポーネントに含まれた基本入出力部のオブジェクトおよび拡張入出力部のオブジェクトを生成し、前記基本入出力部のオブジェクトおよび前記拡張入出力部のオブジェクトを初期化する動作、および、
前記電子装置の生成部が、前記基本入出力部のオブジェクトをラッピング（ｗｒａｐｐｉｎｇ）する動作をさらに含む
請求項８に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項１０】
前記拡張データ部のオブジェクトは、拡張機能と関連したイベントプロセッサおよびメソッド（ｍｅｔｈｏｄ）、前記拡張機能を初期化できる属性（ｐｒｏｐｅｒｔｙ）を含む
請求項８に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項１１】
前記基本データ部のオブジェクトは、前記拡張データ部のオブジェクトに含まれた前記属性にアクセスできる汎用メソッドを含む
請求項１０に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項１２】
前記電子装置の政策部が、前記ＵＩおよびＵＸの提供方式と関連したインスタンスの動作方式および動作範囲を生成し、前記格納部に格納する動作をさらに含む
請求項１に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項１３】
前記電子装置の表示部を介して出力された前記ＵＩおよびＵＸに対して外部から変更要請が受信される場合、前記電子装置のビジネスアプリケーション部が、前記変更要請に応じた前記ＵＩおよびＵＸの提供方式と関連したインスタンスの生成要請を前記電子装置の生成部に伝達する動作をさらに含む
請求項１に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項１４】
請求項１ないし１３のいずれか１項に記載の方法を実行するプログラムを記録した
ことを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項１５】
請求項１ないし１３のいずれか１項に記載の方法をコンピュータとの結合によって実行させるための格納媒体に格納された
ことを特徴とするコンピュータプログラム。
【請求項１６】
電子装置であって、
ＵＩおよびＵＸの基礎になるデータの構造およびデータ管理ロジックを定義する規約部、
外部から取得された少なくとも一つの情報に基づいて、前記ＵＩおよびＵＸの提供方式と関連したインスタンスの生成を要請し、前記電子装置のコンポーネントに含まれたデータ部のオブジェクトに対して前記規約部により定義された前記データの構造およびデータ管理ロジックに応じた構造化を要請するビジネスアプリケーション部、
前記インスタンスの生成要請に応答して前記電子装置のコンポーネントに含まれたデータ部のオブジェクトおよび入出力部のオブジェクトを生成し、前記データ部のオブジェクトおよび前記入出力部のオブジェクトを初期化する生成部、
前記規約部により定義された前記データの構造およびデータ管理ロジックを格納する格納部、
前記データ部のオブジェクトを構造化して前記格納部に格納し、前記格納部に格納されたデータ部のオブジェクトに対する出力要請を前記入出力部に伝達するデータ部、
前記出力要請に応答して前記データ部のオブジェクトと対応する前記ＵＩおよびＵＸを出力する入出力部、および、
政策部に定義された情報を用いて、前記生成部を介して前記コンポーネントのオブジェクトを生成し、前記生成された前記コンポーネントのオブジェクトのうち少なくとも２個以上を組み合わせて複合コンポーネントを生成するコンテナを含み,
前記電子装置の規約部は、前記データの構造、前記データ管理ロジックおよび共通入出力機能だけを定義し、個別入出力機能は定義せず、および、
前記電子装置の規約部は、前記データ部のオブジェクトおよび前記入出力部のオブジェクトを生成する前記生成部を含む
ことを特徴とする電子装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビジネスアプリケーションにおいて単一コードを用いて多重スクリーンを支援するコンポーネントを構造化する方法に関する技術と関わる。
【背景技術】
【０００２】
スクリーン（ｓｃｒｅｅｎ）は、ビジネスアプリケーション（ｂｕｓｉｎｅｓｓ  ａｐｐｌｉｃａｔｉｏｎ）を実行しデータの入出力を処理する装置を意味し、最近、デスクトップ、タブレットＰＣおよびスマートフォンなどの様々なスクリーンの登場により、業務を処理するにおいて多重スクリーン（Ｎ−Ｓｃｒｅｅｎ）を支援することができるようにビジネスアプリケーションの機能拡張が求められている。
【０００３】
例えば、スクリーンの大きさ、解像度および入力装置の類型などに応じて、ユーザに提供するレコードのセットデータ（例えば、社員情報、注文情報など）とレコードのフィールドデータ（例えば、名前、性別、商品コードなど）のＵＩ（ｕｓｅｒ  ｉｎｔｅｒｆａｃｅ）の形態および相互作用方式が異なるように提供されることが求められている。
【０００４】
ビジネスアプリケーションは同一類型のレコードに対するセットデータまたはフィールドデータ別に、グリッド／テーブル／ラジオボタン／リストボックスなどのような種々のＵＩおよびＵＸ（ｕｓｅｒ  ｅｘｐｅｒｉｅｎｃｅ）を提供するコンポーネントを準備することができ、前記ビジネスアプリケーションが実行されるスクリーンに最も好適なコンポーネントを択一して制御できるソースコードを作成することができる。この場合、機能の目的（例えば、フィールド値の直接入力や目録の中から選択など）が同じであっても選択されたコンポーネントに応じてビジネスアプリケーションにおいて作成されるソースコードが異なることによって、多重スクリーンの個数だけのソースコードが作成されなければならない。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ビジネスアプリケーションは、業務処理において多重スクリーンを支援するために色々な方法を利用することができる。
【０００６】
例えば、ビジネスアプリケーションは、支援対象スクリーンのうち大きさが最も小さいかまたは機能性が最も低いスクリーンを基準にデータ別のコンポーネントの種類、形態、配置および動作構造などを規定した単一ソースコードを作成することができ、それを支援対象スクリーンに一括適用する方法を利用することができる。このような方法は、開発費用を減らし、簡便ではあるが、スクリーン別の特性とリソース使用の効率を極大化することができず、支援対象スクリーンにおいて共通に使用可能な最小レベルの機能と品質だけを提供可能であるという限界を有している。
【０００７】
また他の実施形態として、ビジネスアプリケーションは、支援対象スクリーンにおいてデータ別に同一のコンポーネントを用いるが、幾つかの選択可能なオプションを提供する方法を利用することができる。例えば、ビジネスアプリケーションは、幾つかの代替可能なリソース（例えば、種類別のグラフィックファイルなど）を準備した後、そのうちの一つに対する選択に応じて変更されたＵＩを提供することができる。但し、コンポーネントの入出力構造は定められているため、前記のような方法に従っても全てのスクリーン各々の特性に最適化されたコンポーネントを提供するのは難しい。
【０００８】
また他の実施形態として、ビジネスアプリケーションは、スクリーンの大きさ、解像度および入力装置類型などに応じて、ＵＩの形態および相互作用方式を異なるように適用したコンポーネントを備えた後、要請がある度に対応するコンポーネントを検索して提供する方法を利用することができる。このような方法は、支援対象スクリーン別に高品質のＵＩ／ＵＸを提供できる反面、支援対象スクリーンの個数に該当するソースコードを予め開発する必要があるため、メモリ側面の浪費と開発費用の増加をもたらしうる。
【０００９】
一方、上述したように、ＵＩ／ＵＸを提供するコンポーネントを選択し、選択されたコンポーネントをスクリーンに適用する一連の動作は、システムに格納された最終データをユーザに提供し、ユーザから取得された変更データをデータ永久記憶装置に反映しようとするビジネスアプリケーションの最終目的を達成するための手段として見ることができる。但し、前述したように、一部の方法には様々な限界が共存するところ、前記限界を補完しつつ前記ビジネスアプリケーションの最終目的を達成できる方法が求められる。
【００１０】
本発明はこのような要請に応答して導き出されたものであり、様々な実施形態によれば、コンポーネントにおいて処理しなければならないデータ対象と入出力方式に関する情報はビジネスアプリケーションにおいて管理され、ユーザとの相互作用を含む全ての入出力機能はビジネスアプリケーションから提供された情報を用いてコンポーネントにおいて管理される。この場合、支援対象スクリーンに対する複数のソースコードが予め開発される必要がなく、ビジネスアプリケーションは単一ソースコードだけを持っていても支援対象スクリーン各々に最適化された形態のＵＩおよびＵＸを提供することができる。
【課題を解決するための手段】
【００１１】
本発明の様々な実施形態により、多重スクリーンを支援するコンポーネントを構造化する方法は、電子装置の規約部が、ＵＩおよびＵＸの基礎になるデータの構造およびデータ管理ロジックを定義して前記電子装置の格納部に格納する動作、前記電子装置のビジネスアプリケーション部が、外部から取得された少なくとも一つの情報に基づいて、前記ＵＩおよびＵＸの提供方式と関連したインスタンスの生成要請を前記電子装置の生成部に伝達する動作、前記電子装置の生成部が、前記生成要請に応答して前記電子装置のコンポーネントに含まれたデータ部のオブジェクトおよび入出力部のオブジェクトを生成し、前記データ部のオブジェクトおよび前記入出力部のオブジェクトを初期化した後、前記データ部のオブジェクトを前記ビジネスアプリケーション部に伝達する動作、前記電子装置のビジネスアプリケーション部が、前記伝達されたデータ部のオブジェクトに対して前記規約部により定義された前記データの構造およびデータ管理ロジックに応じた構造化要請を前記コンポーネントに伝達する動作、前記コンポーネントのデータ部が、前記データ部のオブジェクトを構造化して前記格納部に格納し、前記格納されたデータ部のオブジェクトに対する出力要請を前記入出力部に伝達する動作、前記コンポーネントの入出力部が、前記出力要請に応答して前記データ部のオブジェクトと対応する前記ＵＩおよびＵＸを前記電子装置の表示部を介して出力する動作、および前記電子装置のコンテナが、前記電子装置の政策部に定義された情報を用いて、前記電子装置の生成部を介して前記コンポーネントのオブジェクトを生成し、前記生成された前記コンポーネントのオブジェクトのうち少なくとも２個以上を組み合わせて複合コンポーネントを生成する動作を含む。
【００１２】
本発明の様々な実施形態により、多重スクリーンを支援するコンポーネントを構造化する電子装置は、ＵＩおよびＵＸの基礎になるデータの構造およびデータ管理ロジックを定義する規約部、外部から取得された少なくとも一つの情報に基づいて、前記ＵＩおよびＵＸの提供方式と関連したインスタンスの生成を要請し、前記電子装置のコンポーネントに含まれたデータ部のオブジェクトに対して前記規約部により定義された前記データの構造およびデータ管理ロジックに応じた構造化を要請するビジネスアプリケーション部、前記インスタンスの生成要請に応答して前記電子装置のコンポーネントに含まれたデータ部のオブジェクトおよび入出力部のオブジェクトを生成し、前記データ部のオブジェクトおよび前記入出力部のオブジェクトを初期化する生成部、前記規約部により定義された前記データの構造およびデータ管理ロジックを格納する格納部、前記データ部のオブジェクトを構造化して前記格納部に格納し、前記格納部に格納されたデータ部のオブジェクトに対する出力要請を前記入出力部に伝達するデータ部、前記出力要請に応答して前記データ部のオブジェクトと対応する前記ＵＩおよびＵＸを出力する入出力部、および政策部に定義された情報を用いて、前記生成部を介して前記コンポーネントのオブジェクトを生成し、前記生成された前記コンポーネントのオブジェクトのうち少なくとも２個以上を組み合わせて複合コンポーネントを生成するコンテナを含む。
【発明の効果】
【００１３】
本発明の様々な実施形態によれば、ビジネスアプリケーションは、多重スクリーンを支援するために複数のソースコードを準備する必要がなく、単一ソースコードを用いて支援対象スクリーン各々に最適化された形態のＵＩ／ＵＸを提供することができる。
【００１４】
また、本発明の様々な実施形態によれば、コンポーネント上で、より様々で複雑な機能の定義が可能であり、機能の変更が容易になりうる。例えば、本発明の一つの実施形態によれば、ＵＩ／ＵＸを提供するコンポーネントにおいてデータ管理と種類別の入出力機能が各々のオブジェクトに分離されることができるため、使用中のコンポーネントに影響を与えることなく新しい入出力類型と拡張機能を追加することができる。
【００１５】
なお、本発明の様々な実施形態によれば、アプリケーション開発者は、ビジネスアプリケーションに含まれたＵＩ／ＵＸの制御手続きがコンポーネントに内蔵されることによって、ＵＩ／ＵＸに対する新しいアプリケーションを容易に開発することができ、既存に開発されたソースコードを修正しなくても新しいアプリケーションからＵＩ／ＵＸを提供するコンポーネントの追加された機能を活用することができる。
【００１６】
また、本発明の様々な実施形態によれば、アプリケーションユーザは、スクリーンが提供できる空間（大きさおよび解像度）とＣＰＵ処理能力などのリソース活用が極大化されることによって、スクリーン別に最適化された高品質のＵＸの提供を受けることができる。
【００１７】
なお、本発明の様々な実施形態によれば、システム運営者は、支援されるスクリーンの種類または個数に関係なく一つのソースコードだけを管理すれば良いため、アプリケーションの開発、運営および維持と関連した費用を節減することができる。
【００１８】
また、本発明の様々な実施形態によれば、ビジネスアプリケーションは、複雑なコーディングなしにインタラクション類型をコンポーネント属性に設定するだけでコンポーネントのＵＩ機能をスクリーンに最適化されるようにコンポーネントの機能を動的に構成することができる。
【図面の簡単な説明】
【００１９】
【図１】様々な実施形態によるコンポーネントを含む電子装置のブロック図
【図２ａ】様々な実施形態により、基本機能が実行される時の電子装置を示す説明図
【図２ｂ】様々な実施形態により、拡張機能が実行される時の電子装置を示す説明図
【図３ａ】様々な実施形態により、拡張機能をインターフェースに公開しないコンポーネントの動作の説明図
【図３ｂ】様々な実施形態により、拡張機能をインターフェースに公開するコンポーネントの動作の説明図
【図４ａ】様々な実施形態により、種々の形態で実現されたコンポーネントを含む電子装置のブロック図
【図４ｂ】様々な実施形態により、種々の形態で実現されたコンポーネントを含む電子装置のブロック図
【図４ｃ】様々な実施形態により、種々の形態で実現されたコンポーネントを含む電子装置のブロック図
【図４ｄ】様々な実施形態により、種々の形態で実現されたコンポーネントを含む電子装置のブロック図
【図４ｅ】様々な実施形態により、種々の形態で実現されたコンポーネントを含む電子装置のブロック図
【図４ｆ】様々な実施形態により、種々の形態で実現されたコンポーネントを含む電子装置のブロック図
【図５】様々な実施形態による電子装置の動作を説明するためのフローチャート
【発明を実施するための形態】
【００２０】
本発明の目的および効果、そしてそれらを達成するための技術的構成は、添付図面と共に詳細に説明される実施形態を参照すればより明らかになるものである。本発明を説明するにおいて、公知機能または構成に関する具体的な説明が本発明の要旨を不要に濁す恐れがあると判断される場合には、その詳細な説明は省略する。そして後ほど説明される用語は本発明における構造、役割および機能などを考慮して定義された用語であって、これは使用者、運用者の意図または慣例などに応じて異なりうる。
【００２１】
本発明は、以下にて開示される実施形態に限定されるものではなく互いに異なる様々な形態で実現できるものである。本文書に開示された様々な実施形態は、本発明の開示が完全になるようにし、本発明が属する技術分野で通常の知識を有する者に発明の範疇を完全に知らせるために提供されるものであって、本発明は、特許請求の範囲に記載された請求項の範疇によって定義されるのみである。したがって、その定義は本明細書の全般にわたった内容に基づいて下さなければならない。
【００２２】
明細書の全体にかけて、ある部分がある構成要素を「含む」とする時、これは、特に反する記載がない限り、他の構成要素を除くものではなく、他の構成要素をさらに含んでもよいことを意味する。
【００２３】
一方、本発明の実施形態において、各構成要素、機能ブロックまたは手段は一つまたはそれ以上の下部構成要素で構成されてもよく、各構成要素が実行する電気、電子、機械的な機能は電子回路、集積回路、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）などのような公知の様々な素子または機械的要素で実現されてもよく、各々別個に実現されるかまたは２以上が一つに統合されて実現されてもよい。
【００２４】
添付されたブロック図の各ブロックおよびフローチャートの各ステップの組み合わせはコンピュータプログラムインストラクションにより行われることができる。これらのコンピュータプログラムインストラクションは汎用コンピュータ、特殊用コンピュータ、携帯用ノートブックコンピュータ、ネットワークコンピュータなど、その他のプログラム可能なデータ処理装置のプロセッサに搭載されることができるため、コンピュータ装置またはその他のプログラム可能なデータ処理装置のプロセッサを介して実行されるそのインストラクションが以下にて説明するブロック図の各ブロックまたはフローチャートの各ステップで説明された機能を実行する手段を生成するようになる。これらのコンピュータプログラムインストラクションは特定の方式で機能を実現するためにコンピュータ装置またはその他のプログラム可能なデータ処理装置を指向できるコンピュータ装置に利用可能なメモリまたはコンピュータ読み取り可能なメモリに格納されることもできるため、ブロック図の各ブロックまたはフローチャートの各ステップで説明された機能を実行するインストラクション手段を含む製造物を生産することもできる。コンピュータプログラムインストラクションはコンピュータ装置またはその他のプログラム可能なデータ処理装置上に搭載されることもできるため、コンピュータ装置またはその他のプログラム可能なデータ処理装置上で一連の動作ステップが実行されるためのプロセスを生成してブロック図の各ブロックおよびフローチャートの各ステップで説明された機能を実行するためのステップを提供することもできる。
【００２５】
また、各ブロックまたは各ステップは、特定された論理的機能を実行するための一つ以上の実行可能なインストラクションを含むモジュール、セグメントまたはコードの一部を示すことができる。また、幾つかの代替実施形態においては、ブロックまたはステップで言及された機能が順を脱して発生するのも可能であることを注目しなければならない。例えば、次いで図示されている二つのブロックまたはステップは、実質的に同時に実行されてもよく、またはそのブロックまたはステップが時々該当する機能に応じて逆順に実行されてもよく、場合によっては一部のブロックまたはステップが省略された状態で実行されてもよい。
【００２６】
以下では、添付図面を参照して本発明の様々な実施形態によるルールに基づいたコンポーネント生成方法について説明する。
本発明の実施形態で用いられる用語は次の表１のように定義されることができる。
【００２７】
【表１】
2019220158.tif 000003
【００２８】
図１は、様々な実施形態によるコンポーネントを含む電子装置のブロック図である。
【００２９】
本発明の様々な実施形態によれば、電子装置１０は、ＵＩ／ＵＸコンポーネント１００、コンテナ１４０、コンポーネント規約部（ｃｏｍｐｏｎｅｎｔ  ｉｎｔｅｒｆａｃｅ）１５０、生成部（ｂｕｉｌｄｅｒ）１６０およびビジネスアプリケーション部（ｂｕｓｉｎｅｓｓ  ａｐｐｌｉｃａｔｉｏｎ）１７０のうち少なくとも一つを含むことができる。ＵＩ／ＵＸコンポーネント１００は、基本データ部１１１および拡張データ部１１２のうち少なくとも一つを含むデータ部１１０、基本入出力部１２１および拡張入出力部１２２のうち少なくとも一つを含む入出力部１２０、および政策部１３０を含むことができる。また、生成部１６０は、システム生成部１６１およびユーザ生成部１６２のうち少なくとも一つを含むことができる。
【００３０】
データ部１１０は、コンポーネント規約部１５０に定義されたものに従ってデータを格納し加工することができる。基本データ部１１１のオブジェクトは、規約部１５０に定義されたものに従って臨時データ記憶装置およびデータ管理ロジックを提供するのに用いられることができ、入出力方式の影響を受けない。また、拡張データ部１１２のオブジェクトは、規約部１５０において定義していない特化された拡張機能を提供するのに用いられることができる。一方、拡張データ部１１２のオブジェクトに対する互換性は、基本データ部１１１または他の拡張データ部のオブジェクトに対するラッピング（ｗｒａｐｐｉｎｇ）を通じて提供されることができる。
【００３１】
拡張データ部１１２のオブジェクトは、拡張機能と関連したイベントプロセッサとメソッド、そして拡張機能を初期化できる属性（ｐｒｏｐｅｒｔｙ）を含むように構成されることができる。例えば、拡張データ部１１２のオブジェクトは、検索、フィルタおよび整列のように特化された拡張機能を実行するのに必要な補助フィールドまたは補助メソッドを含むことができる。一方、基本データ部１１１のオブジェクトは、拡張データ部１１２のオブジェクトを介して新たに定義された属性（ｐｒｏｐｅｒｔｙ）にアクセスできる汎用メソッド（例えば、ｇｅｔＮａｍｅｄＰｒｏｐｅｒｔｙ（）、ｓｅｔＮａｍｅｄＰｒｏｐｅｒｔｙ（）など）を含むことができる。
【００３２】
基本データ部１１１のオブジェクトおよび拡張データ部１１２のオブジェクトは、スクリーンの種類に関係なく全てのスクリーンに共通に適用されることができる。すなわち、基本データ部１１１および拡張データ部１１２は、ＵＩ／ＵＸコンポーネント１００により提供される全体機能のうち全てのインタラクション類型に共通に適用されるメソッド（ｍｅｔｈｏｄ）またはイベント処理オブジェクトなどのような共通機能と関連したデータを格納し処理することができる。
【００３３】
入出力部１２０は、ＵＩ／ＵＸコンポーネント１００がユーザまたは外部電子装置と相互作用する時に送受信されるデータの入力および出力を処理することができる。基本入出力部１２１のオブジェクトは、基本データ部１１１に格納されたデータをスクリーンに最適化された形態で入出力する機能を実現するのに用いられることができる。例えば、基本入出力部１２１のオブジェクトは、データを表現するかまたはユーザとの相互作用と関連した機能を提供することができる。拡張入出力部１２２のオブジェクトは、拡張データ部１１２に格納されたデータをスクリーンに最適化された形態で入出力する機能を実現するのに用いられることができる。一方、拡張入出力部１２２のオブジェクトに対する互換性は、基本入出力部１２１または他の拡張入出力部のオブジェクトに対するラッピング（ｗｒａｐｐｉｎｇ）を通じて提供されることができる。
【００３４】
拡張入出力部１２２のオブジェクトは、拡張機能と関連したイベントプロセッサとメソッド、そして拡張機能を初期化できる属性（ｐｒｏｐｅｒｔｙ）を含むように構成されることができる。また、基本データ部１１１のオブジェクトは、拡張データ部１１２のオブジェクトを介して新たに定義された属性（ｐｒｏｐｅｒｔｙ）にアクセスできる汎用メソッドを含むことができる。
【００３５】
コンポーネント規約部１５０は、データの構造およびデータ管理ロジックを定義することができる。また、コンポーネント規約部１５０は、個別入出力機能を除いた共通入出力機能だけを定義するように設定されることができる。一方、様々な実施形態によれば、コンポーネント規約部１５０は、ユーザが構成した情報に応じてインスタンスを生成する生成部１６０のオブジェクトを含むことができる。
【００３６】
生成部１６０は、生成しようとする入出力機能の種類（ｔｙｐｅ）を受けてデータ部１１０のインスタンスおよび入出力部１２０のインスタンスを生成するか、または生成されたインスタンスを組み合わせることができる。生成部１６０は、製品のアプリケーション実行環境（ｆｒａｍｅｗｏｒｋ）で提供されるオブジェクトを管理するシステム生成部１６１、およびアプリケーション開発者により定義されたオブジェクトを管理するユーザ生成部１６２を含むことができる。一つの実施形態によれば、システム生成部１６１のオブジェクトは、アプリケーション実行環境で基本的に提供されるコンポーネントの種類別のデータ管理および入出力機能管理に用いられることができる。また、ユーザ生成部１６２のオブジェクトは、ユーザによりさらに定義されたコンポーネントの種類別のデータ管理および入出力機能管理に用いられることができる。
【００３７】
ビジネスアプリケーション部１７０は、ＵＩ／ＵＸコンポーネント１００の基本データ部１１１を用いてＵＩ／ＵＸコンポーネント１００を制御するのに用いられるソースコードを作成することができる。一つの実施形態によれば、ビジネスアプリケーション部１７０は、実行時点にＵＩ／ＵＸコンポーネント１００の機能実行範囲および実行方式を定義した構成情報（ｃｏｎｆｉｇｕｒａｔｉｏｎ）を生成部１６０に提供し、実行可能なＵＩ／ＵＸコンポーネント１００のインスタンスの返還を受けて用いることができる。
【００３８】
政策部１３０は、生成部１６０においてオブジェクトインスタンスを生成するための動作方式および動作範囲を管理するのに用いられるデータを格納することができる。
【００３９】
コンテナ１４０は、２個以上のＵＩ／ＵＸコンポーネント１００を組み合わせる時、政策部１３０を参考にして子オブジェクト（ｃｈｉｌｄ  ｏｂｊｅｃｔ）に対する入出力部の動作方式および動作範囲を制御することができる。
【００４０】
一つの実施形態によれば、ＵＩ／ＵＸコンポーネント１００は、取り扱うデータをスクリーンの臨時メモリ領域に記録しておき、要請に応じて提供するデータ管理機能と、前記臨時メモリ領域に記録されたデータをユーザが変更できる形態で提供する相互作用機能を実行するのに用いられることができる。ここで、データ管理機能は、ビジネスアプリケーション部１７０が生成された本質的な目的に該当するものであって、同一のコンテキスト下では実行される環境に関係なく変わらない固有性を有することができる。また、データの入出力の責任を負う相互作用機能は、同一のコンテキスト下においてもユーザの好みや環境に応じて様々な方式に変化できる動的な特徴を有することができる。
【００４１】
前記のようなＵＩ／ＵＸコンポーネント１００の機能的特徴に応じて、ＵＩ／ＵＸコンポーネント１００のデータ管理機能は、ビジネスアプリケーション部１７０により作成されたソースコードを介して制御されることができる。また、ＵＩ／ＵＸコンポーネント１００の相互作用機能は、ＵＩ／ＵＸコンポーネント１００がビジネスアプリケーション部１７０から伝達された制御情報に基づいて様々な形態に構成される独立オブジェクトを自体的に構造化する方法により制御されることができる。
【００４２】
一つの実施形態によれば、ＵＩ／ＵＸコンポーネント１００は、外部から取得された追加のデータを用いて、データ管理機能および相互作用機能に新しい機能を追加するかまたはデータ管理機能および相互作用機能を改善することができる。このために、ＵＩ／ＵＸコンポーネント１００は、基本データ部１１１および基本入出力部１２１と共に拡張データ部１１２および拡張入出力部１２２をさらに含むことができる。ＵＩ／ＵＸコンポーネント１００は、拡張データ部１１２および拡張入出力部１２２を介して新しい機能追加または基本機能改善と関連した情報を処理することによって、既存の開発結果物に対する同一の使用性を保障することができる。
【００４３】
一つの実施形態によれば、ＵＩ／ＵＸコンポーネント１００は、一つのデータ管理機能に対して実行される環境やユーザの好みに基づいて、またはＵＩ／ＵＸコンポーネント１００のベンダ（ｖｅｎｄｏｒ）や開発者により提供された情報に基づいて、新しいデータ管理機能、相互作用機能または前記二つの機能に対する拡張機能を追加することができる。例えば、電子装置１０の生成部１６０は、ＵＩ／ＵＸコンポーネント１００に新しい機能を追加するかまたは基本機能を改善するために、外部から取得された少なくとも一つの情報に基づいてインスタンス（ｉｎｓｔａｎｃｅ）を生成することができる。
【００４４】
一方、様々な実施形態により、電子装置１０は、データを記録できる格納部およびＵＩ／ＵＸを表示できる表示部を含むことができる。格納部は、電子装置１０の少なくとも一つの構成要素（例えば、プロセッサ）により用いられる様々なデータを格納することができる。また、格納部は、揮発性メモリまたは不揮発性メモリを含むことができる。表示部は、電子装置１０の外部（例えば、ユーザ）に情報を視覚的に提供することができる。表示部は、ディスプレイ、ホログラム装置、またはプロジェクタおよび該装置を制御するための制御回路を含むことができる。一つの実施形態によれば、表示部は、入出力部１２０と連結されることができ、入出力部１２０から提供されるデータを表示することができる。
【００４５】
図２ａは、様々な実施形態により、基本機能が実行される時の電子装置を示す図であり、図２ｂは、様々な実施形態により、拡張機能が実行される時の電子装置を示す図である。
【００４６】
図２ａおよび図２ｂを参照すれば、基本機能が実行される時のＵＩ／ＵＸコンポーネント１００は、データ部１１０および入出力部１２０を含むことができる。その反面、拡張機能が実行される時のＵＩ／ＵＸコンポーネント１００は、基本データ部１１１および一つ以上の拡張データ部１１２、１１３、１１４と、基本入出力部１２１および一つ以上の拡張入出力部１２２、１２３とを含むことができる。
【００４７】
データ部１１０と基本データ部１１１は基本機能のうち共通機能を管理することができ、入出力部１２０と基本入出力部１２１は基本機能のうち個別機能を管理することができる。また、一つ以上の拡張データ部１１２、１１３、１１４は拡張機能のうち共通機能を管理することができ、一つ以上の拡張入出力部１２２、１２３は拡張機能のうち個別機能を管理することができる。この時、基本機能はベンダが提供する製品やフレームワークに内蔵されてソフトウェアの設置と同時に基本的に使用できる機能であるシステム機能を意味し、拡張機能はユーザがシステム機能を修正するかまたは自体的に開発して追加した機能であるユーザ機能を意味する。
【００４８】
コンテナ１４０は、機能追加に応じた機能管理単位（例えば、ＵＩ／ＵＸコンポーネント１００）のインターフェース拡張、そして２個以上のデータ部１１０を子オブジェクトに組み合わせ（ｃｏｍｐｏｓｉｔｉｏｎ）できるオブジェクトタイプに定義されることができる。一つの実施形態によれば、コンテナ１４０のインターフェースは、必要に応じて子オブジェクトの中から核心になる機能管理単位のインターフェースの継承を受けることができる。継承されていない残りの子オブジェクトは、役割に応じて機能管理単位のインターフェースをラッピングする過程を通じて定義されることができる。一方、コンテナ１４０は独立したデータ部として取り扱いされることができ、データ部のインスタンスを生成するためのコンテナ１４０だけの生成部１６０を有することができる。
【００４９】
生成部１６０、１６５は、共通機能に対するオブジェクトおよび個別機能に対するオブジェクトのインスタンスを生成したり組み合わせしたりすることができる。一方、電子装置は、図２ａおよび２ｂに示すように生成部を２個以上の分離したモジュール１６０、１６５の形態で含んでもよく、図１に示すように一つのモジュール１６０の形態で含んでもよい。
【００５０】
図３ａは、様々な実施形態により、拡張機能をインターフェースに公開しないコンポーネントの動作を説明するための図であり、図３ｂは、様々な実施形態により、拡張機能をインターフェースに公開するコンポーネントの動作を説明するための図である。
【００５１】
一つの実施形態により、拡張機能をインターフェースに公開しないＵＩ／ＵＸコンポーネント１００からイベントが発生した場合、最外郭に位置した第３拡張データ部１１４にイベントが伝達される。仮にイベントの伝達を受けた第３拡張データ部１１４が目的段階（ｔａｒｇｅｔ  ｐｈａｓｅ）であれば、ＵＩ／ＵＸコンポーネント１００は、伝達されたイベントを処理するためのメソッドを実行した後にイベント処理を終了することができる。その反面、第３拡張データ部１１４が目的段階でなければ、ＵＩ／ＵＸコンポーネント１００は、第３拡張データ部１１４と最も隣接した第２拡張データ部１１３にイベントを伝達することができる。一方、拡張データ部１１２、１１３、１１４の中に目的段階が存在しない場合、ＵＩ／ＵＸコンポーネント１００は、基本データ部１１１を介してイベントの処理を試みることができる。但し、伝達されたイベントが個別機能に従ったものであるために基本データ部１１１においても処理できない場合、前記イベントは、入出力部のうち最外郭に位置した第２拡張入出力部１２３に伝達される。ＵＩ／ＵＸコンポーネント１００は、第２拡張入出力部１２３、第１拡張入出力部１２２および基本入出力部１２１を順に用いてイベントの処理を試みた後、その最終結果をユーザに提供することができる。
【００５２】
一つの実施形態により、拡張機能をインターフェースに公開するＵＩ／ＵＸコンポーネント１００からイベントが発生した場合、次のステップに従って拡張機能に対するメソッドが呼び出されることができる。第１ステップにおいて、コンテナ１４０は、一つ以上のデータ部１１１、１１２、１１３、１１４と一つ以上の入出力部１２１、１２２、１２３の各々に対して登録（ｓｕｂｓｃｒｉｂｅ）動作を実行することができる。第２ステップにおいて、一つ以上の拡張データ部１１２、１１３、１１４と一つ以上の拡張入出力部１２２、１２３は、状態変化イベントをコンテナ１４０に通知（例えば、ｈａｎｄｌｅＥｖｅｎｔ（）呼び出し）することができる。第３ステップにおいて、コンテナ１４０は、状態変化イベントの通知に応答して、集合メソッド（ａｇｇｒｅｇａｔｅ  ｍｅｔｈｏｄ）を呼び出すことができる。第４ステップにおいて、呼び出された集合メソッドは役割別のインスタンスを介して拡張インターフェースにアクセスすることができ、それにより、最終的に拡張機能に対するメソッドを呼び出すことができる。
【００５３】
仮にユーザ（ｃｌｉｅｎｔ）がコンテナ１４０のラッパーメソッド（ｗｒａｐｐｅｒ  ｍｅｔｈｏｄ）を直接呼び出す場合、次のステップに従って拡張機能が処理されることができる。第１ステップにおいて、ユーザは、コンテナ１４０により定義されたラッパーメソッドを呼び出すことができる。第２ステップにおいて、呼び出されたラッパーメソッドは、コンテナ１４０の集合メソッド（ａｇｇｒｅｇａｔｅ  ｍｅｔｈｏｄ）を呼び出すことができる。第３ステップにおいて、呼び出された集合メソッドは役割別のインスタンスを介して拡張インターフェースにアクセスすることができ、それにより、最終的に拡張機能に対するメソッドを呼び出すことができる。
【００５４】
なお、電子装置の構成要素は、予め設定されたインストラクションを実行できるモジュールまたはコードを意味するものとして解釈できる。また、一部のインストラクションは特定のモジュールを介して実行されることとして記載されているが、これに本発明が限定されるのではなく、本文書に開示された全てのインストラクションは電子装置に備えられたプロセッサ（ｐｒｏｃｅｓｓｏｒ）により実行できるということは当業者であれば容易に理解することができるであろう。
図４ａ〜４ｆは、様々な実施形態により、種々の形態で実現されたコンポーネントを含む電子装置のブロック図である。
【００５５】
図４ａは、ＵＩ／ＵＸコンポーネント１００が提供する基本機能だけを用いてＵＩ／ＵＸを提供できる電子装置１１を示すものである。一つの実施形態によれば、システム生成部１６１は、アプリケーション実行環境で基本的に提供されるコンポーネントの種類別のデータに基づいてシステム定義領域４００を設定することができる。システム定義領域４００には、ＵＩ／ＵＸコンポーネント１００が提供する基本機能の基礎になるデータを含む基本データ部１１１、および基本データ部１１１に含まれたデータをスクリーンに最適化された形態で出力できる基本入出力部１２１が含まれることができる。
【００５６】
図４ｂは、ＵＩ／ＵＸコンポーネント１００に含まれたデータ部の機能がユーザなどの外部からの情報に基づいて拡張された電子装置１２を示すものである。一つの実施形態によれば、拡張データ部１１２は、基本機能との互換性を維持するために基本データ部１１１のインターフェースを継承することができ、基本データ部１１１の共通機能を拡張することができる。それと共に、拡張データ部１１２のオブジェクトは、拡張機能と関連したイベントプロセッサとメソッド、そして拡張機能を初期化できる属性（ｐｒｏｐｅｒｔｙ）を含むように構成されることができる。すなわち、拡張データ部１１２を介して提供できる拡張機能は、拡張機能と関連したメソッドと拡張機能を初期化できる属性（ｐｒｏｐｅｒｔｙ）を通じて定義されることができる。一方、ユーザ生成部１６２は、外部（例えば、ユーザ）から受信された情報に基づいてユーザー定義領域４１０を設定することができる。ユーザー定義領域４１０には、ＵＩ／ＵＸコンポーネント１００が提供する拡張機能の基礎になるデータを含む拡張データ部１１２が含まれることができる。図４ｂに示すように、拡張データ部１１２に含まれたデータは、基本入出力部１２１を介して出力されることができる。
【００５７】
図４ｃは、ＵＩ／ＵＸコンポーネント１００に含まれた入出力部の機能がユーザなどの外部からの情報に基づいて拡張された電子装置１３を示すものである。一つの実施形態によれば、拡張入出力部１２２は、基本機能との互換性を維持するために、基本入出力部１２１のインターフェースを継承することができ、インタラクション類型の個別機能を拡張することができる。ユーザ生成部１６２は外部（例えば、ユーザ）から受信された情報に基づいてユーザー定義領域４２０を設定することができ、ユーザー定義領域４２０には拡張入出力部１２２が含まれることができる。
【００５８】
図４ｄは、ＵＩ／ＵＸコンポーネント１００に含まれたデータ部および入出力部の機能がユーザなどの外部からの情報に基づいて拡張された電子装置１４を示すものである。一つの実施形態によれば、ユーザ生成部１６２は外部（例えば、ユーザ）から受信された情報に基づいてユーザー定義領域４３０を設定することができ、ユーザー定義領域４３０には拡張データ部１１２および拡張入出力部１２２が含まれることができる。
【００５９】
図４ｅは、ＵＩ／ＵＸコンポーネント１００が提供する機能をユーザなどの外部からの情報に基づいて定義できる電子装置１５を示すものである。一つの実施形態による電子装置１５はユーザ生成部１６２を介してユーザー定義領域４４０を設定することができ、ユーザー定義領域４４０に基本データ部１１１および基本入出力部１２１が含まれるように構成することができる。
【００６０】
図４ｆは、２個以上のＵＩ／ＵＸコンポーネントを組み合わせ（Ｃｏｍｐｏｓｉｔｉｏｎ）できる電子装置１６を示すものである。一つの実施形態によれば、電子装置１６は、複数のＵＩ／ＵＸコンポーネント１００を組み合わせるために、コンテナ１４０を含むことができる。このために、電子装置１６は、コンテナ１４０を生成できるコンテナ生成部４６０、およびコンテナ１４０のデータ構造などを定義したコンテナ規約部４７０を含むことができる。
図５は、様々な実施形態による電子装置の動作を説明するためのフローチャートである。
【００６１】
動作５００において、電子装置の規約部は、ＵＩおよびＵＸの基礎になるデータの構造およびデータ管理ロジックを定義して電子装置の格納部に格納することができる。
【００６２】
動作５１０において、電子装置のビジネスアプリケーション部は、外部から取得された少なくとも一つの情報に基づいて、ＵＩおよびＵＸの提供方式と関連したインスタンスの生成を要請することができる。一つの実施形態によれば、電子装置のビジネスアプリケーション部は、電子装置のユーザから特定アプリケーションの実行要請が受信される場合、前記ビジネスアプリケーション部が実行されている電子装置に対する情報を取得することができる。例えば、ビジネスアプリケーション部は、電子装置に備えられた表示装置のサイズや表示装置上で特定アプリケーションが表示される領域のサイズに対する情報を取得することができる。ビジネスアプリケーション部は、取得された情報を用いて、特定アプリケーションと対応するＵＩおよびＵＸの提供方式を決定することができる。ビジネスアプリケーション部は、提供方式が決定されることに応答して、ＵＩおよびＵＸの基礎になるデータおよび前記データの入出力と関連したインスタンスの生成を要請することができる。
【００６３】
動作５２０において、電子装置の生成部は、ビジネスアプリケーション部から受信された生成要請に応答して、電子装置のコンポーネントに含まれたデータ部のオブジェクトと入出力部のオブジェクトを生成することができる。また、生成されたデータ部のオブジェクトと入出力部のオブジェクトを初期化した後、ビジネスアプリケーション部に返還することができる。
【００６４】
動作５３０において、電子装置のビジネスアプリケーション部は、生成部により返還されたデータ部のオブジェクトに対して、規約部により定義されたデータの構造およびデータ管理ロジックに応じた構造化を要請することができる。一つの実施形態によれば、電子装置のコンポーネントは、生成部から構造化要請が受信される場合、規約部に定義されたものに従ってデータを加工することができ、加工されたデータを格納部に格納することができる。一方、コンポーネントは基本データ部および拡張データ部を含むことができ、規約部に定義されたものに従って制御可能なデータは基本データ部を介して加工されることができ、規約部に定義されたものに従って制御不可能なデータは拡張データ部を介して加工されることができる。例えば、基本データ部は、規約部に定義されたものに従って臨時データ記憶装置およびデータ管理ロジックを実現する方式によりオブジェクトを処理することができる。拡張データ部は、規約部に定義されたものに従わない拡張機能を別途のイベントプロセッサ、メソッドおよび属性（ｐｒｏｐｅｒｔｙ）を用いて処理することができる。
【００６５】
動作５４０において、コンポーネントのデータ部は、データ部のオブジェクトを構造化して格納部に格納することができる。また、コンポーネントのデータ部は、格納されたデータ部のオブジェクトをユーザに提供するために、データ部のオブジェクトに対する出力要請をコンポーネントの入出力部に伝達することができる。
【００６６】
動作５５０において、コンポーネントの入出力部は、出力要請に応答して、データ部のオブジェクトと対応するＵＩおよびＵＸを電子装置の表示部を介して出力することができる。
【００６７】
なお、図５に開示された動作のうちの一部は省略されるかまたは複数回繰り返し実行されてもよい。また、図５に開示された動作の各々は一つの実施形態に見るのが妥当であり、ｔ一つの動作が他の一つの動作に従属するものに制限して解釈してはならない。
【００６８】
本発明の様々な実施形態により、多重スクリーンを支援するコンポーネントを構造化する方法は、電子装置の規約部が、ＵＩおよびＵＸの基礎になるデータの構造およびデータ管理ロジックを定義して前記電子装置の格納部に格納する動作、前記電子装置のビジネスアプリケーション部が、外部から取得された少なくとも一つの情報に基づいて、前記ＵＩおよびＵＸの提供方式と関連したインスタンスの生成要請を前記電子装置の生成部に伝達する動作、前記電子装置の生成部が、前記生成要請に応答して前記電子装置のコンポーネントに含まれたデータ部のオブジェクトおよび入出力部のオブジェクトを生成し、前記データ部のオブジェクトおよび前記入出力部のオブジェクトを初期化した後、前記データ部のオブジェクトを前記ビジネスアプリケーション部に伝達する動作、前記電子装置のビジネスアプリケーション部が、前記伝達されたデータ部のオブジェクトに対して前記規約部により定義された前記データの構造およびデータ管理ロジックに応じた構造化要請を前記コンポーネントに伝達する動作、前記コンポーネントのデータ部が、前記データ部のオブジェクトを構造化して前記格納部に格納し、前記格納されたデータ部のオブジェクトに対する出力要請を前記入出力部に伝達する動作、前記コンポーネントの入出力部が、前記出力要請に応答して前記データ部のオブジェクトと対応する前記ＵＩおよびＵＸを前記電子装置の表示部を介して出力する動作、および前記電子装置のコンテナが、前記電子装置の政策部に定義された情報を用いて、前記電子装置の生成部を介して前記コンポーネントのオブジェクトを生成し、前記生成された前記コンポーネントのオブジェクトのうち少なくとも２個以上を組み合わせて複合コンポーネントを生成する動作を含むことができる。
【００６９】
本発明の様々な実施形態によれば、多重スクリーンを支援するコンポーネントを構造化する方法において、前記電子装置の規約部は、前記データの構造、前記データ管理ロジックおよび共通入出力機能だけを定義し、個別入出力機能は定義せず、および前記電子装置の規約部は、前記データ部のオブジェクトおよび前記入出力部のオブジェクトを生成する前記生成部を含むことを特徴とする。ここで、共通入出力機能は機能管理単位により提供される全体機能のうち全てのインタラクション類型に共通に適用できる機能を入出力するのに用いられる機能を意味し、個別入出力機能は機能管理単位により提供される全体機能のうち特定のインタラクション類型にのみ選別的に適用できる機能を入出力するのに用いられる機能を意味する。
【００７０】
本発明の様々な実施形態によれば、多重スクリーンを支援するコンポーネントを構造化する方法において、前記データ部は、基本データ部および拡張データ部を含み、前記方法は、前記基本データ部が、前記電子装置の規約部により定義されたデータのうち入出力方式に影響を受けずスクリーン種類に関係なく全てのスクリーンに共通に適用可能な第１データを格納する動作、および前記拡張データ部が、前記電子装置の規約部により定義されておらず且つスクリーン種類に関係なく全てのスクリーンに共通に適用可能な第２データを格納する動作を含むことができる。
【００７１】
本発明の様々な実施形態によれば、多重スクリーンを支援するコンポーネントを構造化する方法において、前記入出力部は、基本入出力部および拡張入出力部を含み、前記方法は、前記基本入出力部が、前記基本データ部に格納された前記第１データだけをスクリーン種類に関係なく同一の形態で出力する動作、および前記拡張入出力部が、前記拡張データ部に格納された前記第２データだけをスクリーン種類に関係なく同一の形態で出力する動作を含むことができる。
【００７２】
本発明の様々な実施形態によれば、多重スクリーンを支援するコンポーネントを構造化する方法は、前記基本入出力部が、前記スクリーンの特性および制約事項に基づいて、前記基本データ部のオブジェクトに対する表示形態、内部構成要素の配置形態および外部との相互作用方式を決定する動作、および前記拡張入出力部が、前記スクリーンの特性および制約事項に基づいて、前記拡張データ部のオブジェクトに対する表示形態、内部構成要素の配置形態および外部との相互作用方式を決定する動作を含むことができる。ここで、外部との相互作用方式は、電子装置のユーザから受信された入力に応答する方式を規定したものを意味する。一方、様々な実施形態によれば、相互作用方式は、電子装置の製作時に予め規定されるか、または電子装置の製作後にユーザにより新たに規定されてもよい。
【００７３】
本発明の様々な実施形態によれば、多重スクリーンを支援するコンポーネントを構造化する方法において、前記電子装置の生成部は、システム生成部およびユーザ生成部を含み、前記方法は、前記システム生成部が、前記格納部に予め格納されたデータを用いて前記コンポーネントのオブジェクトを生成し、前記生成された前記コンポーネントのオブジェクトを組み合わせる動作、および前記ユーザ生成部が、外部から受信されたデータを用いて前記生成されたコンポーネントのオブジェクトと関連した追加オブジェクトを生成し、前記生成された追加オブジェクトを組み合わせる動作を含むことができる。
【００７４】
本発明の様々な実施形態によれば、多重スクリーンを支援するコンポーネントを構造化する方法は、前記電子装置のコンテナが、前記規約部を用いて、前記複合コンポーネントを生成するのに必要なデータを定義し、前記生成された複合コンポーネントの一つ以上のデータ部および一つ以上の入出力部を組み合わせて新しいコンポーネントのオブジェクトを生成する動作を含むことができる。
【００７５】
本発明の様々な実施形態によれば、多重スクリーンを支援するコンポーネントを構造化する方法は、前記電子装置のビジネスアプリケーション部が、第１時点に前記コンポーネントの機能実行範囲および実行方式と関連して前記政策部に定義された情報を前記生成部に提供する動作、および前記電子装置のビジネスアプリケーション部が、前記生成部から前記ＵＩおよびＵＸの提供方式と関連したインスタンスを受信する動作を含み、前記電子装置のビジネスアプリケーション部は、前記データ部のオブジェクトおよび前記入出力部のオブジェクトを用い、スクリーン別に特化されたオブジェクトは用いないことによって、単一コード（ｓｉｎｇｌｅ  ｃｏｄｅ）を介して前記コンポーネントを制御することを特徴とする。
【００７６】
本発明の様々な実施形態によれば、多重スクリーンを支援するコンポーネントを構造化する方法は、電子装置の生成部が、前記生成要請に応答して前記電子装置のコンポーネントに含まれた基本データ部のオブジェクトおよび拡張データ部のオブジェクトを生成し、前記基本データ部のオブジェクトおよび前記拡張データ部のオブジェクトを初期化する動作、および前記電子装置の生成部が、前記基本データ部のオブジェクトをラッピング（ｗｒａｐｐｉｎｇ）する動作をさらに含むことができる。
【００７７】
本発明の様々な実施形態によれば、多重スクリーンを支援するコンポーネントを構造化する方法は、前記電子装置の生成部が、前記コンポーネントのデータ部に前記コンポーネントの入出力部を注入（ｉｎｊｅｃｔ）する動作、前記電子装置の生成部が、前記生成要請に応答して前記電子装置のコンポーネントに含まれた基本入出力部のオブジェクトおよび拡張入出力部のオブジェクトを生成し、前記基本入出力部のオブジェクトおよび前記拡張入出力部のオブジェクトを初期化する動作、および前記電子装置の生成部が、前記基本入出力部のオブジェクトをラッピング（ｗｒａｐｐｉｎｇ）する動作をさらに含むことができる。
【００７８】
本発明の様々な実施形態によれば、多重スクリーンを支援するコンポーネントを構造化する方法において、拡張データ部のオブジェクトは、拡張機能と関連したイベントプロセッサおよびメソッド（ｍｅｔｈｏｄ）、前記拡張機能を初期化できる属性（ｐｒｏｐｅｒｔｙ）を含むことを特徴とする。
【００７９】
本発明の様々な実施形態によれば、多重スクリーンを支援するコンポーネントを構造化する方法において、基本データ部のオブジェクトは、前記拡張データ部のオブジェクトに含まれた前記属性にアクセスできる汎用メソッドを含むことを特徴とする。
【００８０】
本発明の様々な実施形態によれば、多重スクリーンを支援するコンポーネントを構造化する方法は、電子装置の政策部が、前記ＵＩおよびＵＸの提供方式と関連したインスタンスの動作方式および動作範囲を生成し、前記格納部に格納する動作をさらに含むことができる。
【００８１】
本発明の様々な実施形態によれば、多重スクリーンを支援するコンポーネントを構造化する方法は、電子装置の表示部を介して出力された前記ＵＩおよびＵＸに対して外部から変更要請が受信される場合、前記電子装置のビジネスアプリケーション部が、前記変更要請に応じた前記ＵＩおよびＵＸの提供方式と関連したインスタンスの生成要請を前記電子装置の生成部に伝達する動作をさらに含むことができる。
【００８２】
本発明の様々な実施形態により、多重スクリーンを支援するコンポーネントを構造化する電子装置は、ＵＩおよびＵＸの基礎になるデータの構造およびデータ管理ロジックを定義する規約部、外部から取得された少なくとも一つの情報に基づいて、前記ＵＩおよびＵＸの提供方式と関連したインスタンスの生成を要請し、前記電子装置のコンポーネントに含まれたデータ部のオブジェクトに対して前記規約部により定義された前記データの構造およびデータ管理ロジックに応じた構造化を要請するビジネスアプリケーション部、前記インスタンスの生成要請に応答して前記電子装置のコンポーネントに含まれたデータ部のオブジェクトおよび入出力部のオブジェクトを生成し、前記データ部のオブジェクトおよび前記入出力部のオブジェクトを初期化する生成部、前記規約部により定義された前記データの構造およびデータ管理ロジックを格納する格納部、前記データ部のオブジェクトを構造化して前記格納部に格納し、前記格納部に格納されたデータ部のオブジェクトに対する出力要請を前記入出力部に伝達するデータ部、前記出力要請に応答して前記データ部のオブジェクトと対応する前記ＵＩおよびＵＸを出力する入出力部、および政策部に定義された情報を用いて、前記生成部を介して前記コンポーネントのオブジェクトを生成し、前記生成された前記コンポーネントのオブジェクトのうち少なくとも２個以上を組み合わせて複合コンポーネントを生成するコンテナを含むことができる。
【００８３】
本発明の一つの実施形態による多重スクリーンを支援するコンポーネント構造化方法は、コンピュータとの結合によって実行させるための格納媒体に格納されたコンピュータプログラムで実現されてもよい。
【００８４】
また、本発明の一つの実施形態による多重スクリーンを支援するコンポーネント構造化方法は、様々なコンピュータ手段を介して実行できるプログラム命令形態で実現されてコンピュータ読み取り可能な媒体に記録されてもよい。前記コンピュータ読み取り可能な媒体は、プログラム命令、データファイル、データ構造などを単独でまたは組み合わせて含むことができる。前記媒体に記録されるプログラム命令は、本発明のために特別に設計されて構成されたものであるか、またはコンピュータソフトウェア当業者に公知されて使用可能なものであってもよい。コンピュータ読み取り可能な記録媒体の例には、ハードディスク、フロッピーディスクおよび磁気テープのような磁気媒体（ｍａｇｎｅｔｉｃ  ｍｅｄｉａ）、ＣＤ−ＲＯＭ、ＤＶＤのような光気録媒体（ｏｐｔｉｃａｌ  ｍｅｄｉａ）、フロプティカルディスク（ｆｌｏｐｔｉｃａｌ  ｄｉｓｋ）のような磁気−光媒体（ｍａｇｎｅｔｏ−ｏｐｔｉｃａｌ  ｍｅｄｉａ）、およびＲＯＭ、ＲＡＭ、フラッシュメモリなどのようなプログラム命令を格納し実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例には、コンパイラによって作られるもののような機械語コードだけでなく、インタープリタなどを用いてコンピュータにより実行できる高級言語コードを含む。
【００８５】
以上のように、本発明を具体的な構成要素などのような特定事項と限定された実施形態および図面によって説明したが、これは本発明のより全般的な理解を助けるために提供されたものに過ぎず、本発明は前記実施形態に限定されるものではなく、本発明が属する分野で通常の知識を有した者であれば、このような記載から様々な修正および変形が可能である。
【００８６】
したがって、本発明の思想は説明された実施形態に限定して定められてはならず、後述する特許請求の範囲だけでなく、該特許請求の範囲と均等または等価的な変形がある全てのものは本発明思想の範疇に属する。
【図１】
2019220158.tif 000004
【図２ａ】
2019220158.tif 000005
【図２ｂ】
2019220158.tif 000006
【図３ａ】
2019220158.tif 000007
【図３ｂ】
2019220158.tif 000008
【図４ａ】
2019220158.tif 000009
【図４ｂ】
2019220158.tif 000010
【図４ｃ】
2019220158.tif 000011
【図４ｄ】
2019220158.tif 000012
【図４ｅ】
2019220158.tif 000013
【図４ｆ】
2019220158.tif 000014
【図５】
2019220158.tif 000015
【手続補正書】
【提出日】令和1年10月31日(2019.10.31)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
電子装置の規約部が、ＵＩおよびＵＸの基礎になるデータの構造およびデータ管理ロジックを定義して前記電子装置の格納部に格納する動作、
前記電子装置のビジネスアプリケーション部が、外部から取得された少なくとも一つの情報に基づいて、前記ＵＩおよびＵＸの提供方式と関連したインスタンスの生成要請を前記電子装置の生成部に伝達する動作、
前記電子装置の生成部が、前記生成要請に応答して前記電子装置のコンポーネントに含まれたデータ部のオブジェクトおよび入出力部のオブジェクトを生成し、前記データ部のオブジェクトおよび前記入出力部のオブジェクトを初期化した後、前記データ部のオブジェクトを前記ビジネスアプリケーション部に伝達する動作、
前記電子装置のビジネスアプリケーション部が、前記伝達されたデータ部のオブジェクトに対して前記規約部により定義された前記データの構造およびデータ管理ロジックに応じた構造化要請を前記コンポーネントに伝達する動作、
前記コンポーネントのデータ部が、前記データ部のオブジェクトを構造化して前記格納部に格納し、前記格納されたデータ部のオブジェクトに対する出力要請を前記入出力部に伝達する動作、
前記コンポーネントの入出力部が、前記出力要請に応答して前記データ部のオブジェクトと対応する前記ＵＩおよびＵＸを前記電子装置の表示部を介して出力する動作、および、
前記電子装置のコンテナが、前記電子装置の政策部に定義された情報を用いて、前記電子装置の生成部を介して前記コンポーネントのオブジェクトを生成し、前記生成された前記コンポーネントのオブジェクトのうち少なくとも２個以上を組み合わせて複合コンポーネントを生成する動作を含み、
前記電子装置の規約部は、前記データの構造、前記データ管理ロジックおよび共通入出力機能だけを定義し、個別入出力機能は定義せず、および、
前記電子装置の規約部は、前記データ部のオブジェクトおよび前記入出力部のオブジェクトを生成する前記生成部を含み、
前記データ部は基本データ部および拡張データ部を含み、
前記基本データ部が、前記電子装置の規約部により定義されたデータのうち入出力方式に影響を受けずスクリーン種類に関係なく全てのスクリーンに共通に適用可能な第１データを格納する動作、および、
前記拡張データ部が、前記電子装置の規約部により定義されておらず且つスクリーン種類に関係なく全てのスクリーンに共通に適用可能な第２データを格納する動作を含む
ことを特徴とする、多重スクリーンを支援するコンポーネント構造化方法。
【請求項２】
前記入出力部は基本入出力部および拡張入出力部を含み、
前記基本入出力部が、前記基本データ部に格納された前記第１データだけをスクリーン種類に関係なく同一の形態で出力する動作、および、
前記拡張入出力部が、前記拡張データ部に格納された前記第２データだけをスクリーン種類に関係なく同一の形態で出力する動作を含む
請求項１に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項３】
前記基本入出力部が、前記スクリーンの特性および制約事項に基づいて、前記基本データ部のオブジェクトに対する表示形態、内部構成要素の配置形態および外部との相互作用方式を決定する動作、および、
前記拡張入出力部が、前記スクリーンの特性および制約事項に基づいて、前記拡張データ部のオブジェクトに対する表示形態、内部構成要素の配置形態および外部との相互作用方式を決定する動作を含む
請求項２に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項４】
前記電子装置の生成部はシステム生成部およびユーザ生成部を含み、
前記システム生成部が、前記格納部に予め格納されたデータを用いて前記コンポーネントのオブジェクトを生成し、前記生成された前記コンポーネントのオブジェクトを組み合わせる動作、および、
前記ユーザ生成部が、外部から受信されたデータを用いて前記生成されたコンポーネントのオブジェクトと関連した追加オブジェクトを生成し、前記生成された追加オブジェクトを組み合わせる動作を含む
請求項１に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項５】
前記電子装置のコンテナが、前記規約部を用いて、前記複合コンポーネントを生成するのに必要なデータを定義し、前記生成された複合コンポーネントの一つ以上のデータ部および一つ以上の入出力部を組み合わせて新しいコンポーネントのオブジェクトを生成する動作を含む
請求項１に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項６】
前記電子装置のビジネスアプリケーション部が、第１時点に前記コンポーネントの機能実行範囲および実行方式と関連して前記政策部に定義された情報を前記生成部に提供する動作、および、
前記電子装置のビジネスアプリケーション部が、前記生成部から前記ＵＩおよびＵＸの提供方式と関連したインスタンスを受信する動作を含み、
前記電子装置のビジネスアプリケーション部は、前記データ部のオブジェクトおよび前記入出力部のオブジェクトを用い、スクリーン別に特化されたオブジェクトは用いないことによって、単一コード（ｓｉｎｇｌｅ  ｃｏｄｅ）を介して前記コンポーネントを制御する
請求項１に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項７】
前記電子装置の生成部が、前記生成要請に応答して前記電子装置のコンポーネントに含まれた基本データ部のオブジェクトおよび拡張データ部のオブジェクトを生成し、前記基本データ部のオブジェクトおよび前記拡張データ部のオブジェクトを初期化する動作、および、
前記電子装置の生成部が、前記基本データ部のオブジェクトをラッピング（ｗｒａｐｐｉｎｇ）する動作をさらに含む
請求項１に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項８】
前記電子装置の生成部が、前記コンポーネントのデータ部に前記コンポーネントの入出力部を注入（ｉｎｊｅｃｔ）する動作、
前記電子装置の生成部が、前記生成要請に応答して前記電子装置のコンポーネントに含まれた基本入出力部のオブジェクトおよび拡張入出力部のオブジェクトを生成し、前記基本入出力部のオブジェクトおよび前記拡張入出力部のオブジェクトを初期化する動作、および、
前記電子装置の生成部が、前記基本入出力部のオブジェクトをラッピング（ｗｒａｐｐｉｎｇ）する動作をさらに含む
請求項７に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項９】
前記拡張データ部のオブジェクトは、拡張機能と関連したイベントプロセッサおよびメソッド（ｍｅｔｈｏｄ）、前記拡張機能を初期化できる属性（ｐｒｏｐｅｒｔｙ）を含む
請求項７に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項１０】
前記基本データ部のオブジェクトは、前記拡張データ部のオブジェクトに含まれた前記属性にアクセスできる汎用メソッドを含む
請求項９に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項１１】
前記電子装置の政策部が、前記ＵＩおよびＵＸの提供方式と関連したインスタンスの動作方式および動作範囲を生成し、前記格納部に格納する動作をさらに含む
請求項１に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項１２】
前記電子装置の表示部を介して出力された前記ＵＩおよびＵＸに対して外部から変更要請が受信される場合、前記電子装置のビジネスアプリケーション部が、前記変更要請に応じた前記ＵＩおよびＵＸの提供方式と関連したインスタンスの生成要請を前記電子装置の生成部に伝達する動作をさらに含む
請求項１に記載の多重スクリーンを支援するコンポーネント構造化方法。
【請求項１３】
請求項１ないし１２のいずれか１項に記載の方法をコンピュータに実行させるプログラムを記録した
ことを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項１４】
請求項１ないし１２のいずれか１項に記載の方法をコンピュータに実行させる
ことを特徴とするコンピュータプログラム。
【請求項１５】
電子装置であって、
ＵＩおよびＵＸの基礎になるデータの構造およびデータ管理ロジックを定義する規約部、
外部から取得された少なくとも一つの情報に基づいて、前記ＵＩおよびＵＸの提供方式と関連したインスタンスの生成を要請し、前記電子装置のコンポーネントに含まれたデータ部のオブジェクトに対して前記規約部により定義された前記データの構造およびデータ管理ロジックに応じた構造化を要請するビジネスアプリケーション部、
前記インスタンスの生成要請に応答して前記電子装置のコンポーネントに含まれたデータ部のオブジェクトおよび入出力部のオブジェクトを生成し、前記データ部のオブジェクトおよび前記入出力部のオブジェクトを初期化する生成部、
前記規約部により定義された前記データの構造およびデータ管理ロジックを格納する格納部、
前記データ部のオブジェクトを構造化して前記格納部に格納し、前記格納部に格納されたデータ部のオブジェクトに対する出力要請を前記入出力部に伝達するデータ部、
前記出力要請に応答して前記データ部のオブジェクトと対応する前記ＵＩおよびＵＸを出力する入出力部、および、
政策部に定義された情報を用いて、前記生成部を介して前記コンポーネントのオブジェクトを生成し、前記生成された前記コンポーネントのオブジェクトのうち少なくとも２個以上を組み合わせて複合コンポーネントを生成するコンテナを含み,
前記電子装置の規約部は、前記データの構造、前記データ管理ロジックおよび共通入出力機能だけを定義し、個別入出力機能は定義せず、および、
前記電子装置の規約部は、前記データ部のオブジェクトおよび前記入出力部のオブジェクトを生成する前記生成部を含み、
前記データ部は基本データ部および拡張データ部を含み、
前記基本データ部が、前記電子装置の規約部により定義されたデータのうち入出力方式に影響を受けずスクリーン種類に関係なく全てのスクリーンに共通に適用可能な第１データを格納する動作、および、
前記拡張データ部が、前記電子装置の規約部により定義されておらず且つスクリーン種類に関係なく全てのスクリーンに共通に適用可能な第２データを格納する動作を含む
ことを特徴とする電子装置。