アプリ構築の基本

Prev Next

Tulipでアプリを作るのは、最初は敷居が高く感じるかもしれませんが、核となる要素を分解して理解すれば、それほど複雑ではありません。アプリケーションは、以下の原則を兼ね備えています:* デザイン- ステップとステップ上のコンポーネントのレイアウト、構成、物理的な外観、および配色。

Tulipはコード不要のプラットフォームなので、コーディングの経験に関係なく、制作可能なアプリを設計するために必要な機能に焦点を当てます。

アプリを作る前に、何を作るのか、なぜ作るのかを理解する必要があります。

アプリ開発プロセス

アプリの開発プロセスに従うことで、ビジネスと運用のニーズに対応するアプリを確実に構築できます。複数のアプリを構築する場合は、データを共有し、プロセス間のルーティングを行うことで、ソリューションとして連動するようにします。

アプリ開発プロセスには、以下のステップが含まれます:

ビジネス目標の設定

  1. 重点的に取り組む目標を1~3つ選びます。
  2. 目標を設定する際は現実的であること。目標は具体的で測定可能でなければなりません。
  3. ビジネスに最も大きな影響を与える改善分野を特定する。
  4. 目標を全体的なビジネス戦略と整合させる。
  5. 目標がビジネスの成熟度と成長焦点に合っていることを確認する。
  6. 現在の発展段階と成長の焦点を評価する。
  7. 利用可能なリソースと目標を整合させる。
  8. 将来のニーズと課題を予測する。
  9. これらの目標を使用して、Tulipを使用したユースケースの開発に優先順位を付けます潜在的な影響に基づいて、目標をサポートするユースケースを特定し、優先順位を付けます。
  10. 実装のためのロードマップを作成します。
  11. 以下のビジネス目標テンプレートを使用して、運用上のペインポイントを特定し、目標に優先順位を付け、測定可能なKPIを設定します。

Set business metrics graphic{高さ="" 幅=""}

最初のユースケースを選ぶ

ユースケースとは、デジタル作業指示書や在庫管理など、アプリケーションを構築するための幅広い改善領域やプロセスのことです。

ビジネス目標からアプリの設計に逆算します。

ビジネス目標は次のとおりです:- 一次パス歩留まりの向上 - 手直しループの減少 - 出来高によるスクラップの減少

これらの目標を評価するために必要なデータ:- ステーションごとのスクラップ(重量) - ラインごとのスループット - タイプごとの不良品数

アプリを構築するユースケース:- スケール接続によるスクラップの計量と分類- 生産データによるスループットの追跡- 詳細なエラーと欠陥のレポート

詳しくはチューリップ・ユニバーシティ・コースをご覧ください:最初のユースケースの選び方

生産現場のマッピング

Tulipでソリューションを設計する場合、ソリューションが物理的に存在する場所(設備、ツール、制約)と、オペレータがその場所でどのようなアクティビティ(工程順序、時間帯)を実行するかを考えることが重要です。

業務フロー図(OFD)は、アプリを工場フロアにマッピングし、それらのアプリのモデルとなるプロセスを分解するのに役立ちます。

アクティビティOFDの例@(埋め込み)(https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Activities%20OFD.svg)

OFDの作成方法については、チューリップ・ユニバーシティ・コースをご覧ください:チューリップ・ソリューション設計

アプリの特徴と機能に対するオペレーター活動の文書化

Tulipでアプリの構築を始める前に、ワイヤーフレームを作成すると便利です。これは、アプリケーションのレイアウトとワークフローのハイレベルなマップまたはスケッチで、詳細な要素やデザインは含まれていません。このワイヤーフレームは、OFDから作成できます。

  1. 主要な機能を特定する

最初のステップは、アプリケーションの主要な機能を決定することです。どのような主要なタスクを達成するのでしょうか?誰が使うのか?

  1. アプリのステップをスケッチする

アプリのステップをスケッチしましょう。これは、基本的にオペレーターが操作するさまざまな画面です。オペレータはどのようなアクションを、どのような順序で実行するのか?アプリは、フロアのプロセスのすべてのステップをモデル化する必要があります。

  1. ユーザーフローの確立

