JP7801982B2 - ビジネスルール設定装置、ビジネスルール設定方法、及びビジネスルール設定プログラム - Google Patents
ビジネスルール設定装置、ビジネスルール設定方法、及びビジネスルール設定プログラムInfo
- Publication number
- JP7801982B2 JP7801982B2 JP2022163081A JP2022163081A JP7801982B2 JP 7801982 B2 JP7801982 B2 JP 7801982B2 JP 2022163081 A JP2022163081 A JP 2022163081A JP 2022163081 A JP2022163081 A JP 2022163081A JP 7801982 B2 JP7801982 B2 JP 7801982B2
- Authority
- JP
- Japan
- Prior art keywords
- control
- business rule
- condition
- screen
- business
- 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.)
- Active
Links
Landscapes
- Stored Programmes (AREA)
- User Interface Of Digital Computer (AREA)
Description
(1)課題
従来、項目状態の制御をプログラミングにより行っており、開発者による高度な設定作業が必要であった。制御が複雑化した場合、開発者にも相応の技術力が必要となり、不具合を防ぐために設定やテストにかかるコストが増加する、という課題があった。また、一度設定した仕組みを変更する場合には、相応の時間とコストが必要となることから、業務環境の変化に伴いシステムを柔軟に変更していくことが難しいという課題が存在した。その結果、顧客のニーズに素早く対応できないことで、ユーザの満足度が低下してしまうというリスクが存在していた。
業務アプリケーションに必要な項目の動的制御について説明する。一般的な業務アプリケーションでは、業務オペレータによる操作に応じて、画面項目に対して動的に制御(ロック、非表示など)をかけることが一般的である。一例として、0と1という2種類の値を受け付ける項目Aに対して、値に1が入力されている場合のみ、項目Bの情報が必要になる、といった要件を考える。この要件を満たすには、画面項目に動的な制御(例:項目Aの値が0であれば項目Bをロック、値が1であれば項目Bをアンロックする)を行う必要がある。
ローコード開発ツールによって作成された業務アプリケーションでは、様々な処理をアクション処理によって実現している。しかし、項目の動的制御をアクション内の処理で実現しようとすると、設定や考慮すべき制御上の問題が増え、開発コストが増加する。
本実施形態に係るビジネスルール設定装置100の構成の一例について、図1を参照して説明する。図1は、ビジネスルール設定装置100の構成の一例を示すブロック図である。ビジネスルール設定装置100は、開発者が使用するアプリケーション開発用の装置である。ビジネスルール設定装置100は、後述する[3.前提事項]、[4.画面項目の動的な更新の設定方法(コンディション及びビジネスルールの設定)]で説明する機能を搭載しており、これらで説明する処理を実行可能に構成されている。
本項目では、本実施形態における処理を説明するための前提事項について説明する。
(1)ローコード開発とは
ローコード開発とは、システム構築における開発手法の一つである。本明細書で指すシステムとは、企業が業務に利用するための一般的なERPシステム等を指すものとし、以下、「業務アプリケーション」という。
図2は、ローコード開発ツールの全体図を示す図である。以下の説明では、開発者側および顧客となる企業の業務オペレータ側という2種類の利用者を想定している。開発者がローコード開発ツールを用いた業務アプリケーションのUI設定および業務ロジックの作成を行う段階(開発段階)と、業務オペレータが実際にアプリケーションとして利用する段階(利用段階)と、の2つの段階に分けて説明を行う。
開発段階は、図2の上半分に示すように、開発者がローコード開発ツール(ローコード開発基盤側)を用いて業務アプリケーションの開発を行う段階である。ローコード開発では、主にアプリケーション画面のレイアウトと、レイアウトを操作した時に行われる一連のイベント処理(アクション、ロジックフロー)の開発の設定を行う。最終的にレイアウトとロジックフローを紐づけることで、業務アプリケーションのUI部分を生成できる。開発段階での主な設定内容は、以下の(A)~(C)のとおりである。
業務アプリケーションの画面レイアウト部分の設定を行う。
業務アプリケーションの処理部分の設定を行う。ローコード開発ツールでは、業務アプリケーションにおける処理を、アクションという単位で設定できる(先述のUI部分と業務ロジックの紐づけも、このアクションを通して行われる)。更に、アクション同士をフローでつなぐことで、一連アクションを処理する順序を設定できる。このアクションの処理順序の設定を「ロジックフロー」という。
(A)で設定したレイアウトに対して、(B)のロジックフローを割り付ける設定を行う。
利用段階は、図2の下半分に示すように、ローコード開発ツール(ローコード実行基盤側)が登録されている業務アプリケーション設定を解析し、業務アプリケーションへの変換を行うことで、業務オペレータが業務アプリケーションを操作する段階である。
上記のようなアプリケーションを実現するために、開発者がローコード開発基盤を用いてアプリケーション設定を行う。このアプリケーション設定を「UI定義」という。このUI定義は、開発用アプリケーションDBの定義管理テーブルに登録される。図4は、定義テーブル例を示す図である。定義管理テーブルでは、アプリケーション内のコントロール情報、アクション情報、ロジックフロー情報、レイアウトとロジックの紐づけ情報などを管理している。定義管理テーブル内の用語の意味は、以下のとおりである。
・定義名・・・UI定義作成時に、開発者が命名。
・コントロール情報・・・以下の「(1)レイアウト開発」を参照。
・アクション情報・・・以下の「(2)ロジックフローおよびアクション開発」を参照。
・ロジックフロー情報・・・以下の「(2)ロジックフローおよびアクション開発」を参照。
・紐づけ情報・・・以下の「(3)レイアウトとロジックの結合」を参照。
図5はレイアウト開発を説明するための図である。開発段階では、開発者がレイアウト開発画面を操作することで、開発用アプリケーションDBにコントロール情報を登録するつまり、上述した定義管理テーブルのコントロール情報の列にデータが格納される。例えば、図5の画面例では、基準日を入力するテキストボックスを日付テキストから選択して配置している。配置したコントロールをクリックすると、クリックしたコントロールの種類に応じたプロパティの設定を行うことができる。例えば、日付テキストは、その入力がアプリケーション上必須のものかどうかを示す必須プロパティが用意されている。図5の画面例では必須プロパティがONになっているので、基準日テキストはアプリケーション上、入力必須のコントロールとなる。
(2-1)アクション設定について
開発段階では、開発者がロジックフローおよびアクション開発画面を操作することで、開発用アプリケーションDBにロジックフロー情報およびアクション情報を登録する(上述した定義管理テーブルのアクション情報及びコントロール情報の列にデータが格納される)。ローコード開発ツールにおけるロジックフロー設定は、処理が開始するための開始アクションと処理が終了するための終了アクションの間でフローがつながっている状態が初期状態となる。この2つのアクションの間に、必要なアクションを図6に示すように組み込むことで、設定を行う。
図9に示す例では、メッセージでYesを選択後、API呼出アクションが実行される。先述のように、ローコード開発ツールでは、業務アプリケーションのUI部分のみ生成することができ、業務データの取得および更新といった業務ロジックについては、開発者がプログラミング作業によって開発する必要がある。つまり、業務ロジック自体は、ローコード開発ツールから独立した外部のロジックとなる。API呼出アクションとは、ローコード開発ツールで作成したUI情報と、開発者が作成した業務ロジックと、をそれぞれ紐づけて実行することができる特殊なアクションのことである。準備として、開発者は、ローコード開発ツールで生成したUI側から呼び出したい業務ロジックをAPI化し(図10参照)、APIマスタに登録しておく(図11参照)。
開発段階では、開発者がレイアウト開発画面で各コントロールにロジックフローの割り付けを行うことで、開発用アプリケーションDBに紐づけ情報を登録する(図15参照)。すなわち、上述した定義管理テーブルの紐付け情報の列にデータが格納される。「(1)レイアウト開発」と「(2)ロジックフローおよびアクション開発」でそれぞれ作成したコントロールとフローの割り付けを行う。図15に示すように、コントロールのプロパティに、イベント項目(ボタンコントロールの場合には、クリックイベント)があり、ここに先ほど登録したフローがプルダウン形式で一覧が表示される。
図18~図42を参照して、本実施の形態の特徴的な部分である画面項目の動的な更新の設定方法(コンディション及びビジネスルールの設定)を説明する。
図18は、実行時の画面イメージを示す図である。例として取引先マスタメンテ画面を設定する場合の仕組みについて説明する。画面名は、取引先マスタメンテ(編集画面)である。ここでは、取引先マスタメンテ画面の編集画面をメインに説明する。業務オペレータが取引先情報を登録するためのジョブについて説明する。取引先CD、取引先名、改定日、法人区分、法人番号の5項目のみが存在するものとする。取引先マスタメンテ(一覧画面)から取引先マスタメンテ(編集画面)に遷移する。
図19は、定義管理テーブル例を示す図である。定義管理テーブルには、取引先マスタ(編集画面)の情報として、図19に示すような情報が登録されているものとする。アクション情報、ロジックフロー情報、紐づけ情報は、簡略化のため登録に関わる部分のみ表示している。
コンディション開発画面、ビジネスルール開発画面は、レイアウト開発画面から遷移することができる。図22は、レイアウト開発画面例を示す図である。図22のレイアウト開発画面において、コンディションボタンをクリックすると、コンディション開発画面へ遷移する。また、ビジネスルールボタンをクリックすると、ビジネスルール開発画面へ遷移する。前述のように、取引先マスタメンテには法人番号の動的な制御が必要である。以下、法人番号の動的制御を実現するために、開発者がローコード開発基盤を用いて行う設定について説明する。
図23は、コンディション開発画面例を示す図である。コンディション設定は、画面上の要素を左辺と右辺に値として設定し、比較のための等号(or不等号)を組み合わせることで、一つの式として構成される。式に設定する値の例としては数値や文字列のような定数情報の他に、画面上のコントロールの値を設定することができる(どのような値を設定するかは、式ごとにタイプを指定できる)。式の左辺と右辺を比較し、比較結果が真(true)であれば、後述するビジネスルールに基づいて画面情報が更新される。
ビジネスルールとは、設定されたコンディションが真である場合に、設定されたコントロールに対してどのような更新を動的に行うか、ルールを定めたものである。動的な更新の種類として、「ロック」、「非表示」、「必須」の3種類を選択でき、コンディションが真である場合に、設定されたコントロールがロック、非表示、必須状態になる。
1.コンディション(横軸)をクリックすることで、該当のコンディション設定画面に遷移することができる。
2.コントロール(縦軸)をクリックすることで、表示されているレイアウト画面がハイライト表示される。
3.レイアウト画面上のコントロールをクリックすることで、マトリクスの行が選択状態(フォーカス状態)となる。
ビジネスルール開発画面では、開発用アプリケーションDBのコントロール情報とコンディション情報から、動的更新の対象となるコントロールを抽出し、それぞれ縦軸、横軸に一覧表示する。
システムが大規模化するにつれて、画面上のコントロール数や、必要なコンディション数は増加する。その結果、マトリクス表も肥大化するため、開発者による設定の付け忘れや付け間違いなどの設定ミスが発生する可能性が高まる。そこで、本仕組みでは、マトリクス表にフィルタ機能を設けることで、開発者による設定ミスを最小限に防ぐような仕組みを用意した。
取引先マスタメンテの例では、一つの条件(法人区分)に対して、一つのコントロール(法人番号)に制御をかけていたが、より複雑なパターンとして、複数のコンディションを利用して、複数コントロールに対して動的なロック制御を行う場合を考える。図35は、画面例、図36は、コンディション(税抜金額の場合)の設定イメージ、図37は、ビジネスルールの設定イメージを示す図である。
税区分=1(外税)の場合、税込金額テキストボックスをロックする(外税・・・税抜金額と消費税額をオペレータが入力する方式)。
税区分=2(内税)の場合、税抜金額テキストボックスをロックする(内税・・・税込金額と消費税額をオペレータが入力する方式)。
税抜金額は税区分=2でロック
税込金額は税区分=0or1でロック
消費税額は税区分=0でロック
以上の設定を行い、業務用アプリケーションDBへ定義管理テーブルの情報を公開することで、アプリケーションとして実行が可能となる(「実行時の画面イメージ」を参照)。ローコード実行基盤上で、公開された定義管理テーブル情報を解析し、アプリケーションとして実行する。特に、ビジネスルールを反映する時は、図39に示すようなフローチャート処理がローコード実行基盤内で行われる。図39は、ビジネスルールを反映するまでのフローチャートを示す図である。
図41及び図42を参照して、ビジネスルールという仕組みを用意せず、ロジックフロー、アクションのような仕組みだけで動的更新を実現しようとする場合について説明する。一般的なローコード開発ではこのケースが多いと思われる。図41において、ロック、表示非表示といった状態制御を行うアクションを用意し、ロジックフロー内で実行する場合、複数のロジックフローに状態制御のためのアクションが分散することとなる。その結果、開発者にとって一覧性のある開発・保守が難しくなる。複数あるロジックフローの中から、状態制御に係る部分を把握し、適切に管理していくことは難しい。
本実施形態により、業務効率化や企業の適切な経営判断を推進することに寄与することができるので、SDGsの目標8及び9に貢献することが可能となる。
本発明は、上述した実施形態以外にも、特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施形態にて実施されてよいものである。
102 制御部
102a 画面制御部
102b 設定部
104 通信インターフェース部
106 記憶部
106a 開発用アプリケーションDB
108 入出力インターフェース部
112 入力装置
114 出力装置
200 サーバ
300 ネットワーク
Claims (6)
- 制御部及び記憶部を備え、開発者がビジネスルールを設定するためのビジネスルール設定装置であって、
前記記憶部には、
コントロール名、プロパティを含むコントロール情報と、
動的制御の判定に使用されるものであり、コンディション名、条件式を含むコンディション情報と、
設定されたコンディションが真である場合に、設定されたコントロールに対してどのような更新を動的に行うかを規定したルールであり、状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報と、
を含むテーブルが格納されており、
選択した状態制御のタイプについて、前記コントロール情報のコントロールを一方の軸、前記コンディション情報のコンディションを他方の軸としたマトリクス形式のビジネスルール開発画面を表示させる画面制御手段と、
前記ビジネスルール開発画面において、マトリクスのセルを選択することでコントロールとコンディションの組を選択し、選択した状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報を前記テーブルに登録する設定手段と、
を備え、
前記画面制御手段は、前記ビジネスルール開発画面上での開発者の操作に応じて、コンディションとコントロールの前記ビジネスルール開発画面への表示を制限するフィルタ機能を備えたことを特徴とするビジネスルール設定装置。 - 前記状態制御のタイプは、ロック、非表示、又は必須を含むことを特徴とする請求項1に記載のビジネスルール設定装置。
- 前記画面制御手段は、前記ビジネスルール開発画面において、一方の軸のコントロールが選択された場合に当該選択されたコントロールのレイアウト画面で設定されている画面情報を表示し、他方の軸のコンディションが選択された場合には、当該コンディションのコンディション設定画面を表示することを特徴とする請求項1に記載のビジネスルール設定装置。
- 前記テーブルが公開されることで実行可能となるアプリケーションでは、ロジックフローを全て実行後に各ビジネスルールの判定を行うことを特徴とする請求項1~3のいずれか1つに記載のビジネスルール設定装置。
- 制御部及び記憶部を備え、開発者がビジネスルールを設定するためのビジネスルール設定装置が実行するビジネスルール設定方法であって、
前記記憶部には、
コントロール名、プロパティを含むコントロール情報と、
動的制御の判定に使用されるものであり、コンディション名、条件式を含むコンディション情報と、
設定されたコンディションが真である場合に、設定されたコントロールに対してどのような更新を動的に行うかを規定したルールであり、状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報と、
を含むテーブルが格納されており、
前記制御部において実行される、
選択した状態制御のタイプについて、前記コントロール情報のコントロールを一方の軸、前記コンディション情報のコンディションを他方の軸としたマトリクス形式のビジネスルール開発画面を表示させる画面制御工程と、
前記ビジネスルール開発画面において、マトリクスのセルを選択することでコントロールとコンディションの組を選択し、選択した状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報を前記テーブルに登録する設定工程と、
を含み、
前記画面制御工程は、前記ビジネスルール開発画面上での開発者の操作に応じて、コンディションとコントロールの前記ビジネスルール開発画面への表示を制限するフィルタ機能を備えたことを特徴とするビジネスルール設定方法。 - 制御部及び記憶部を備え、開発者がビジネスルールを設定するためのビジネスルール設定装置に実行させるためのビジネスルール設定プログラムであって、
前記記憶部には、
コントロール名、プロパティを含むコントロール情報と、
動的制御の判定に使用されるものであり、コンディション名、条件式を含むコンディション情報と、
設定されたコンディションが真である場合に、設定されたコントロールに対してどのような更新を動的に行うかを規定したルールであり、状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報と、
を含むテーブルが格納されており、
前記制御部に、
選択した状態制御のタイプについて、前記コントロール情報のコントロールを一方の軸、前記コンディション情報のコンディションを他方の軸としたマトリクス形式のビジネスルール開発画面を表示させる画面制御工程と、
前記ビジネスルール開発画面において、マトリクスのセルを選択することでコントロールとコンディションの組を選択し、選択した状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報を前記テーブルに登録する設定工程と、
を実行するためのビジネスルール設定プログラムであり、
前記画面制御工程は、前記ビジネスルール開発画面上での開発者の操作に応じて、コンディションとコントロールの前記ビジネスルール開発画面への表示を制限するフィルタ機能を備えたことを特徴とするビジネスルール設定プログラム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2022163081A JP7801982B2 (ja) | 2022-10-11 | 2022-10-11 | ビジネスルール設定装置、ビジネスルール設定方法、及びビジネスルール設定プログラム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2022163081A JP7801982B2 (ja) | 2022-10-11 | 2022-10-11 | ビジネスルール設定装置、ビジネスルール設定方法、及びビジネスルール設定プログラム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2024056296A JP2024056296A (ja) | 2024-04-23 |
| JP7801982B2 true JP7801982B2 (ja) | 2026-01-19 |
Family
ID=90749315
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2022163081A Active JP7801982B2 (ja) | 2022-10-11 | 2022-10-11 | ビジネスルール設定装置、ビジネスルール設定方法、及びビジネスルール設定プログラム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7801982B2 (ja) |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2013200786A (ja) | 2012-03-26 | 2013-10-03 | Fujitsu Ltd | 画面制御システム、画面制御プログラム、画面作成支援プログラム及び画面制御方法 |
| JP2019117499A (ja) | 2017-12-27 | 2019-07-18 | 株式会社オービック | 登録画面処理装置、登録画面処理方法、及び登録画面処理プログラム |
| JP2022019197A (ja) | 2020-07-17 | 2022-01-27 | 株式会社オービック | 設計書参照作業支援装置、設計書参照作業支援方法および設計書参照作業支援プログラム |
| JP2022059478A (ja) | 2020-10-01 | 2022-04-13 | 株式会社オービック | 情報処理装置、情報処理プログラム、および情報処理方法 |
-
2022
- 2022-10-11 JP JP2022163081A patent/JP7801982B2/ja active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2013200786A (ja) | 2012-03-26 | 2013-10-03 | Fujitsu Ltd | 画面制御システム、画面制御プログラム、画面作成支援プログラム及び画面制御方法 |
| JP2019117499A (ja) | 2017-12-27 | 2019-07-18 | 株式会社オービック | 登録画面処理装置、登録画面処理方法、及び登録画面処理プログラム |
| JP2022019197A (ja) | 2020-07-17 | 2022-01-27 | 株式会社オービック | 設計書参照作業支援装置、設計書参照作業支援方法および設計書参照作業支援プログラム |
| JP2022059478A (ja) | 2020-10-01 | 2022-04-13 | 株式会社オービック | 情報処理装置、情報処理プログラム、および情報処理方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2024056296A (ja) | 2024-04-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8073836B2 (en) | System for viewing databases | |
| AU2004202329B2 (en) | Framework for creating modular web applications | |
| US5999911A (en) | Method and system for managing workflow | |
| US9977654B2 (en) | Method of developing an application for execution in a workflow management system and apparatus to assist with generation of an application for execution in a workflow management system | |
| US11886836B2 (en) | Dynamic enterprise application platform | |
| US7603624B2 (en) | System and method for styling content in a graphical user interface control | |
| JP2016224923A (ja) | ユーザフォームインタフェースの自動生成の方法およびシステム | |
| JP7787967B2 (ja) | アプリ開発支援システム、アプリ開発支援方法、及びアプリ開発支援プログラム | |
| WO2007050110A2 (en) | Method and model for enterprise system development and execution | |
| US20080015911A1 (en) | Methods and apparatuses for developing business solutions | |
| JP7411766B2 (ja) | 設定業務支援装置、設定業務支援方法および設定業務支援プログラム | |
| JP7801982B2 (ja) | ビジネスルール設定装置、ビジネスルール設定方法、及びビジネスルール設定プログラム | |
| WO2005054988A2 (en) | System and method for configuring a graphical user interface based on data type | |
| JP7584370B2 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
| US20050114851A1 (en) | System and method for configuring a graphical user interface based on data type | |
| JP7824169B2 (ja) | フォーカス対象決定装置、フォーカス対象決定方法およびフォーカス対象決定プログラム | |
| CN118733012A (zh) | 一种基于样式引用的多层原子化视觉设计方法和装置 | |
| JP7837933B2 (ja) | アプリケーション提供システム、アプリケーション提供方法、及びアプリケーション提供プログラム | |
| Jørgensen et al. | Variability handling for mobile banking apps on ios and android | |
| JP2025153927A (ja) | アプリケーション提供システム、アプリケーション提供方法及びアプリケーション提供プログラム | |
| US12596558B1 (en) | No-code UI creation for a multi-tenant cloud-based application that supports an extensible data schema model | |
| JP7618529B2 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
| Vesterli | Oracle ADF Survival Guide | |
| JP4706001B2 (ja) | 設計コンピュータプログラム | |
| Thangaswamy | VSTO 3.0 for Office 2007 Programming |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20241119 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20250806 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20250902 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20251031 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20251209 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20260106 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7801982 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |