この投稿では、対処しようとしているニーズに適したダッシュボードを設計するためのヒントと、ダッシュボードのデータを構築する方法について説明します。また、外部レポートダッシュボードと、それらで使用できるデータを表示する方法についても説明します。
これらはすべてガイドラインであることに留意してください。ダッシュボードには厳格なルールはありません。アプリケーションにレポート ダッシュボードが必要な場合があります。ダッシュボードに大量のデータを表示する必要がある場合があります。常に新しいアイデアや可能性にオープンであるべきですが、必要に応じて反論することも忘れないでください。
TL;DRバージョンが必要な場合は、 Mendix – ダッシュボードの使い方クイックガイド!
ダッシュボードの種類
アプリケーションを開発していると、ダッシュボードが必要になるときが来ます。おそらく最初に遭遇するのは、実用的なダッシュボード、つまりユーザーのランディング ページとして使用するタイプのダッシュボードでしょう。
このタイプは、管理者にその日のタスクや未解決の問題に関する警告を表示したり、顧客に最近の注文や気に入りそうな新製品を表示したりするために使用できます。これらは、ユーザーがこれから行うことに関連する情報をユーザーに表示するダッシュボードです。つまり、現在のデータを反映し、次のアクションにユーザーを導く必要があります。
ダッシュボードのもう 1 つの主な種類は、レポート ダッシュボードです。これらのダッシュボードは、大量のロールアップ データを処理することを目的としており、より広範囲のパフォーマンスを分析するために使用されます。特定の月間のチームのパフォーマンスや、1 年間の会社全体のパフォーマンスなどです。重要なのは、大量の情報が含まれていることです。
これら2つのタイプのうち、私たちが主に関心を持っているのは実用的なダッシュボードです。なぜなら、これらはあなたがあなたのビジネスに組み込みたい種類のダッシュボードだからです。 Mendix アプリケーション。レポート ダッシュボードについて触れ、そのデータを公開する方法について説明しますが、レポート ダッシュボードの設計は、ビジネス インテリジェンスの専門家に任せるのが最善です。
実用的なローコードダッシュボードの設計
ダッシュボードを設計する際には、データがカバーする期間を事前に決めておくとよいでしょう。私がお勧めするのは、可能な限り短くすることです。大きなデータ セットを集約することは避けてください。通常は 30 日間が適切です。一般的には XNUMX か月 (XNUMX 日間) が上限です。
ダッシュボードを設計する際に従うべきガイドラインは次のとおりです。
- 少ないほど良い – ダッシュボードに過剰な情報を入れないでください。ダッシュボードに表示するものはすべて価値を高めるものでなければなりません。
- 1 つの画面に収める – ダッシュボードのコンテンツは、ターゲットとするデバイスの種類に関係なく、1 つの画面に収まる必要があります。ユーザーがスクロールして内容を確認する必要がある場合は、コンテンツが多すぎる可能性があります。(モバイル ダッシュボードでは、この点はそれほど重要ではありません)
- 読み込み時間が短い – データを集約するため、読み込みに長い時間がかかるダッシュボードを作成しがちです。読み込み時間をできるだけ短くするようにしてください (すべてのアプリ ページと同様)。
- 優先順位 – ほとんどのユーザーは上から下、左から右に読むため、情報を配置する順序を考慮する必要があります。たとえば、KPI は通常、ユーザーが最初に考慮する必要があるため、最初の行に配置されます。チャートは、情報提供はできても、通常はアクションに結びつかないため、通常は下部に配置されます。ユーザーが右から左に読む場合は、レイアウトを反転することを検討してください。
実用的なダッシュボードを設計する際には、考慮すべき重要な質問がいくつかあります。
- パフォーマンスが低い/高いと強調する必要がある重要な領域はありますか? (KPI)
- 短期間で継続的な進歩が見られる必要がある分野はありますか? (グラフ)
- 視聴者は次に何をする必要がありますか? (タスク リスト)
主要業績評価指標(KPI)の使い方
ダッシュボードを見たときに最初に目にするものの 1 つが、KPI (主要業績評価指標) です。これを簡単に表示するには、特定の指標がうまくいっているかどうかを示すために強調表示された大きな数値として表示します。ベースライン値を表示すると便利な場合もあります...
ここでは、一目で、この期間の合計注文数が緑色で表示されていることがわかります。つまり、平均を上回っており、問題はありません。ただし、遅延配送の値は赤色で表示されており、懸念事項です。この値をクリックして遅延配送のリストに移動できるようにすることは、実用的なコンテンツに最適です。
さまざまな種類のチャートとその使用時期
ダッシュボードにグラフが 1 つや 2 つなければ意味がありません。グラフは楽しく、ユーザーがデータをすぐにイメージするのに役立ちます。ただし、グラフは間違った使い方をされやすいものです。ダッシュボードにグラフを追加するときは、控えめに使用し、シンプルにしてください。基本的なガイドラインをいくつか示します。
棒グラフ、折れ線グラフ、縦棒グラフのヒント
棒グラフ、折れ線グラフ、縦棒グラフを使用してデータ セットを比較します。時間の経過に沿って比較する場合は、必ず日付順に並べ、時間の経過に沿って比較しない場合は、適切な順序で表示するようにします。
これはアルファベット順、または最大値から最小値の順になります。
表示できるデータ グループが多すぎないようにしてください。折れ線グラフでは系列を 5 つ以下に、棒グラフや縦棒グラフでは要素を 8 つ以下に制限するようにしてください。
円グラフ、ドーナツグラフ、ヒートマップを使用しない場合
これらは不適切に使用されることが多いため、通常は可能な限り避けるべきです。ただし、これらを使用する必要がある場合は、あまり多くの値を比較しないようにし、データ セットに非常に類似した値がある場合は使用しないでください。
3D チャート、過度にスタイル化されたチャート、ゲージを使用しない理由
グラフはシンプルにしましょう。3D 効果や過剰なスタイル設定は、グラフの本来の目的から注意を逸らす可能性があります。重要な情報を最もよく強調するには、シンプルな色と形式を使用するようにしてください。また、ゲージはかつて非常に人気がありましたが、物理的なディスプレイをデジタルで再現することは、多くの場合、良い考えではありません。たとえば、ゲージは通常、上記のように KPI として表現する方が適切です。
タスクリストには何を含めるべきですか?
ユーザーにプロンプトを表示する良い方法は、タスク リストを使用することです。ここで言うタスクとは、必ずしも明示的にタスクと呼ばれるものを意味するわけではありません。タスク リストは、投稿が必要な注文や、回答が必要な顧客フィードバックなどから構成されます。近い将来に実行する必要がある、または期限を過ぎている、ユーザーが完了する必要のあるアクションである必要があります。リストは短くする必要があります。可能であれば、画面に表示される項目は 10 個以下にし、最悪の場合は、サブセットのみを前面に表示するようにページ分けする必要があります。
各エントリには、最も関連性の高い情報のみを表示し、あまり多くの情報を表示しないようにする必要があります。項目をクリック可能にして、ユーザーが必要に応じてドリルダウンして詳細情報を見つけられるようにすることができます。
ユーザーが実行する必要があるタスクの種類が複数ある場合は、各タブのタスク数を表示するバッジ付きのタブ コンテナーの使用を検討できます。ただし、この形式は使いすぎるとすぐに雑然とした印象になることに注意してください。タブは 3 つ以上使用しないようにしてください。
データを集計する方法
ダッシュボードを構築する場合、特に KPI を使用する場合は、一部のデータを集計 (ロールアップ、カウント、合計) する必要があります。これを行うにはいくつかの方法があり、ローコードのものもあれば、そうでないものもあります。
- マイクロフローデータソースを使用して必要なデータをロールアップする
- 事前にロールアップされたデータのテーブルを作成して維持する
- オブジェクトクエリ言語(OQL)を使用して複雑なクエリを作成し、データをロールアップします。
どれを使用するかは、処理するデータの量、期間間の比較を行うかどうか、必要なビット数またはロールアップされたデータの数によって異なります。
マイクロフローデータソースを使用してデータを集計する
最も頻繁に使用するツールは、マイクロフロー データ ソースです。これは、ロールアップされたデータを含む非永続的なエンティティを返すマイクロフローにデータ ソースが設定された、ページ上の単純なデータ ビューです。
マイクロフロー自体には、さまざまな方法でデータを集約するためのデータ取得およびリスト アクションがいくつかあります。次に、非永続エンティティのインスタンスを作成し、それを返します。とても簡単です。
注意すべき点は、取得アクションとリストアクションを使用する場合、 Mendix クエリを自動的に最適化して、取得を実行し、データをグループ化して、結果を集計します。他のエンティティ データは返されません (クエリの後半で取得アクションを使用しない限り)。
より多くの KPI 値を取得したり、異なる期間を比較したり、より大きなデータ セットを使用したりし始めると、効率が低下する可能性があるため、次のオプションに進むことを検討する必要があります。
データを事前集計するタイミングと方法
通常はクエリが長いため、オンザフライでデータを集計することが問題になる場合は、事前に集計されたデータを保存するという代替手段があります。つまり、集計された情報とそれが表す期間の日付スタンプを保持するためのエンティティを作成し、それをダッシュボードのソースとして使用します。
データは、マイクロフローを使用して、前のオプションと同じ方法で集計される可能性がありますが、通常はスケジュールされたタスクとして実行されます。タスクの頻度は、集計するデータの期間によって異なりますが、通常は前日のデータをロールアップする夜間のルーチンになります (ただし、1 週間または 1 か月になる場合もあります)。
事前集計のもう 1 つのオプションは、変更が行われるたびに増分することです。これは、作成マイクロフローの一部として追加の更新を行うことで実現することも、オブジェクトのコミット時にトリガーされるイベントで行うこともできます。これも、予想されるデータの量によって異なります。トランザクション数が多い場合は、集計テーブルを常に更新するよりも、スケジュールを設定する方がよいでしょう。ただし、リアルタイム データが必要な場合は、このオプションを使用する必要があります。
オブジェクト クエリ言語 (OQL) の使用方法とタイミング
最後の選択肢は、オブジェクト クエリ言語を使用することです。これにより、データベースに対して直接実行される独自のクエリを作成できます。複数のデータ グループにわたって複数の集計を返す必要がある場合に最適です。この選択肢は、真にローコードのアプローチを求めている人向けではなく、主に SQL の知識がある人向けです。
これを使用するには、まず OQL ウィジェット マーケットプレイスから購入して、 OQL ガイド 弊社のドキュメントサイトをご覧ください。
この選択の核となるのは、クエリとなる文字列を作成し、OQL ステートメントの実行アクションを使用して、返されたデータを非永続エンティティにキャプチャすることです。
OQL の使用は、簡単に実行できる作業ではありません。プラットフォームが最適化するわけではないので、これが特定の問題に対処する最善の方法であるかどうかを必ず検討し、クエリの効率を再確認してください。
チャートを作成する方法 Mendix
チャートを Mendix ダッシュボードでチャートを作成したい場合は、チャート ウィジェットから始めるのが最適です。次の機能がすぐにサポートされます。
- 縦棒グラフ
- 棒グラフ
- バブルチャート
- ヒートマップ
- 円グラフ
- 折れ線グラフ
- 時系列
チャート ウィジェットの完全なガイドはドキュメント エリアで入手できますが、ここでは簡単に紹介します。
まず、追加するグラフの種類を選択し、ウィジェットをページにドラッグします。ここでは縦棒グラフを使用します。
注: チャート ウィジェットの古いバージョンでは、ウィジェットはデータ ビューまたはリスト内に配置して、そのデータ ソースがオブジェクトを返す必要がありました。どのオブジェクトでもかまいません。最新バージョンでは、この限りではありません。
次にウィジェットをダブルクリックすると、「チャートのプロパティ」タブが表示されます。このタブには「シリーズ」セクションがあり、ここで最初のデータ セットを追加できます。
シリーズ リストの [新規] ボタンをクリックすると、データの取得元を尋ねるポップアップが表示されます。ここではシンプルに、動的なデータ ソースではなく静的なデータ ソース (つまり、カスタマイズ可能なデータ ポイントではなく、事前設定されたデータ ポイント) を使用し、データベースからデータを取得します。
このシリーズの出発点は、チャートを作成するために使用するエンティティになります。この場合は、Orders エンティティだとします。次に、XPath 制約を使用して、今月これまでに行われた注文に制限することができます。
[OrderPlacedDate > '[%BeginOfCurrentMonth%]']
次に、[静的シリーズ] タブに移動してシリーズに名前を付けます。たとえば、「1 日あたりの注文数」とします。次に、[データ ポイント] タブに移動します。ここでは、X 軸を「OrderPlacedDate」に設定し、Y 軸は好きなものにします。たとえば、「PricePaid」などです。これは、下部にある [集計タイプ] オプションを使用して [カウント] に設定するためです。これにより、データが自動的に日ごとにグループ化され、合計注文数が表示されます。
完了したら、ポップアップを閉じてグラフのプロパティ ウィンドウに戻り、軸ラベルを「発注日」や「注文数」などに設定します。これで完了です。これで、次のような基本的なグラフが完成しました。
さまざまなソースや動的範囲を使用して、外観や操作性をカスタマイズしたり、データの読み込み方法を変更したりするためにできることは他にもたくさんあります。これらの機能について詳しくは、ドキュメントをご覧ください。そして、何よりも、ぜひ試してみてください。
チャートウィジェットは、 Plotly ライブラリ そこに行けば、さらに詳しく調べたり、ライブラリにある例からインスピレーションを得たりすることができます。本当に自由になり、完全にカスタマイズされたチャートを使いたいのであれば、 AnyChartウィジェット.
AnyChart ウィジェットは、より複雑なウィジェットであり、JSON 構造ファイルとエクスポート マッピングを使用して、データを JSON 形式で提供することで最適に使用できます。Plotly のほぼすべてのチャート タイプを使用でき、スタイルを完全にカスタマイズできます。ただし、これはローコード アプローチではないため、開発経験のあるユーザーが試すのが最適であることに留意してください。
外部レポートオプションの実装方法
実用的なダッシュボードを構築しましたが、さらに高度なレポートを希望する人がいます。どのように対応しますか? Mendix?
最も簡単な方法は データをODataソースとして公開するこれは、Power BI、Grafana、Excel などのほとんどのレポート プラットフォームで使用できます。使用後は、選択したプラットフォームのレポート ツールを使用してデータをモデル化し、提示できます。
また、ODataを公開すると、ソースがデータハブカタログで利用可能になることにも言及しておく価値があります。これにより、他の場所で迅速かつ簡単に使用できるようになります。 Mendix アプリケーション。Power BIやGrafanaなどのSaaSサービスを使用すると、これらの高度なレポートをアプリケーションに埋め込むこともできます。 Mendix 必要に応じて、次のようなウィジェットを使用して Power BI 埋め込み または iFrame コンポーネント.
長期的に見ると、OData をデータ レイクまたはデータ ウェアハウスに取り込む方が効果的です。これにより、データ ソースを事前にコンパイルして組み合わせ、ビジネスで簡単に取り込むことができるからです。これは、主に組織のレポート戦略またはデジタル変革計画によって決まります。
このブログ投稿から得られる重要なポイント
ダッシュボードの作成方法については、これである程度理解できたはずです。現在のユーザーのニーズに基づいて実用的なページを作成し、最も重要な情報のみを最初に提示します。注意が必要な点と次に行うべきことをユーザーに案内します。
これらはすべてガイドラインであり、ユーザーのニーズにはある程度柔軟に対応すべきであることを忘れないでください。「ある程度」と言うのは、Excel をダッシュボードとして再作成するなど、ユーザーが無理な要求をすることがあり、いつ拒否すべきかを知る必要があるからです。
この投稿の要約版をご希望の場合は、 Mendix – ダッシュボードの使い方クイックガイド.
最後に、何よりもまず、実験をしましょう! Mendix 何かを構築し、試してみて、うまくいかなければ捨ててしまうことが、素早く簡単にできる環境です。私たちは失敗から最も多くを学ぶので、大胆に新しいことに挑戦しましょう。