ユーザーフローをマッピングするために、ステップ間に矢印を描くことによって、ユーザーがアプリを通して取る可能性のある経路を図示します。

  1. インタラクティブ要素を示す

各ステップにインタラクティブ要素を追加し、オペレーターが物理的に相互作用するものを示します。これらの要素には、ボタン、フォーム、テーブル、およびデバイスを含めることができます。

  1. ワークフロー以外の機能

不具合報告フォーム、ヘルプ要請画面、分析画面など、オペレータがフロー外でアクセスする必要のある追加機能を含める。

ワイヤーフレーム例Solution Wireframe Examples 1 2

基本的なワイヤーフレームをスケッチしたら、アプリビルダーはアプリエディタで各ステップの構築を簡単に開始できます。

アプリエディタ

App Editorは、コーディングの経験がなくてもアプリを構築・編集できる場所です。

App editor ex functionality{height="" width=""}.

アプリエディターの詳細な概要については、Tulipアプリエディター入門をご覧ください。

ステップ

ステップはアプリの「ページ」であり、コンテンツを表示するさまざまな画面です。

ステップは線形でも非線形でもかまいません。アプリに追加するロジックによって、ステップの遷移が決まります。

ステップの詳細については、こちらをご覧ください。

ベースレイアウト

ベースレイアウトは、作成する各ステップに適用されるテンプレートです。ベースレイアウトを作成することで、各ステップに基礎となる要素が自動的に追加され、アプリの構築が容易になります。

ベースレイアウトの詳細については、こちらをご覧ください。

ウィジェット

ウィジェットはアプリの構成要素です。情報を表示したり、データを収集したり、トリガーロジックを実行したりすることができます。

Widgets.png{height="" width=""} ウィジェットの種類を紹介します。

ウィジェットの種類を紹介します:

  • アイコンウィジェット- ワークスペース内に図形、アイコン、ロゴを配置し、ロジックを設定してアプリの外観とブランディングをデザインします。
  • ボタンウィジェット- アプリで使用するボタンを、あらかじめロジックがプログラムされたもの、または空白のカスタムボタンから選択できます。
  • 入力ウィジェット- 入力ウィジェットでアプリのユーザーからデータを収集します。
  • テキストウィジェット- 変数の値、プレーンな静的テキスト、レコードプレースホルダ全体を含む静的または動的テキストを表示します。
  • 埋め込みウィジェット- ビデオ、画像、CAD、ドキュメント、バーコードスキャナなどをアプリに埋め込みます。
  • カメラウィジェット- Tulip Visionのカメラフィードを表示したり、バーコードをスキャンしたりできます。
  • 電子署名ウィジェット- 21 CFR Part 11に従って、Tulip内のデータに署名します。
  • カスタムウィジェット- 上記のどのウィジェットもニーズに合わない場合は、HTML、CSS、Javascriptを使用して独自のウィジェットを作成し、プラットフォームの機能を拡張できます。

ウィジェットの詳細については、こちらをご覧ください。

トリガー

トリガーを使うと、アプリにロジックを追加できます。

トリガーはアプリに何かをさせます。トリガーがなければ、アプリは平坦な画面です。トリガーは、ウィジェットだけでなく、ステップ(ステップレベルトリガー)やアプリ(アプリレベルトリガー)にも追加できます。

ex first app display hello world message {height=""幅=""}。

すべてのトリガーは同じ基本フォーマットに従います:アクションが発生したら **、**次のアクションやトランジションを実行します。

複数のアクションを追加することもできます。また、実行されるアクションに条件を追加する if ステートメントを追加することもできます。

If文では、アクションが実行される条件を設定します。

Trigger-If Statement.png{height="" width=""}のようにします。

Thenステートメントは、アクションかトランジションです。アクションは、ステップの変更とは関係のないアプリの変更です。トランジションとは、ステップを変更するか、アプリを完了することである。

Trigger-New Action/Transition.png{高さ="" 幅=""}。

最後に、if文と同じように、if文が偽であることが証明されたときに取るべき代替アクションを決定するelse if文があります。

Trigger-Else If Statement.png{height="" width=""} トリガーについて詳しくはこちらをご覧ください。

