以下、本実施形態に係る情報処理システム10について説明する。
図1は、情報処理システム10の概略構成の例を示す図である。
図1に示すように、情報処理システム10は、管理者端末20、サーバ40、及びユーザ端末60を含む。管理者端末20、サーバ40、及びユーザ端末60は、ネットワークNを介して接続されている。ネットワークNは、例えば、インターネット、LAN(Local Area Network)、又はWAN(Wide Area Network)等が適用される。
管理者端末20は、企業Aに属する従業員のうち、人事管理を行う管理者が所有する端末である。管理者端末20は「コンピュータ」及び「情報処理装置」の一例であり、企業Aは「所定団体」の一例であり、従業員は「所属ユーザ」の一例であり、管理者は「特定のユーザ」の一例である。
サーバ40は、情報処理システム10に関する各種データが格納されているサーバコンピュータである。なお、サーバ40はサーバコンピュータとしてクラウド上に構成されていてもよい。
ユーザ端末60は、企業Aに属する従業員のうち、管理者以外の一般ユーザが所有する端末である。図1では、ユーザ端末60として、ユーザ端末60A及びユーザ端末60Bを図示しているが、情報処理システム10には、一般ユーザがそれぞれ所有する複数のユーザ端末が含まれる。
図2は、管理者端末20、サーバ40、及びユーザ端末60のハードウェア構成を示すブロック図である。本実施形態では、管理者端末20及びユーザ端末60を「PC(Personal Computer)」とし、サーバ40を「サーバコンピュータ」としている。なお、管理者端末20、サーバ40、及びユーザ端末60は、基本的には一般的なコンピュータ構成であるため、管理者端末20を代表して説明する。また、管理者端末20及びユーザ端末60は、各端末を使用するユーザをID及びパスワード等で認証することで機能を切り替えることもできる。言い換えれば、同一のPCであっても認証されるユーザごとに管理者端末20又はユーザ端末60のいずれかに切り替える事ができる。
図2に示すように、管理者端末20は、CPU(Central Processing Unit)21、ROM(Read Only Memory)22、RAM(Random Access Memory)23、ストレージ24、入力部25、表示部26、及び通信部27を備えている。各構成は、バス28を介して相互に通信可能に接続されている。
CPU21は、中央演算処理ユニットであり、各種プログラムを実行したり、各部を制御したりする。すなわち、CPU21は、ROM22又はストレージ24からプログラムを読み出し、RAM23を作業領域としてプログラムを実行する。CPU21は、ROM22又はストレージ24に記憶されているプログラムにしたがって、上記各構成の制御及び各種の演算処理を行う。CPU21は「プロセッサ」の一例である。
ROM22は、各種プログラム及び各種データを格納する。RAM23は、作業領域として一時的にプログラム又はデータを記憶する。
ストレージ24は、HDD(Hard Disk Drive)、SSD(Solid State Drive)又はフラッシュメモリ等の記憶装置により構成され、各種プログラム、及び各種データを格納する。
入力部25は、一例として、マウス、キーボード、マイク、及びカメラ等を含み、各種の入力を行うために使用される。
表示部26は、一例として、液晶ディスプレイであり、各種の情報を表示する。表示部26は、タッチパネル方式を採用して、入力部25として機能してもよい。表示部26は「表示部」の一例である。
通信部27は、他の装置と通信するためのインターフェースである。当該通信には、例えば、イーサネット(登録商標)若しくはFDDI等の有線通信の規格、又は、4G、5G、若しくはWi-Fi(登録商標)等の無線通信の規格が用いられる。
なお、サーバ40のCPU41、ROM42、RAM43、ストレージ44、入力部45、表示部46、通信部47、及びバス48と、ユーザ端末60のCPU61、ROM62、RAM63、ストレージ64、入力部65、表示部66、通信部67、及びバス68との機能は、上述した管理者端末20のCPU21、ROM22、RAM23、ストレージ24、入力部25、表示部26、通信部27、及びバス28の機能と同様である。
図3は、管理者端末20のストレージ24の構成を示すブロック図である。
図3に示すように、ストレージ24には、CPU21に後述する各種処理を実行させるための情報処理プログラム24Aが格納されている。当該情報処理プログラム24Aを実行する際に、管理者端末20は、図2に示すハードウェア資源を用いて、当該情報処理プログラム24Aに基づく処理を実行する。情報処理プログラム24Aは「情報処理プログラム」の一例である。なお、情報処理プログラム24Aは必ずしも管理者端末20のストレージ24内に全て納まっている必要はない。一例として、管理者端末20上で動作するウェブブラウザ等を経由し、サーバ40のストレージ44上のソフトウェアを実行するSaaS(Software as a Service)として構成してもよい。
図4は、サーバ40のストレージ44の構成を示すブロック図である。
図4に示すように、ストレージ44には、マスターデータベース44A及びアプリデータベース44Bが格納されている。マスターデータベース44Aは「第2のデータベース」の一例であり、アプリデータベース44Bは「第1のデータベース」の一例である。
マスターデータベース44Aには、企業Aのマスターデータが記憶されている。当該マスターデータは、企業Aの各従業員の氏名、住所、雇用年月日、所属、役職、業務内容、経歴、及びスキル等の従業員情報を含んでいる。また、従業員情報として顔写真、給与情報、及びマイナンバー等の個人情報、並びに雇用契約書等の契約書面を含めるようにしてもよい。従業員情報は「ユーザ情報」の一例である。従業員情報を閲覧する場合、管理者は、管理者端末20を操作して従業員情報を閲覧するためのアプリケーションを実行する。管理者端末20では、CPU21が、マスターデータベース44Aに記憶されている従業員情報から管理者により指示された情報を取得し、取得した情報を表示部26に表示する。このように、従業員情報を閲覧するためのアプリケーションの機能を実行する際には、マスターデータベース44Aに記憶されている従業員情報が参照される。従業員情報を閲覧するためのアプリケーションは「他のアプリケーション」の一例である。ユーザ情報に関する他の例として、ユーザ自身の情報以外にもユーザが所属する所属団体又は所属団体に含まれる組織に関する情報(例:組織名、所在地、ホームページのURL、問い合わせ先、責任者などを含む)を含むようにしてもよい。
アプリデータベース44Bは、情報処理システム10上で実行可能な各アプリケーションを構成するために用いられるパーツに関するアプリ情報が記憶されている。アプリ情報は、各アプリケーションの機能を実行するために必要な種々の情報を含んでいる。例えば、表計算アプリの場合、表計算機能を実行するためのテーブル、テーブルに入力された値、並びにテーブルに入力された値に基づいて生成されたグラフ及び関数等に関する情報がアプリ情報に該当する。また、アプリ情報には各アプリケーション内の情報へのアクセスを制限するためのアクセス権限に関する情報を含んでもよい。なお、アプリデータベース44Bに記憶されているアプリ情報は、アプリケーションの実行に伴って適宜更新される。
ここで、情報処理システム10では、管理者による複数のパーツの選択に基づいて、複数の機能を実行可能な統合アプリケーションを構築することができる。統合アプリケーションとしては、社内の人員をどの様に配置するかを検討するための異動配置アプリ、社内の各人が保有するスキルや資格を管理するためのスキル管理アプリ、及び将来に向けて必要な組織や人員を計画するための要員計画アプリ等が含まれる。また、統合アプリケーションはマスターデータベース44Aに記憶されている従業員情報のみを用いるアプリケーションとは異なるアプリケーションであり、「特定のアプリケーション」の一例である。
図5は、管理者端末20において統合アプリケーションが構築される構築処理の流れを示すフローチャートである。CPU21がストレージ24から情報処理プログラム24Aを読み出して、RAM23に展開して実行することにより、構築処理が行われる。一例として、構築処理は、管理者が管理者端末20を操作して、統合アプリケーションを構築するための構築画面が表示部26に表示された場合に行われる。
図5に示すステップS10において、CPU21は、統合アプリケーションのテンプレートの選択を受け付けたか否かを判定する。ここで、CPU21は、テンプレートの選択を受け付けたと判定した場合(ステップS10:YES)、ステップS11に進む。一方、CPU21は、テンプレートの選択を受け付けていないと判定した場合(ステップS10:NO)、ステップS12に進む。情報処理システム10では、統合アプリケーションを構築するにあたり、予め定めた複数のパーツが組み合わされた複数種類のテンプレートが用意されている。テンプレートは、統合アプリケーションとしての異動配置アプリ、スキル管理アプリ、及び要員計画アプリ等のそれぞれに対応するものが設けられている。管理者は、テンプレートを利用する場合には、表示部26に表示された一つ以上の統合アプリケーションのテンプレートを示すUI(User Interface)の中から、任意のテンプレートを選択する操作を管理者端末20に対して行う。一方、テンプレートを利用しない場合には、管理者は、管理者端末20に対してテンプレートを利用しないことを選択する操作を行う。CPU21は、管理者による管理者端末20に対する操作内容に基づいて、テンプレートの選択を受け付けたか否かを判定する。
ステップS11において、CPU21は、ステップS10で選択を受け付けたテンプレートの内容を表示部26に表示する。そして、CPU21は、ステップS13に進む。なお、本ステップS11において、選択を受け付けたテンプレートに対して、追加で修正を受け付けられるようにしてもよい。
ステップS12において、CPU21は、統合アプリケーションに組み込む複数のパーツに関する選択を受け付ける。パーツに関する選択の具体例については後述する。そして、CPU21は、ステップS13に進む。
ステップS13において、CPU21は、管理者によるキーとなるデータの選択を受け付ける。ここで、キーとなるデータとは、表計算表示における行又は列に入力されるデータであり、スキル管理アプリであれば保有スキル等が相当する。また、別のキーとなるデータの例としては、グラフ表示におけるプロットの対象となるデータであり、要員計画アプリであれば年毎に必要な要員数等が相当する。そして、CPU21は、ステップS14に進む。
ステップS14において、CPU21は、統合アプリケーションに対するアクセス権限を設定する。当該アクセス権限は、各アプリケーションにおけるアプリ情報に対する表示権限、閲覧権限及び編集権限の少なくとも1つが含まれる。当該アクセス権限の設定に関する具体例については後述する。そして、CPU21は、ステップS15に進む。なお、本実施形態では管理者による統合アプリケーションに対するアクセス権限の設定について例示したが、これに限られるものではない。他の例として、マスターデータベース44Aの管理者(以下、マスター管理者)とアプリデータベース44Bの管理者(以下、アプリ管理者)とを設け、マスター管理者又はアプリ管理者によって別々にアクセス権限を設定可能としてもよい。この場合、マスター管理者はマスターデータベース44A及びアプリデータベース44Bのいずれのデータ及びアプリケーションへのアクセスが可能であり、統合アプリケーションだけでなくその他のアプリケーションに関するアクセス権限設定を含む設定管理が可能である。一方で、アプリ管理者はアプリデータベース44B上で構築される統合アプリケーションに関するアクセス権限設定を含む設定管理のみが可能である。言い換えれば、アプリ管理者はマスターデータベース44Aに関する管理権限を持たないため、統合アプリケーションにおいてマスターデータベース44Aにおける従業員情報を利用する場合には、マスター管理者が設定したアクセス権限に従うことになる。このように管理権限を分けることにより、統合アプリケーションの設計自由度を高めつつ、アクセス権限によるセキュリティを維持することができる。
ステップS15において、CPU21は、マスターデータベース44Aへの書き込みを許可するアプリ情報を設定する同期設定を行う。当該同期設定に関する具体例については後述する。そして、CPU21は、構築処理を終了する。
次に、統合アプリケーションのテンプレートを利用しない場合に、表示部26に表示される構築画面の表示例を説明する。
図6は、構築画面の第1の表示例である。図6に示す構築画面には、パーツ領域30、構築領域50、及び設定領域70の3つの領域が設けられている。これ以外にも、当該構築画面には、テキスト入力領域、及びページ切り替え領域等、様々な領域を適宜設けるようにしてもよい。パーツ領域30の中に表示されるそれぞれが固有の性質を持つ各パーツを構築領域50のレイアウト領域にドラッグ・アンド・ドロップで配置することができる。さらに構築領域50に配置された各パーツを選択することにより設定可能な項目を設定領域70に表示し設定を行うことができる。
パーツ領域30は、統合アプリケーションに組み込むことができるパーツの一覧を、各パーツをそれぞれ示すGUI(Graphical User Interface)で表示する領域である。GUIは「ユーザーインターフェイス」の一例である。
一例として、図6に示すパーツ領域30には、パーツAを示すGUI31、パーツBを示すGUI32、及びパーツCを示すGUI33等が表示されている。図6に示したパーツ以外にも、パーツ領域30には、承認/申請アクションや同期アクション等のパーツごとに共通する所定のアクションを実行するためのボタンや、GUI上に配置するためのアイコンや図形なども表示してもよい。
構築領域50は、統合アプリケーションに組み込まれたパーツを表示する領域である。ここで、CPU21は、パーツ領域30に表示されたGUIが構築領域50にドラッグ・アンド・ドロップされることにより、ドラッグ・アンド・ドロップされたGUIに示されるパーツや機能を統合アプリケーションに組み込む。構築領域50は「所定の領域」の一例である。なお、構築領域50の表示が各従業員等の管理者端末20又はユーザ端末60上で表示されるGUIとなる。
設定領域70は、統合アプリケーションに組み込まれたパーツに関する各種設定を行うための領域である。
図7は、構築画面の第2の表示例である。一例として、図7に示す構築画面は、管理者によりGUI31が構築領域50にドラッグ・アンド・ドロップされた後の状態を示している。
図7に示すパーツ領域30では、GUI31の色が図6に示す状態から変化している。ここで、CPU21は、パーツ領域30において、統合アプリケーションに組み込まれたパーツを示すGUIの色を、他のGUIの色とは異なる態様で表示させる。これにより、図7に示すGUI31の色は、図6に示す白色から黒色に変化している。なお、図7で示すGUIの色の変化は一例であって、構築領域50で選択されたGUIの色を変化させてもよい。また、GUIの変化は、色以外にも枠や線で囲う様な表示でもよいし、点滅等の表示でもよい。
図7に示す構築領域50には、ドラッグ・アンド・ドロップされたGUI31により示されるパーツAの画面51が表示されている。パーツAは、企業Aにおける各従業員の離職者数を収集して表示する機能を有する。本機能において、キーとなるデータは離職者のリストである。一例として、画面51には、2023年1月から4月までの各月における離職者数の推移を示すグラフが表示されている。また、構築領域50において複数のページを含む構成とする場合には、いずれのページにパーツをドラッグ・アンド・ドロップするかを選択できるようにページ切り替え用のタブパーツ等を用意し、適宜表示することが好ましい。
図8は、構築画面の第3の表示例である。一例として、図8に示す構築画面は、管理者によりGUI32が構築領域50にドラッグ・アンド・ドロップされた後の状態を示している。
図8に示すパーツ領域30では、GUI32の色が図6に示す白色から黒色に変化している。なお、当該パーツ領域30では、GUI31及びGUI32の色を同じにしているが、これに限らず、構築領域50にドラッグ・アンド・ドロップされた各GUIにより示されるパーツの種類に応じた専用の色で着色されることとしてもよい。
図8に示す構築領域50には、ドラッグ・アンド・ドロップされたGUI32により示されるパーツBの画面52が画面51の下に表示されている。パーツBは、企業Aにおける各従業員が保有するスキルに関するスキル情報を収集して表示する機能を有する。一例として、画面52には、各従業員が保有しているスキルを示すスキルテーブル52Aが表示されている。
スキルテーブル52Aは、氏名、所属、スキル、及び備考の4項目で構成されている。このとき、CPU21は、マスターデータベース44Aに記憶されている従業員情報の中から各従業員の氏名及び所属を取得し、取得した当該各従業員の氏名及び所属をパーツBに利用してスキルテーブル52Aを生成する。しかし、スキルテーブル52Aに含まれるキーとなるデータに関して、必ずしもマスターデータベース44Aに含まれるデータを用いなくてもよい。マスターデータベース44Aとアプリデータベース44Bを独立して設けることにより、各アプリケーションの生成自由度を向上させることができる。マスターデータベース44Aのデータを取得してスキルテーブル52Aを生成した場合には、氏名及び所属の項目には、マスターデータベース44Aから取得した従業員情報に示される各従業員の氏名及び所属が入力される。なお、図8に示すスキルテーブル52Aのスキル及び備考の項目は「未入力」の状態となっている。詳細は後述するが、管理者は、所定の一般ユーザである役職者に対して入力依頼を行い、当該役職者は、依頼内容に基づいてスキルテーブル52Aのスキル及び備考の項目にスキル情報を入力する。
ここで、CPU21は、構築領域50に複数のGUIがドラッグ・アンド・ドロップされた場合、各GUIにより示されるパーツの画面が重ならないように、各画面の配置を調整する。これにより、構築領域50では、画面51が図7に示す位置から上方又は下方に移動され、その結果空いた領域に画面52が配置される。
また、情報処理システム10では、構築領域50に配置された各GUIの画面に対する選択操作を行うことで、設定領域70において選択されたパーツに関する各種設定を行うことができる。
図9は、構築画面の第4の表示例である。一例として、図9に示す構築画面は、管理者により構築領域50に配置されたパーツBの画面52に対する選択操作が行われた後の状態を示している。
図9に示す設定領域70には、画面52に対する選択操作が行われたことに基づいて、パーツBに対するアクセス権限を設定するための設定ボタン71と、パーツBに対する同期設定を行うための設定ボタン72とが表示されている。なお、これ以外にも設定領域70には、選択したパーツにおけるキーとなるデータの選択領域、並びに、フォント及び図形の設定領域等の各種設定領域を表示するようにしてもよい。
設定ボタン71に対する選択操作が行われると新たに別の設定画面が表示され、予め定めた閲覧権限及び編集権限等を含むアクセス権限を自動で設定する自動設定モード、又は管理者が手動で個々にアクセス権限を設定する手動設定モードを選択することができる。
以下では、自動設定モードが選択された場合の流れを説明する。この場合、CPU21は、従業員の所属に基づいて、パーツBに対するアクセス権限を設定する。例えば、CPU21は、各一般ユーザに対して、パーツBのアプリ情報のうち、同じ所属内の従業員に関する一部のアプリ情報の閲覧及び編集のみが可能となるアクセス権限を設定する。パーツBのアプリ情報は、例えば、スキルテーブル52Aに入力された氏名、所属、スキル、及び備考の各項目に示される情報である。従業員の所属は「所属ユーザの属性」の一例である。また、アクセス権限を設定するために、マスターデータベース44Aに含まれる従業員情報(例えば役職等)を用いて設定するようにしてもよい。
図10は、各一般ユーザに対して設定したアクセス権限を説明するための説明図である。図10に示すように、企業Aでは、第1権限91、第2権限92、及び第3権限93等の複数のアクセス権限が所属毎に設定されている。第1権限91は、A課長、従業員A,C,Eの4名で構成される1課に設定されたアクセス権限である。第2権限92は、B課長、従業員B,D,Fの4名で構成される2課に設定されたアクセス権限である。第3権限93は、C課長、従業員G,H,Iの4名で構成される3課に設定されたアクセス権限である。このとき、1課に属する従業員は、第1権限91により、パーツBのアプリ情報のうち、1課内の従業員に関する一部のアプリ情報の閲覧及び編集のみが可能となっている。具体的には、A課長は、パーツBのアプリ情報のうち、従業員Aに関するアプリ情報の閲覧等は行えるが、2課に属する従業員Bに関するアプリ情報の閲覧等は行えない。そして、従業員A,C,Eは自身に関するアプリ情報の閲覧等しかできない。また、同様に、2課に属する従業員は、第2権限92により、パーツBのアプリ情報のうち、2課内の従業員に関する一部のアプリ情報の閲覧及び編集のみ、3課に属する従業員は、第3権限93により、パーツBのアプリ情報のうち、3課内の従業員に関する一部のアプリ情報の閲覧及び編集のみが可能となっている。
図9に戻って、設定ボタン72に対する選択操作が行われるとメニュー画面が表示され、予め定めたアプリ情報の項目を自動でマスターデータベース44Aへの書き込み項目に設定する自動設定モード、又は管理者が手動でアプリ情報のマスターデータベース44Aへの書き込み項目を設定する手動設定モードを選択することができる。
以下では、手動設定モードが選択された場合の流れを説明する。この場合、CPU21は、管理者による、マスターデータベース44Aへ同期するための書き込みを許可するパーツBのアプリ情報の設定を受け付ける。このとき、CPU21は、当該アプリ情報のうち、パーツBを実行する際にのみ参照される情報のマスターデータベース44Aへの書き込みを禁止する。パーツBを実行する際にのみ参照される情報は、例えば、スキルテーブル52Aの備考の項目に示される情報である。なお、マスターデータベース44Aへの書き込みを禁止する項目として、マスターデータベース44Aで管理する必要がない備考の項目以外にも、管理すべき氏名及び所属の項目も設定に含めるようにしてもよい。必要のない同期項目を減らしアプリケーションの動作負荷を軽減することができる。また、同期する対象と設定した項目又は対象外とした項目に対して着色を変更したりマーク表示したりすることも可能である。これにより、いずれの項目がマスターデータベース44Aへ書き込まれるかを容易に把握することが可能となる。
そして、管理者は、上記の手動設定モードにおいて、スキルテーブル52Aの氏名、所属、及びスキルをマスターデータベース44Aへの書き込み項目に選択したとする。この場合、CPU21は、スキルテーブル52Aの氏名、所属、及びスキルの各項目に示される情報を、マスターデータベース44Aへの書き込みを許可するパーツBのアプリ情報として設定する。
図11は、管理者端末20において統合アプリケーションが実行される実行処理の流れを示すフローチャートである。CPU21がストレージ24から情報処理プログラム24Aを読み出して、RAM23に展開して実行することにより、実行処理が行われる。一例として、実行処理は、管理者が管理者端末20を操作して、統合アプリケーションを実行するための実行画面が表示部26に表示された場合に行われる。なお、以下では、管理者端末20のCPU21により実行される実行処理について説明するが、当該実行処理はユーザ端末60のCPU61により実行されることもある。
図11に示すステップS20において、CPU21は、表示部26に1つ以上表示された統合アプリケーションの中から任意のアプリケーションの選択を受け付けたか否かを判定する。ここで、CPU21は、アプリケーションの選択を受け付けたと判定した場合(ステップS20:YES)、ステップS21に進む。一方、CPU21は、アプリケーションの選択を受け付けていないと判定した場合(ステップS20:NO)、選択を受け付けるまで待機する。管理者は、実行画面において、実行する統合アプリケーションを選択する選択操作を行う。CPU21は、管理者による管理者端末20に対する操作内容に基づいて、任意のアプリケーションの選択を受け付けたか否かを判定する。
ステップS21において、CPU21は、ステップS20で選択を受け付けたアプリケーションを実行する。なお、以下では、ステップS20で選択を受け付けたアプリケーションがスキル管理に関するスキル管理アプリであるものとして説明する。そして、CPU21は、ステップS22に進む。
ステップS22において、CPU21は、スキル管理アプリのアプリ情報をマスターデータベース44Aへ書き込む同期タイミングとなったか否かを判定する。ここで、CPU21は、同期タイミングとなったと判定した場合(ステップS22:YES)、ステップS23に進む。一方、CPU21は、同期タイミングとなっていないと判定した場合(ステップS22:NO)、ステップS21に戻る。一例として、CPU21は、スキル管理アプリの実行中に予め定めた時間が経過する都度、同期タイミングとなったと判定する。また、CPU21は、スキル管理アプリ上に設けられた不図示の同期ボタンが押下されたタイミング等のスキル管理アプリ上での所定の操作に基づいて同期タイミングを判定してもよい。
ステップS23において、CPU21は、図5に示すステップS15で行った同期設定に基づいて、スキル管理アプリのアプリ情報をマスターデータベース44Aへ書き込む。具体的には、CPU21は、アプリデータベース44Bに記憶されているアプリ情報であるスキルテーブル52Aの氏名、所属、及びスキルの各項目に示される情報を、マスターデータベース44Aに書き込む。一方で、CPU21は、同期設定が行われていないデータである備考についてはマスターデータベース44Aへの書き込みは行わない。そして、CPU21は、ステップS24に進む。
ステップS24において、CPU21は、実行処理の終了条件が成立したか否かを判定する。ここで、CPU21は、終了条件が成立したと判定した場合(ステップS24:YES)、実行処理を終了する。一方、CPU21は、終了条件が成立していないと判定した場合(ステップS24:NO)、ステップS21に戻る。一例として、CPU21は、スキル管理アプリを終了する終了操作が行われた場合に、終了条件が成立したと判定する。
次に、スキルテーブル52Aにおいて「未入力」の状態となっているスキル及び備考の項目にスキル情報が入力される流れについて説明する。
図12は、スキルテーブル52Aへのスキル情報の入力依頼から入力内容を承認するまでの流れを示すシーケンス図である。
図12に示すステップS30において、管理者端末20のCPU21は、スキルテーブル52Aを生成する。上記のように、CPU21は、マスターデータベース44Aから取得した従業員情報に示される各従業員の氏名及び所属をスキルテーブル52Aの氏名及び所属の項目に入力する。当該ステップS30で生成されたスキルテーブル52Aは、図8等に示されるように、氏名及び所属の項目に情報は入力されているが、スキル及び備考の項目は「未入力」の状態である。そして、処理はステップS31に進む。スキルテーブル52Aは「データセット」の一例である。
ステップS31において、管理者端末20のCPU21は、ステップS30で生成したスキルテーブル52Aに示されるスキル管理アプリのアプリ情報に対するアクセス権限を設定する。一例として、当該ステップS31では、スキルテーブル52Aにスキル情報を入力させる役職者の所属に基づいて、図10に示される所属単位のアクセス権限が設定されたものとする。具体的には、1課の役職者であるA課長には第1権限91が設定され、2課の役職者であるB課長には第2権限92が設定され、3課の役職者であるC課長には第3権限93が設定される。そして、処理はステップS32に進む。ここで、本実施形態におけるスキル管理に関するスキル管理アプリは「所定のアプリケーション」の一例であり、スキル情報は「所定の情報」の一例であり、役職者は「ユーザ」の一例であり、役職者の所属は「ユーザの属性」の一例である。
ステップS32において、管理者端末20のCPU21は、スキルテーブル52Aへのスキル情報の入力依頼を各役職者が所有するユーザ端末60に送信する。そして、処理はステップS33に進む。なお、管理者は、スキル情報を収集する所属を予め決定しており、CPU21は、管理者により指定された所属(例:1課~3課)の役職者が所有するユーザ端末60に対してスキル情報の入力依頼を送信する。なお、スキル情報の入力依頼を各役職者が行うための入力依頼実行ボタンをアプリケーション上に設けるようにしてもよい。入力依頼実行ボタンを各役職者が操作することにより、各役職者が属する所属内の各従業員のユーザ端末60にスキル情報の入力依頼が送られることになる。なお、明示的に入力依頼を行わずに、所定の期間において各従業員が自主的にスキル情報の入力を行ってもよい。
ステップS33において、各ユーザ端末60のCPU61は、各役職者によるスキルテーブル52Aへのスキル情報の入力を受け付ける。このとき、各役職者は、ステップS31で設定されたアクセス権限に基づいて、自身が属する所属内の従業員に関するスキル情報の入力が可能となっている。また、各役職者は、ステップS31で設定されたアクセス権限により、他の所属内の従業員に関するスキルテーブル52Aに示されるスキル管理アプリのアプリ情報の閲覧等は行えない。そして、処理はステップS34に進む。
ステップS34において、各ユーザ端末60のCPU61は、ステップS33で入力を受け付けたスキルテーブル52Aへの入力内容の承認を管理者端末20に申請する。そして、処理はステップS35に進む。なお、スキルテーブル52Aに対する入力は各従業員自身が行うようにしてもよい。具体的には、ステップS33において管理者からスキル情報の収集を依頼された各役職者が、自身が属する所属内の従業員に対して再度スキル情報の収集を依頼する。そして、入力を依頼された各従業員は自身のスキル情報をスキルテーブル52Aに入力し、自身が属する所属の役職者に申請する。この際、各従業員は自身が属する所属内であっても他の従業員のスキル情報は閲覧できないようにアクセス権限を設定することが好ましい。なお、各従業員に対するスキル情報の入力依頼は役職者を経由せずに管理者から直接行うようにしてもよい。
ステップS35において、管理者端末20のCPU21は、各役職者により申請されたスキル情報を承認する承認操作を受け付けた場合に、各役職者からの申請を承認する。そして、処理はステップS36に進む。
ステップS36において、管理者端末20のCPU21は、ステップS35で承認したスキルテーブル52Aへの入力内容をアプリデータベース44Bに反映する。具体的には、CPU21は、各役職者により入力されたスキル情報を統合することで、アプリデータベース44Bに記憶されているスキル管理アプリのアプリ情報を更新する。また、CPU21は、図5に示すステップS15で行った同期設定に基づいて、スキル管理アプリのアプリ情報をマスターデータベース44Aへ書き込む。具体的には、CPU21は、アプリデータベース44Bに記憶されているアプリ情報であるスキルテーブル52Aの氏名、所属、及びスキルの各項目に示される情報を、マスターデータベース44Aに書き込む。そして、処理は終了する。
次に、管理者端末20の表示部26及びユーザ端末60の表示部66にそれぞれ表示される統合アプリケーションの表示例について説明する。情報処理システム10では、企業Aの各従業員が所有する端末又は従業員のIDに対して設定されたアクセス権限に基づいて、統合アプリケーションの表示内容が変化する。
図13は、管理者端末20の表示部26に表示される統合アプリケーションの表示例である。図13に示す表示部26には、統合アプリケーション(例えばスキル管理アプリ)に組み込まれたパーツAの画面51及びパーツBの画面52が表示されている。図13に示す表示部26には、図9に示す構築画面で統合アプリケーションが構築された際と同じ配置で画面51及び画面52が表示されている。図13に示す画面51の表示内容は、図7~図9に示す画面51の表示内容と同様である。
図13に示す画面52の表示内容は、各役職者によりスキルテーブル52Aにスキル情報が入力されたことに基づいて、図8及び図9に示す画面52の表示内容から変化している。具体的には、図13に示す画面52内のスキルテーブル52Aのスキル及び備考の項目にスキル情報が追加されている。これにより、管理者は、1課の従業員Aの保有スキルがA資格であること、2課の従業員Bの保有スキルがB資格であり、A資格の取得中であること等を把握できる。
ここで、管理者には、企業A内の全従業員に関するアプリ情報の閲覧及び編集を可能とするアクセス権限が設定されている。そのため、図13に示す画面52内のスキルテーブル52Aには、企業A内の全従業員に関する氏名、所属、スキル、及び備考の各項目に示される情報が表示可能となっている。なお、本実施形態において画面52の表示形式を従業員の氏名、所属、及びスキルを用いた一覧表示としたがこれに限定されない。同じ一覧表示であっても、所属を最初の列として組織単位で表示するようにしてもよい。また、顔写真を氏名と共に表示するカードを複数表示する形式としてもよい。そして、これらの異なる表示態様を適宜切り替え可能とする、選択タブ又は選択ボタンを画面52に関連して備えるようにしてもよい。
図14は、A課長が所有するユーザ端末60Aの表示部66に表示される統合アプリケーションの表示例である。図14に示す表示部66には、図13と同様に、画面51及び画面52が表示されている。図14に示す画面51の表示内容は、図7~図9に示す画面51の表示内容と同様である。
図14に示す画面52の表示内容は、図13と同様に、各役職者によりスキルテーブル52Aにスキル情報が入力されたことに基づいて、図8及び図9に示す画面52の表示内容から変化している。具体的には、図14に示す画面52内のスキルテーブル52Aのスキル及び備考の項目にスキル情報が追加されている。
上記のように、A課長には、第1権限91が設定されている(図10参照)。そのため、図14に示す画面52内のスキルテーブル52Aには、1課内の従業員に関する氏名、所属、スキル、及び備考の各項目に示される情報が表示可能となっている。これにより、A課長は、従業員Aの保有スキルがA資格であること、従業員Cは保有スキルがないこと、従業員Eの保有スキルがA資格であり、B資格の取得中であることを把握できる。なお、アクセス権限はパーツごとに設定可能である。そのため、A課長に対するアクセス権限として画面51については非表示、すなわち、閲覧不可とすることも可能である。
以上説明したように、情報処理システム10では、管理者端末20のCPU21は、管理者による複数のパーツの選択に基づいて、アプリデータベース44Bに記憶されているアプリ情報を参照してアプリケーションの機能を実行する統合アプリケーションを構築する。そして、CPU21は、構築した統合アプリケーションの設定、具体的には、同期設定に基づいて、アプリデータベース44Bに記憶されているアプリ情報の少なくとも一部をマスターデータベース44Aに書き込む。これにより、当該情報処理システム10によれば、管理者による複数のパーツの選択に基づく統合アプリケーションが構築されることで、各管理者の要望に即したアプリケーションの構築が可能となる。また、当該情報処理システム10によれば、統合アプリケーションで用いるアプリ情報の少なくとも一部をマスターデータベース44A及びアプリデータベース44Bで別々に保持しつつ、適宜同期を行うことで、構築した統合アプリケーションで用いる情報を管理する際の可用性を高めることができる。
また、情報処理システム10では、管理者端末20のCPU21は、マスターデータベース44Aに記憶されている企業Aに属する従業員に関する従業員情報の少なくとも一部を取得する。そして、CPU21は、取得した一部の従業員情報を、統合アプリケーションに組み込まれたパーツに利用する。例えば、CPU21は、取得した一部の従業員情報を用いて、スキルテーブル52Aを生成する。これにより、当該情報処理システム10によれば、統合アプリケーションの構築に要する手間を軽減できる。
また、情報処理システム10では、管理者端末20のCPU21は、企業Aに属する従業員の所属に基づいて、統合アプリケーションに対するアクセス権限を設定する。これにより、当該情報処理システム10によれば、統合アプリケーションで用いる情報の機密性を保持することができる。また、当該情報処理システム10によれば、マスターデータベース44Aとは異なるアプリデータベース44Bを利用する統合アプリケーション上のアプリ情報を直接用いることにより、情報収集の煩雑さを抑えることができる。
また、情報処理システム10では、管理者端末20のCPU21は、複数のパーツをそれぞれ示すGUIを表示部26のパーツ領域30に表示する。そして、CPU21は、パーツ領域30に表示されたGUIが表示部26の構築領域50にドラッグ・アンド・ドロップされることにより、ドラッグ・アンド・ドロップされたGUIに示されるパーツを統合アプリケーションに組み込む。これにより、当該情報処理システム10によれば、各管理者の要望に即した統合アプリケーションをノーコードで構築することができる。
また、情報処理システム10では、管理者端末20のCPU21は、管理者による、マスターデータベース44Aへの書き込みを許可するアプリ情報の設定を受け付ける。これにより、当該情報処理システム10によれば、全てのアプリ情報をマスターデータベース44Aへ書き込む場合に比べて、マスターデータベース44Aの記憶容量の圧迫を抑制できる。
また、情報処理システム10では、管理者端末20のCPU21は、アプリ情報のうち、ある統合アプリケーション、例えば、スキル管理アプリを実行する際にのみ参照される情報のマスターデータベース44Aへの書き込みを禁止する。これにより、当該情報処理システム10によれば、不要なアプリ情報がマスターデータベース44Aに書き込まれて、マスターデータベース44Aの記憶容量が圧迫される事態を抑制できる。
また、情報処理システム10では、管理者端末20のCPU21は、統合アプリケーションの実行中における所定の同期タイミングで、アプリデータベース44Bに記憶されているアプリ情報の少なくとも一部をマスターデータベース44Aに書き込む。これにより、当該情報処理システム10によれば、統合アプリケーションの実行中に、当該統合アプリケーションで用いるアプリ情報の少なくとも一部の定期的なバックアップを行うことができる。また、当該情報処理システム10によれば、複数のアプリケーションでマスターデータベース44A上のデータを利用する場合であっても、適宜同期が行われることによりアプリケーション間でデータが異なる事態を抑制することができる。
また、情報処理システム10では、管理者端末20のCPU21は、スキル管理アプリで用いるスキルテーブル52Aにスキル情報を入力させる役職者の所属に基づいて、スキルテーブル52Aに示され、スキル管理アプリに関するアプリ情報に対するアクセス権限を設定する。そして、CPU21は、役職者によりスキルテーブル52Aにスキル情報が入力されたことに基づいてアプリデータベース44Bに記憶されている当該アプリ情報を更新するとともに、アプリデータベース44Bに記憶されている当該アプリ情報の少なくとも一部を、マスターデータベース44Aに書き込む。これにより、当該情報処理システム10によれば、スキル情報を入力させる役職者の所属に基づくアクセス権限が設定されることで、スキル情報を役職者から収集する際の機密性を保持することができる。また、当該情報処理システム10によれば、アプリデータベース44Bに記憶されているスキル管理アプリに関するアプリ情報の少なくとも一部をマスターデータベース44A及びアプリデータベース44Bで別々に保持することで、収集したスキル情報を管理する際の可用性を高めることができる。
また、情報処理システム10では、管理者端末20のCPU21は、管理者による、役職者により入力されたスキル情報を承認する承認操作を受け付けた場合に、アプリデータベース44Bに記憶されているスキル管理アプリに関するアプリ情報の少なくとも一部を、マスターデータベース44Aに書き込む。これにより、当該情報処理システム10によれば、管理者の承認を受けていないアプリ情報がマスターデータベース44Aに書き込まれる事態を抑制できる。
また、情報処理システム10では、管理者端末20のCPU21は、事前に決定された複数のパーツを含む統合アプリケーションのテンプレートを一つ以上表示部26に表示させる。これにより、当該情報処理システム10によれば、汎用的な機能の組み合わせで足りる又は統合アプリケーションを早期に構築したい等といった管理者の要望に応えることができる。
また、情報処理システム10では、管理者端末20のCPU21は、統合アプリケーションの設定として、いずれのデータをアプリ情報に含めるかの設定を受け付ける。そして、CPU21は、設定を受け付けたアプリ情報の少なくとも一部をマスターデータベース44Aに書き込む。これにより、当該情報処理システム10によれば、設定を受け付けていないアプリ情報がマスターデータベース44Aに書き込まれる事態を抑制できる。
また、情報処理システム10では、管理者端末20のCPU21は、APIを用いて外部アプリケーションの情報を取得する。そして、CPU21は、取得した外部アプリケーションの情報をアプリ情報に含める。これにより、当該情報処理システム10によれば、他のシステムと連携して統合アプリケーションの構築を効率化することができる。
また、情報処理システム10では、管理者端末20のCPU21は、マスターデータベース44Aに記憶されている情報、例えば、従業員情報のみを用いて処理を行う、統合アプリケーションとは異なるアプリケーションを実行する。これにより、当該情報処理システム10によれば、種々のデータベースを用いた環境下で、各種のアプリケーションを実行することができる。
(その他)
上記実施形態では、企業Aを「所定団体」の一例としたが、「所定団体」の一例はこれに限定されない。例えば、「所定団体」の一例は、企業A以外の他の企業、公社・団体、又は官公庁等であってもよい。
上記実施形態では、ユーザ端末60を「PC」としたが、ユーザ端末60はこれに限定されない。例えば、ユーザ端末60は、スマートフォン又はタブレット等の携帯端末であってもよい。
上記実施形態では、サーバ40のストレージ44にマスターデータベース44A及びアプリデータベース44Bが格納されていたが、これに限定されない。例えば、マスターデータベース44Aとアプリデータベース44Bとが、サーバ40と他の複数のサーバとで分散して格納されていてもよい。
上記実施形態では、統合アプリケーションは、複数の機能を実行可能としたが、これに限定されない。例えば、管理者による一又は複数のパーツの選択を可能とした場合には、統合アプリケーションは、一のパーツの機能のみが実行可能であってもよい。
上記実施形態では、パーツ領域30において、統合アプリケーションに組み込まれたパーツを示すGUIの色は、他のGUIの色とは異なる態様で表示されることとしたが、これに限定されない。例えば、パーツ領域30において、統合アプリケーションに組み込まれたパーツを示すGUIは、他のGUIとは異なる形状に変化したり、他のGUIから離れた位置に配置されたりしてもよい。また、パーツ領域30において、統合アプリケーションに組み込まれたパーツを示すGUIは、所定の発光パターンで点滅されてもよい。また、構築領域50に配置されたパーツ(GUI)が選択された際に、各パーツの色や形状を変化させたり、又は発光パターンで明滅させたりしてもよい。
上記実施形態において、統合アプリケーションにパーツが組み込まれる前後で、パーツ領域30に表示されるGUIの種類を変化させてもよい。例えば、統合アプリケーションに組み込まれたパーツとの予め定めた関連度が高いパーツを示すGUIをパーツ領域30に優先して表示してもよい。また、統合アプリケーションに組み込まれたパーツの種類に基づいて、パーツ領域30に表示される特定のGUIを推奨する推奨表示を行ってもよい。例えば、パーツBが統合アプリケーションに組み込まれた場合は、推奨表示として、パーツBとの予め定めた関連度が高いパーツD及びパーツF等を示す特定のGUIを輝かせるアニメーションを表示してもよい。
上記実施形態では、構築領域50に2つのGUIがドラッグ・アンド・ドロップされた例を示したが、3つ以上のGUIをドラッグ・アンド・ドロップすることも可能である。そして、3つ以上のGUIが構築領域50にドラッグ・アンド・ドロップされた場合は、対応する数の画面が表示される。この場合は、構築領域50に表示される3つ以上の画面の中で、予め定めた関連度が高い画面同士を隣接して配置してもよい。
上記実施形態では、従業員の所属を「所属ユーザの属性」の一例としたが、「所属ユーザの属性」の一例はこれに限定されない。例えば、「所属ユーザの属性」の一例は、従業員の雇用年月日、役職、業務内容、経歴、及びスキル等の少なくとも1つであってもよい。
上記実施形態において、統合アプリケーションは、予め定めた外部アプリケーションとのAPI(Application Programming Interface)連携により、予め定めた外部アプリケーションから開発情報又は位置情報等の各種データを取得可能としてもよい。また、外部アプリケーションのAPIを利用することによりマスターデータベース44A又はアプリデータベース44Bのデータを外部アプリケーションに対して出力可能としてもよい。
上記実施形態では、設定領域70で設定される各種設定として、アクセス権限設定及び同期設定を例示したが、当該各種設定はこれに限定されない。例えば、設定領域70においては、アクセス権限設定及び同期設定に加えて、ビュー設定及び表示項目設定等の他の設定を行うことができる。
上記実施形態では、スキルテーブル52Aへのスキル情報の入力依頼から入力内容を承認するまでの流れを図12に示すシーケンス図で説明した。しかし、当該シーケンス図において管理者端末20とユーザ端末60との間で授受される情報は、スキル情報に限定されず、他の任意の情報であってもよい。
上記実施形態では、スキルテーブル52Aを、各従業員を基準としたテーブル表示で示したが、スキルテーブル52Aの表示内容は特に限定されない。例えば、スキルテーブル52Aは、企業Aの各所属を基準としたテーブル表示又はツリー表示等で示されていてもよい。
上記実施形態において、統合アプリケーションの構築時に利用可能なマスターデータベース44A内の情報は特に限定されない。当該情報は、上記実施形態に記載のものの他、所属団体(例:企業A)の組織に関する情報、又はその他所属団体に関連する情報等であってもよい。
なお、上記実施形態でCPU21がソフトウェア(プログラム)を読み込んで実行した各種処理を、CPU以外の各種のプロセッサが実行してもよい。この場合のプロセッサとしては、FPGA(Field-Programmable Gate Array)等の製造後に回路構成を変更可能なPLD(Programmable Logic Device)、及びASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が例示される。また、各種処理を、これらの各種のプロセッサのうちの1つで実行してもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGA、及びCPUとFPGAとの組み合わせ等)で実行してもよい。また、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子等の回路素子を組み合わせた電気回路である。
また、上記実施形態では、情報処理プログラム24Aがストレージ24に予め記憶(インストール)されている態様を説明したが、これに限定されない。情報処理プログラム24Aは、CD-ROM(Compact Disk Read Only Memory)、DVD-ROM(Digital Versatile Disk Read Only Memory)、及びUSB(Universal Serial Bus)メモリ等の記録媒体に記録された形態で提供されてもよい。また、情報処理プログラム24Aは、ネットワークNを介して外部装置からダウンロードされる形態としてもよい。さらに、情報処理プログラム24Aは、ユーザ端末60のストレージ64にも記憶されていてもよい。