IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社スカイディスクの特許一覧

<>
  • 特開-システム、サーバ及び方法 図1
  • 特開-システム、サーバ及び方法 図2
  • 特開-システム、サーバ及び方法 図3
  • 特開-システム、サーバ及び方法 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023049888
(43)【公開日】2023-04-10
(54)【発明の名称】システム、サーバ及び方法
(51)【国際特許分類】
   G06Q 50/04 20120101AFI20230403BHJP
【FI】
G06Q50/04
【審査請求】有
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2021159897
(22)【出願日】2021-09-29
(71)【出願人】
【識別番号】515185898
【氏名又は名称】株式会社スカイディスク
(74)【代理人】
【識別番号】100147485
【弁理士】
【氏名又は名称】杉村 憲司
(74)【代理人】
【識別番号】230118913
【弁護士】
【氏名又は名称】杉村 光嗣
(74)【代理人】
【識別番号】100187078
【弁理士】
【氏名又は名称】甲原 秀俊
(72)【発明者】
【氏名】劉 ▲イク▼
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049CC04
(57)【要約】      (修正有)
【課題】ユーザが目的とする管理対象の管理スケジュールを決定する技術を改善するシステム、サーバ、ユーザ端末及び方法を提供する。
【解決手段】システム1において、ユーザ端末10は、入力操作に基づいて、ドメイン固有言語で記述されたオーダーデータを取得し、取得されたオーダーデータをサーバ20へ送信する。サーバ20は、ユーザ端末10から受信したオーダーデータに基づいて、汎用プログラミング言語で記述されるソースコードを自動的に生成し、生成されたソースコードを実行することにより、管理対象の管理スケジュールを決定し、決定された管理スケジュールを示す情報をユーザ端末10へ送信する。
【選択図】図1
【特許請求の範囲】
【請求項1】
ユーザが使用するユーザ端末と、前記ユーザ端末と通信可能なサーバと、を備え、前記ユーザが目的とする管理対象の管理スケジュールを決定するシステムであって、
前記ユーザ端末は、
前記ユーザ端末に対する入力操作に基づいて、ドメイン固有言語で記述されたオーダーデータを取得し、
取得された前記オーダーデータを前記サーバへ送信し、
前記サーバは、
前記ユーザ端末から受信した前記オーダーデータに基づいて、汎用プログラミング言語で記述されるソースコードを自動的に生成し、
生成された前記ソースコードを実行することにより、前記管理対象の管理スケジュールを決定し、
決定された前記管理スケジュールを示す情報を前記ユーザ端末へ送信する、システム。
【請求項2】
請求項1に記載のシステムであって、
前記オーダーデータは、前記管理対象の管理スケジュールに対する制約条件を示す制約条件データを含み、
前記制約条件データは、宣言型の文法で記述される、システム。
【請求項3】
請求項1又は2に記載のシステムであって、
前記ユーザ端末は、
複数のデータを含むデータテーブルを記憶し、
前記ユーザ端末に対する入力操作に基づいて、ドメイン固有言語で記述された定義データであって前記データテーブルの各カラムの名称を定義する前記定義データを取得し、
前記データテーブル及び前記定義データを含む入力データを前記サーバへ送信し、
前記サーバは、前記定義データを参照して前記データテーブルから前記ソースコードの実行に用いるデータを読み出す、システム。
【請求項4】
請求項1から3の何れか一項に記載のシステムであって、
前記管理対象は、前記ユーザが製造する製品であり、
前記管理スケジュールは、前記製品の生産スケジュールである、システム。
【請求項5】
ユーザが使用するユーザ端末と通信する通信部と、制御部と、を備えるサーバであって、
前記制御部は、
前記ユーザ端末に対する入力操作に基づいて取得された、ドメイン固有言語で記述されたオーダーデータを、前記通信部を介して前記ユーザ端末から受信し、
前記オーダーデータに基づいて、汎用プログラミング言語で記述されるソースコードを自動的に生成し、
生成された前記ソースコードを実行することにより、前記ユーザが目的とする管理対象の管理スケジュールを決定し、
決定された前記管理スケジュールを示す情報を、前記通信部を介して前記ユーザ端末へ送信する、サーバ。
【請求項6】
ユーザが使用するユーザ端末と通信する通信部と、制御部と、を備えるサーバが実行する方法であって、
前記制御部が、
前記ユーザ端末に対する入力操作に基づいて取得された、ドメイン固有言語で記述されたオーダーデータを、前記通信部を介して前記ユーザ端末から受信するステップと、
前記オーダーデータに基づいて、汎用プログラミング言語で記述されるソースコードを自動的に生成するステップと、
生成された前記ソースコードを実行することにより、前記ユーザが目的とする管理対象の管理スケジュールを決定するステップと、
決定された前記管理スケジュールを示す情報を、前記通信部を介して前記ユーザ端末へ送信するステップと、
を含む、方法。
【請求項7】
制御部を備えるユーザ端末が実行する方法であって、
前記制御部が、
前記ユーザ端末に対する入力操作に基づいて、ドメイン固有言語で記述されたオーダーデータを取得するステップと、
前記オーダーデータに基づいて、汎用プログラミング言語で記述されるソースコードを自動的に生成するステップと、
生成された前記ソースコードを実行することにより、前記ユーザが目的とする管理対象の管理スケジュールを決定するステップと、
決定された前記管理スケジュールを出力するステップと、
を含む、方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、システム、サーバ及び方法に関する。
【背景技術】
【0002】
従来、ユーザが目的とする管理対象の管理スケジュール(例えば、製品の生産スケジュール等)を決定する技術が知られている。例えば特許文献1には、オーダーに従って生産スケジュールを生成するスケジューリング装置において、製造工程に与えられる材料を消費する生産オーダーを当該材料の余剰数量に応じた生産オーダーとして生成し、当該生産オーダーに従って当該製造工程による製造の生産スケジュールを作成することが開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2010-044549号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
近年、クラウドサーバが処理した結果をユーザ端末へ提供するクラウドサービスが知られている。一般的に、クラウドサービスを利用するユーザは、クラウドサーバ側の処理に用いられるオーダーデータを規定のデータ形式で準備する。オーダーデータが規定のデータ形式で記述されるので、クラウドサーバ側の処理プログラムは、例えばユーザ毎に個別に開発する必要がなく汎用性が高い。しかしながら、例えば生産スケジューリングでは、ユーザ又は生産工場によって製品の生産プロセスは異なり得るため、生産プロセスを表現するオーダーデータを規定のデータ形式で準備することはユーザにとって必ずしも容易でない。したがって、ユーザが目的とする管理対象の管理スケジュールを決定する技術には改善の余地があった。
【0005】
かかる事情に鑑みてなされた本開示の目的は、ユーザが目的とする管理対象の管理スケジュールを決定する技術を改善することにある。
【課題を解決するための手段】
【0006】
本開示の一実施形態に係るシステムは、
ユーザが使用するユーザ端末と、前記ユーザ端末と通信可能なサーバと、を備え、前記ユーザが目的とする管理対象の管理スケジュールを決定するシステムであって、
前記ユーザ端末は、
前記ユーザ端末に対する入力操作に基づいて、ドメイン固有言語で記述されたオーダーデータを取得し、
取得された前記オーダーデータを前記サーバへ送信し、
前記サーバは、
前記ユーザ端末から受信した前記オーダーデータに基づいて、汎用プログラミング言語で記述されるソースコードを自動的に生成し、
生成された前記ソースコードを実行することにより、前記管理対象の管理スケジュールを決定し、
決定された前記管理スケジュールを示す情報を前記ユーザ端末へ送信する。
【0007】
本開示の一実施形態に係るサーバは、
ユーザが使用するユーザ端末と通信する通信部と、制御部と、を備えるサーバであって、
前記制御部は、
前記ユーザ端末に対する入力操作に基づいて取得された、ドメイン固有言語で記述されたオーダーデータを、前記通信部を介して前記ユーザ端末から受信し、
前記オーダーデータに基づいて、汎用プログラミング言語で記述されるソースコードを自動的に生成し、
生成された前記ソースコードを実行することにより、前記ユーザが目的とする管理対象の管理スケジュールを決定し、
決定された前記管理スケジュールを示す情報を、前記通信部を介して前記ユーザ端末へ送信する。
【0008】
本開示の一実施形態に係る方法は、
ユーザが使用するユーザ端末と通信する通信部と、制御部と、を備えるサーバが実行する方法であって、
前記制御部が、
前記ユーザ端末に対する入力操作に基づいて取得された、ドメイン固有言語で記述されたオーダーデータを、前記通信部を介して前記ユーザ端末から受信するステップと、
前記オーダーデータに基づいて、汎用プログラミング言語で記述されるソースコードを自動的に生成するステップと、
生成された前記ソースコードを実行することにより、前記ユーザが目的とする管理対象の管理スケジュールを決定するステップと、
決定された前記管理スケジュールを示す情報を、前記通信部を介して前記ユーザ端末へ送信するステップと、を含む。
【発明の効果】
【0009】
本開示の一実施形態によれば、ユーザが目的とする管理対象の管理スケジュールを決定する技術が改善される。
【図面の簡単な説明】
【0010】
図1】本開示の一実施形態に係るシステムの概略構成を示すブロック図である。
図2】ユーザ端末の概略構成を示すブロック図である。
図3】サーバの概略構成を示すブロック図である。
図4】システムの動作を示すシーケンス図である。
【発明を実施するための形態】
【0011】
以下、本開示の実施形態について説明する。
【0012】
(実施形態の概要)
図1を参照して、本開示の実施形態に係るシステム1の概要について説明する。システム1は、エンドユーザ(以下、単に「ユーザ」という。)が目的とする管理対象の管理スケジュールを決定するために用いられる。本実施形態では、ユーザはメーカであり、管理対象はメーカが生産する製品であり、管理スケジュールは当該製品の生産スケジュールである例について説明する。システム1は、1つ以上のユーザ端末10と、サーバ20と、を備える。各ユーザ端末10及びサーバ20は、例えばインターネット等を含むネットワーク30と通信可能に接続される。
【0013】
ユーザ端末10は、ユーザが使用するコンピュータである。例えばPC(Personal Computer)、タブレット端末又はスマートフォン等の汎用のコンピュータ、又はシステム1に専用のコンピュータが、ユーザ端末10として採用可能であるが、これらに限られない。例えば、ユーザ端末10は、例えば自走型ロボット等の任意の装置に搭載されてもよいし、或いは自走型ロボットがユーザ端末10としてされてもよい。図1では3つのユーザ端末10a~10cが図示されているが、システム1が備えるユーザ端末10の数は任意に定められてもよい。また、各ユーザ端末10は、互いに異なるユーザによって使用されてもよい。
【0014】
サーバ20は、1つ又は互いに通信可能な複数のサーバ装置を含む。サーバ20は、オーダーデータをユーザ端末10から受信すると、当該オーダーデータに従って製品の生産スケジュールを自動的に決定する生産スケジューリングを行う。オーダーデータは、例えば製品の生産スケジュールに対する要求仕様を示す要求仕様データ、及び/又は、製品の生産スケジュールに対する制約条件を示す制約条件データを含む。製品の生産スケジュールは、例えば、オーダーデータに従って製品を生産するのに必要な一連の工程に対して、実施日時及び使用資源(例えば、設備、機械、工具、及び従業員等)を割り当てた生産計画である。本実施形態では、サーバ20による生産スケジューリングは、クラウドサービスとしてユーザに提供される。
【0015】
まず、本実施形態の概要について説明し、詳細については後述する。システム1において、ユーザ端末10は、ユーザ端末10に対する入力操作に基づいて、ドメイン固有言語(DSL;Domain Specific Language)で記述されたオーダーデータを取得する。ユーザ端末10は、当該オーダーデータをサーバ20へ送信する。サーバ20は、ユーザ端末10から受信した当該オーダーデータに基づいて、汎用プログラミング言語(例えば、Python(登録商標)等)で記述されるソースコードを自動的に生成する。サーバ20は、当該ソースコードを実行することにより、製品の生産スケジュールを決定する。そしてサーバ20は、当該生産スケジュールを示す情報をユーザ端末10へ送信する。
【0016】
このように本実施形態では、オーダーデータはドメイン固有言語で記述され、当該オーダーデータに基づいて汎用プログラミング言語で記述されるソースコードをサーバ20が自動的に生成する。ドメイン固有言語では、例えば生産スケジューリングの分野に固有の語彙又は語法を使用する等、汎用プログラミング言語よりもユーザが所望の事象を表現しやすい文法が採用可能である。本実施形態によれば、例えばユーザがオーダーデータを汎用プログラミング言語で記述する場合と比較して、オーダーデータを準備するユーザの負担が低減され得る点で、ユーザが目的とする管理対象の管理スケジュールを決定する技術が改善される。
【0017】
次に、システム1の各構成について詳細に説明する。
【0018】
(ユーザ端末の構成)
図2に示すように、ユーザ端末10は、通信部11と、出力部12と、入力部13と、記憶部14と、制御部15と、を備える。
【0019】
通信部11は、ネットワーク30に接続する1つ以上の通信インタフェースを含む。当該通信インタフェースは、例えば有線LAN(Local Area Network)規格又は無線LAN規格等に対応するが、これらに限られず、任意の通信規格に対応してもよい。本実施形態において、ユーザ端末10は、通信部11を介してサーバ20と通信する。
【0020】
出力部12は、情報を出力してユーザに通知する1つ以上の出力装置を含む。当該出力装置は、例えば情報を映像で出力するディスプレイであるが、これらに限られない。或いは、出力部12は、外部の出力装置を接続するためのインタフェースを含んでもよい。
【0021】
入力部13は、ユーザによる入力操作を検出する1つ以上の入力装置を含む。当該入力装置は、例えば物理キー、静電容量キー、ディスプレイと一体的に設けられたタッチスクリーン、又は音声入力を受け付けるマイクロフォン等であるが、これらに限られない。或いは、入力部13は、外部の入力装置を接続するためのインタフェースを含んでもよい。
【0022】
記憶部14は、1つ以上のメモリを含む。本実施形態において「メモリ」は、例えば半導体メモリ、磁気メモリ、又は光メモリ等であるが、これらに限られない。記憶部14に含まれる各メモリは、例えば主記憶装置、補助記憶装置、又はキャッシュメモリとして機能してもよい。記憶部14は、ユーザ端末10の動作に用いられる任意の情報を記憶する。例えば、記憶部14は、システムプログラム及びアプリケーションプログラム等を記憶してもよい。記憶部14に記憶されるアプリケーションプログラムは、例えばwebブラウザ等の汎用のアプリケーションプログラム、又はシステム1に専用のアプリケーションプログラムを含んでもよい。ユーザは、当該アプリケーションプログラムを介して、生産スケジューリングに係るクラウドサービスを利用可能であってもよい。
【0023】
また記憶部14は、1つ以上のデータテーブルを記憶してもよい。各データテーブルは、サーバ20がオーダーデータに基づいて生成したソースコードの実行に用いられ得る複数のデータを含む。例えば、当該データテーブルは、生産プロセスに関与する従業者に関する複数のデータを含んでもよい。具体的には、当該データテーブルは、例えば従業員の氏名、所属班、及び力量(例えば、保有スキル等)等の複数の項目にそれぞれ対応する複数のカラムを含んでおり、データテーブルの各行には各従業者の各項目に対するデータが格納される。各従業者のデータは、例えば従業員の所属班、力量又はこれらの組み合わせを考慮して生産スケジュールを決定するために、後述するようにサーバ20によって使用され得る。しかしながら、記憶部14に記憶されるデータテーブルは当該例に限られず、例えば生産プロセスで用いられる設備、機械又は工具等の、従業員以外の任意の資源に関する複数のデータを含むデータテーブルが記憶部14に記憶されてもよい。また、記憶部14に記憶するデータテーブルの数、及び各データテーブルの各カラムに対応する項目は、例えば生産プロセスに応じてユーザが任意に設計可能である。
【0024】
また記憶部14は、後述するように、ユーザ端末10に対する入力操作に基づいて取得される定義データを記憶してもよい。本実施形態において、定義データは、例えばドメイン固有言語で記述され、データテーブルの各カラムの名称を例えば関数名として定義するデータである。例えばサーバ20は、定義データを参照することにより、データテーブルからソースコードの実行に用いる任意のデータを読み出すことができる。
【0025】
制御部15は、1つ以上のプロセッサ、1つ以上のプログラマブル回路、1つ以上の専用回路、又はこれらの組合せを含む。プロセッサは、例えばCPU(Central Processing Unit)若しくはGPU(Graphics Processing Unit)等の汎用プロセッサ、又は特定の処理に特化した専用プロセッサであるがこれらに限られず、例えば量子プロセッサであってもよい。プログラマブル回路は、例えばFPGA(Field-Programmable Gate Array)であるがこれに限られない。専用回路は、例えばASIC(Application Specific Integrated Circuit)であるがこれに限られない。制御部15は、ユーザ端末10全体の動作を制御する。例えば、制御部15は、記憶部14に記憶されたアプリケーションプログラムを実行可能である。
【0026】
(サーバの構成)
図3に示すように、サーバ20は、通信部21と、記憶部22と、制御部23と、を備える。
【0027】
通信部21は、ネットワーク30に接続する1つ以上の通信インタフェースを含む。当該通信インタフェースは、例えば有線LAN規格又は無線LAN規格に対応するが、これらに限られず、任意の通信規格に対応してもよい。本実施形態において、サーバ20は、通信部21を介してユーザ端末10と通信する。
【0028】
記憶部22は、1つ以上のメモリを含む。記憶部22に含まれる各メモリは、例えば主記憶装置、補助記憶装置、又はキャッシュメモリとして機能してもよい。記憶部22は、サーバ20の動作に用いられる任意の情報を記憶する。例えば、記憶部22は、システムプログラム、アプリケーションプログラム、及びデータベース等を記憶してもよい。
【0029】
また記憶部22は、ドメイン固有言語で記述されたデータに基づいて、汎用プログラミング言語で記述されるソースコードを生成するために用いられる任意の情報を記憶する。本実施形態では、記憶部22は、ドメイン固有言語で記述されたデータを汎用プログラミング言語で記述されるソースコードに翻訳(変換)するコンパイラを記憶する。
【0030】
制御部23は、1つ以上のプロセッサ、1つ以上のプログラマブル回路、1つ以上の専用回路、又はこれらの組合せを含む。制御部23は、サーバ20全体の動作を制御する。
【0031】
(システムの動作フロー)
図4を参照して、本実施形態に係るシステム1の動作について説明する。
【0032】
ステップS100:ユーザ端末10は、それぞれ複数のデータを含む1つ以上のデータテーブルを記憶する。
【0033】
具体的には、制御部15は、1つ以上のデータテーブルを記憶部14に記憶する。上述したように、各データテーブルは、サーバ20がオーダーデータに基づいて生成したソースコードの実行に用いられ得る複数のデータを含む。記憶部14に記憶される各データテーブルは、例えば生産プロセスで用いられる設備、機械、工具又は従業員等の任意の資源に関する複数のデータを含む。また、記憶部14に記憶される各データテーブルは、複数の項目にそれぞれ対応する複数のカラムを含んでいる。例えば、上述したように従業員の氏名、所属班、及び力量等の複数の項目にそれぞれ対応する複数のカラムを含むデータテーブルが記憶部14に記憶され、当該データテーブルの各行には各従業者の各項目に対するデータが格納されてもよい。なお制御部15は、例えば入力部13に対する入力操作に応じて、記憶部14に記憶されたデータテーブルを更新可能であってもよい。
【0034】
ステップS101:ユーザ端末10は、ユーザ端末10に対する入力操作に基づいて、ドメイン固有言語で記述された定義データであってデータテーブルの各カラムの名称を定義する定義データを取得する。
【0035】
具体的には、制御部15は、例えばユーザが入力部13を介して入力した定義データを取得する。
【0036】
ステップS102:ユーザ端末10は、1つ以上のデータテーブル及び定義データを含む入力データをサーバ20へ送信する。
【0037】
具体的には、制御部15は、ステップS100で記憶された1つ以上のデータテーブル、及びステップS101で取得された定義データを含む入力データを、通信部11を介してサーバ20へ送信する。サーバ20の制御部23は、受信した入力データを記憶部22に記憶する。ここで、入力データに含まれる各データテーブル及び定義データは、例えば予め定められたファイル名で、予め定められた保存先に保存されてもよい。制御部23は、保存先のファイルパス及びファイル名、並びに、定義データで定義されたカラムの名称を指定することで、任意のデータテーブルにおける任意のカラムのデータを読出可能である。
【0038】
ステップS103:ユーザ端末10は、ユーザ端末10に対する入力操作に基づいて、ドメイン固有言語で記述されたオーダーデータを取得する。
【0039】
具体的には、制御部15は、例えばユーザが入力部13を介して入力したオーダーデータを取得する。本実施形態では、オーダーデータは、上述したように製品の生産スケジュールに対する要求仕様を示す要求仕様データ、及び/又は、製品の生産スケジュールに対する制約条件を示す制約条件データを含む。ここで制約条件データは、例えば宣言型の文法で記述されてもよい。宣言型の文法とは、例えば所望の対象(ここでは、制約条件)を直接宣言する文法であって、例えば当該対象を得るアルゴリズムを記述する命令型の文法と異なる。一般的に、宣言型の文法は命令型の文法と比較して平易であるため、ユーザは比較的容易に制約条件を記述することができる。
【0040】
ステップS104:ユーザ端末10は、オーダーデータをサーバ20へ送信する。
【0041】
具体的には、制御部15は、ステップS103で取得されたオーダーデータを、通信部11を介してサーバ20へ送信する。サーバ20の制御部23は、受信したオーダーデータを記憶部22に記憶する。
【0042】
ステップS105:サーバ20は、ユーザ端末10から受信したオーダーデータに基づいて、汎用プログラミング言語で記述されるソースコードを自動的に生成する。
【0043】
具体的には、制御部23は、ドメイン固有言語で記述されたオーダーデータを、上述のように記憶部22に記憶されたコンパイラを用いて翻訳(変換)することにより、ソースコードを生成する。
【0044】
ステップS106:サーバ20は、生成されたソースコードを実行することにより、ユーザが目的とする管理対象の管理スケジュールを決定する。
【0045】
本実施形態では、製品の生産スケジュールが決定される。具体的には、制御部23は、オーダーデータに示される要求仕様及び/又は制約条件を満たすように、生産スケジュールを決定する。要求仕様及び/又は制約条件を満たす生産スケジュールの決定には、例えば探索アルゴリズムが採用されるが、これに限られず任意のアルゴリズムが採用可能である。
【0046】
ステップS107:サーバ20は、決定された管理スケジュールを示す情報をユーザ端末10へ送信する。
【0047】
本実施形態では、制御部23は、製品の生産スケジュールを示す情報を、通信部11を介してユーザ端末10へ送信する。ユーザ端末10の制御部15は、受信した情報を記憶部14に記憶する。
【0048】
ステップS108:ユーザ端末10は、サーバ20から受信した情報に基づいて、管理スケジュールを出力する。
【0049】
具体的には、制御部15は、サーバ20から受信した生産スケジュールを示す情報を、出力部12のディスプレイを介して映像で出力する。ユーザは、出力された情報に確認することによって、生成された生産スケジュールを認識可能である。
【0050】
以上述べたように、本実施形態に係るシステム1において、ユーザ端末10は、ユーザ端末10に対する入力操作に基づいて、ドメイン固有言語で記述されたオーダーデータを取得する。ユーザ端末10は、当該オーダーデータをサーバ20へ送信する。サーバ20は、ユーザ端末10から受信した当該オーダーデータに基づいて、汎用プログラミング言語で記述されるソースコードを自動的に生成する。サーバ20は、当該ソースコードを実行することにより、製品の生産スケジュールを決定する。そしてサーバ20は、当該生産スケジュールを示す情報をユーザ端末10へ送信する。
【0051】
かかる構成によれば、例えばユーザがオーダーデータを汎用プログラミング言語で記述する場合と比較して、オーダーデータを準備するユーザの負担が低減され得る点で、ユーザが目的とする管理対象の管理スケジュールを決定する技術が改善される。
【0052】
本開示を諸図面及び実施例に基づき説明してきたが、当業者であれば本開示に基づき種々の変形及び改変を行ってもよいことに注意されたい。したがって、これらの変形及び改変は本開示の範囲に含まれることに留意されたい。例えば、各構成部又は各ステップ等に含まれる機能等は論理的に矛盾しないように再配置可能であり、複数の構成部又はステップ等を1つに組み合わせたり、或いは分割したりすることが可能である。
【0053】
例えば、上述した実施形態では、システム1がユーザ端末10及びサーバ20を備えており、サーバ20による生産スケジューリングがクラウドサービスとして提供される例について説明した。しかしながら、上述した実施形態に係るサーバ20の動作をユーザ端末10に実行させる変形例(すなわち、サーバ20を必要としない変形例)も可能である。例えば、図4に示すステップS100、S101、S103、S105、S106及びS108の動作をユーザ端末10が実行してもよい。かかる変形例であっても、上述した実施形態と同様に、ユーザが目的とする管理対象の管理スケジュールを決定する技術が改善される。
【0054】
また例えば、上述した実施形態では、ユーザが目的とする管理対象の管理スケジュールとして、メーカが目的とする製品の生産スケジュールが生成される例について説明した。すなわち、製品の生産スケジューリングの分野にシステム1を適用する例について説明した。しかしながら、システム1は、製品の生産スケジューリングに限られず、任意の分野に適用可能である。例えば、店舗における従業員のシフト管理にシステム1を適用する場合、ユーザは店舗の経営者であり、管理対象は従業員のシフトであり、管理スケジュールは従業員の勤務スケジュールであってもよい。
【0055】
また、例えば汎用のコンピュータを、上述した実施形態に係るユーザ端末10又はサーバ20として機能させる実施形態も可能である。具体的には、上述した実施形態に係るユーザ端末10又はサーバ20の各機能を実現する処理内容を記述したプログラムを、汎用のコンピュータのメモリに格納し、プロセッサによって当該プログラムを読み出して実行させる。したがって、本開示は、プロセッサが実行可能なプログラム、又は当該プログラムを記憶する非一時的なコンピュータ可読媒体としても実現可能である。
【符号の説明】
【0056】
1 システム
10、10a、10b、10c ユーザ端末
11 通信部
12 出力部
13 入力部
14 記憶部
15 制御部
20 サーバ
21 通信部
22 記憶部
23 制御部
30 ネットワーク
図1
図2
図3
図4
【手続補正書】
【提出日】2023-01-12
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
ユーザが使用するユーザ端末と、前記ユーザ端末と通信可能なサーバと、を備え、前記ユーザが目的とする管理対象の管理スケジュールを決定するシステムであって、
前記ユーザ端末は、
複数のデータを含むデータテーブルを記憶し、
前記ユーザ端末に対する入力操作に基づいて、前記ユーザがドメイン固有言語で記述し入力した定義データであって前記データテーブルの各カラムの名称を定義する前記定義データを取得し、
前記データテーブル及び前記定義データを含む入力データを前記サーバへ送信し、
前記ユーザ端末に対する入力操作に基づいて、前記ユーザがドメイン固有言語で記述し入力したオーダーデータを取得し、
取得された前記オーダーデータを前記サーバへ送信し、
前記サーバは、
前記ユーザ端末から受信した前記オーダーデータに基づいて、汎用プログラミング言語で記述されるソースコードを自動的に生成し、
前記定義データを参照して前記データテーブルから読み出したデータを用いて前記ソースコードを実行することにより、前記管理対象の管理スケジュールを決定し、
決定された前記管理スケジュールを示す情報を前記ユーザ端末へ送信する、システム。
【請求項2】
請求項1に記載のシステムであって、
前記オーダーデータは、前記管理対象の管理スケジュールに対する制約条件を示す制約条件データを含み、
前記制約条件データは、宣言型の文法で記述される、システム。
【請求項3】
請求項1又は2に記載のシステムであって、
前記管理対象は、前記ユーザが製造する製品であり、
前記管理スケジュールは、前記製品の生産スケジュールである、システム。
【請求項4】
制御部を備えるユーザ端末が実行する方法であって、
前記制御部が、
複数のデータを含むデータテーブルを記憶するステップと、
前記ユーザ端末に対する入力操作に基づいて、前記ユーザがドメイン固有言語で記述し入力した定義データであって前記データテーブルの各カラムの名称を定義する前記定義データを取得するステップと、
前記データテーブル及び前記定義データを含む入力データを前記サーバへ送信するステップと、
前記ユーザ端末に対する入力操作に基づいて、前記ユーザがドメイン固有言語で記述し入力したオーダーデータを取得するステップと、
前記オーダーデータに基づいて、汎用プログラミング言語で記述されるソースコードを自動的に生成するステップと、
前記定義データを参照して前記データテーブルから読み出したデータを用いて前記ソースコードを実行することにより、前記ユーザが目的とする管理対象の管理スケジュールを決定するステップと、
決定された前記管理スケジュールを出力するステップと、
を含む、方法。
【請求項5】
ユーザ端末に、
複数のデータを含むデータテーブルを記憶するステップと、
前記ユーザ端末に対する入力操作に基づいて、前記ユーザがドメイン固有言語で記述し入力した定義データであって前記データテーブルの各カラムの名称を定義する前記定義データを取得するステップと、
前記データテーブル及び前記定義データを含む入力データを前記サーバへ送信するステップと、
前記ユーザ端末に対する入力操作に基づいて、前記ユーザがドメイン固有言語で記述し入力したオーダーデータを取得するステップと、
前記オーダーデータに基づいて、汎用プログラミング言語で記述されるソースコードを自動的に生成するステップと、
前記定義データを参照して前記データテーブルから読み出したデータを用いて前記ソースコードを実行することにより、前記ユーザが目的とする管理対象の管理スケジュールを決定するステップと、
決定された前記管理スケジュールを出力するステップと、
を実行させる、プログラム。