トリガーについて詳しくはこちらをご覧ください。

変数

変数は、Tulipアプリ内でデータを保存・参照するための主要な手段です。ユーザー入力やデバイス出力など、さまざまなソースからデータを取得し、アプリのアクティビティに基づいた計算を可能にします。変数を使用すると、トリガーでアプリの動作を制御したり、動的なコンテンツを表示したり、Analyticsで詳細なレポートを作成したりできます。

変数は以下のデータ型を持つことができます:

  • Boolean - はい/いいえ
  • Color - ウィジェットのステータスを設定するダイナミックカラー
  • Datetime - 日付と時刻のタイムスタンプ
  • File - Tulipに保存されたファイルへのリンク
  • Image - Tulipに保存された画像へのリンク
  • 整数 - 整数
  • Interval - 秒単位で表示される時間
  • Machine - チューリップのマシンオブジェクト
  • Number - 実数
  • オブジェクト - 独自のデータ型を持つ子属性を持つ設定可能なオブジェクト構造
  • ステーション - チューリップのショップフロアのステーションオブジェクト
  • テキスト - 連続した文字
  • User - Account/Workspace設定からのTulipのUserオブジェクト

変数について詳しくはこちらをご覧ください。

アプリ構築のベストプラクティス

アプリの各要素について、以下のプラクティスをご紹介します:

デザイン

ステップとステップ上のコンポーネントのレイアウト、構成、物理的な外観、配色。

  • **単一の役割、単一のプロセス:**各アプリは、特定のユーザーの役割とその役割に関連するタスクをサポートするように調整する必要があります。こうすることで、アプリが集中して使いやすくなります。
  • ベースレイアウト:ベースレイアウトは、アプリ内のすべてのステップにステップデザインを適用します。これにより、UIが標準化され、オペレーターの直感的なユーザーエクスペリエンスが保証されます。効果的なベースレイアウトの設計方法については、こちらをご覧ください。
  • 明確なコンポーネント名:ステップ、トリガー、変数などのアプリコンポーネントには、すべて明確でユニークな名前を付ける必要があります。これにより、アプリ開発者は各コンポーネントが何であるか、または何をするかを直感的に理解することができます。コンポーネントの名前の付け方のベストプラクティスについては、こちらを参照してください。
  • 標準化されたステータス: 一貫性を維持し、シームレスな統合を可能にするために、追加のアプリ間で再利用できる(注文、ステーション)ステータスの事前定義されたセット。

機能性

トリガーの動作、ステップナビゲーション、ウィジェットの設定など、アプリのロジックがどのように実行されるか。

  • **統一されたレコードプレースホルダ:**異なるアプリ間で一貫性のあるレコードプレースホルダを使用することで、データの整合性を確保し、データ管理を簡素化します。
  • **ステップの命名:**適切なステップ名とステップグループ名を使用して、タスクまたはアクティビティが何であるかを判断します。
  • **変数の管理:**可能な限り汎用変数を使用し、変数を再利用する前にクリアする。

アーキテクチャ

アプリの定義されたスコープ、読み書きされるデータ、接続されている統合および/またはデバイス。

  • **スタンドアロン機能:**アプリは、他のアプリに依存することなく独立して動作するように設計されるべきである。これはモジュール性と保守性を促進する。
  • 必要に応じて統合する:外部データは、アプリのコンテキストを提供するために必要な場合のみ、Tulipで使用されるべきです。これにより、ソース・オブ・トゥルースを確実に維持できます。システム統合の詳細については、こちらをご覧ください。

アプリデザインのベストプラクティス

アプリをデザインするとき、ナビゲータビリティとアクセシビリティの2つは、心に留めておくべき重要な概念です。ユーザーは、アプリ内で迷ったり、途中で行き詰まったりすることなくナビゲートする必要があります。

アプリのデザインについて詳しくはこちらをご覧ください。

次のステップ

Tulipエキスパートの指導のもと、アプリの開発を始めましょう

Tulip認定のアプリビルダーになる:アプリビルダー認定ベーシックコース


お探しのものは見つかりましたか?

community.tulip.coで質問を投稿したり、他の人が同じような質問に直面していないか確認することもできます!