Slide 1

Slide 1 text

Swift3とバックエンドサービスを使った、 サーバーレスな企業向けiOSアプリの開発⼿法 2017೥1݄20೔ NCσβΠϯˍίϯαϧςΟϯάגࣜձࣾ

Slide 2

Slide 2 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. 内容 所要時間 企業向けアプリ開発の現状と課題 10分 AppPotの概要説明 20分 Demo 40分 Demo 1 アプリの登録(管理画⾯) Demo 2 SDKの導⼊と初期化 Demo 3 モデルの作成と操作(ローカル、サーバー) Demo 4 その他の機能の紹介 Q&A 10分  予備 10分 アジェンダ

Slide 3

Slide 3 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. 企業向けアプリ開発の現場と課題

Slide 4

Slide 4 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. 企業のスマートデバイス活⽤における課題 n  アプリを多数作成したいが、コストがかかってしまう ü  アプリごとにサーバーを構築・運⽤している ü  アプリごとに同じような機能を重複して開発している n  アプリ開発のスピードが業務ニーズに追いついていない ü  アプリ以外にもサーバーの構築、開発が必要 ü  デザインのいいものがなかなか難しい n  タブレットを導⼊したが、カタログなど ごく⼀部に活⽤範囲が制限されている ü  業務で使⽤するデータのセキュリティ確保や、 既存システムとの連携の⼿法が確⽴されていない

Slide 5

Slide 5 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. 企業のスマートデバイス活⽤における課題 n  アプリを多数作成したいが、コストがかかってしまう ü  アプリごとにサーバーを構築・運⽤している ü  アプリごとに同じような機能を重複して開発している n  アプリ開発のスピードが業務ニーズに追いついていない ü  アプリ以外にもサーバーの構築、開発が必要 ü  デザインのいいものがなかなか難しい n  タブレットを導⼊したが、カタログなど ごく⼀部に活⽤範囲が制限されている ü  業務で使⽤するデータのセキュリティ確保や、 既存システムとの連携の⼿法が確⽴されていない しかし現状は どうだろう?

Slide 6

Slide 6 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. 企業向けアプリ開発の現場と課題 〜技術的観点〜

Slide 7

Slide 7 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. 全体システムでのアプリの位置付け 7 ビジネス ロジック レイヤー データ ストア DBMS NonSQL M/W プレゼンテー ション レイヤー Web Server Web PC / Smart Device 既存システムの概念図

Slide 8

Slide 8 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. 全体システムでのアプリの位置付け 8 ビジネス ロジック レイヤー データ ストア DBMS NonSQL M/W プレゼンテー ション レイヤー Web Server Web PC / Smart Device App Smart Device アプリが追加されたシステムの概念図

Slide 9

Slide 9 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. 既存システムに対する影響度 9 ビジネス ロジック レイヤー データ ストア DBMS NonSQL M/W プレゼンテー ション レイヤー Web Server Web PC / Smart Device App Smart Device アプリが追加されたシステムの概念図 影響の 度合い 影響の 度合い 影響の 度合い 影響の 度合い

Slide 10

Slide 10 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. アプリという新しい要素の追加による影響 10 ビジネス ロジック レイヤー データ ストア DBMS NonSQL M/W プレゼンテー ション レイヤー Web Server Web PC / Smart Device App Smart Device アプリが追加されたシステムの概念図 影響の 度合い • iOS/Androidという新しい技術 • 膨⼤なライブラリー(Swiftよりこちらの知識がもっと ⼤事かも?) • 不慣れな設計パラダイム • 変化の速度が速い • 経験豊富な⼈材が少ない(特に、SIの経験者とアプリ 開発者は重ならない場合が多い) • 設計・⽂書・協業に対するベストプラクティスの不在 • 動画・⾳声・画像など、マルチメディアファイルを取 り扱うことが多い。 • 多様な端末環境 • 端末のセンサーとのやりとりが必要が場合が多い。

Slide 11

Slide 11 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. プレゼンテーションレイヤーに対する影響 11 ビジネス ロジック レイヤー データ ストア DBMS NonSQL M/W プレゼンテー ション レイヤー Web Server Web PC / Smart Device App Smart Device アプリが追加されたシステムの概念図 影響の 度合い • JSON、Restなど、⽐較新しい技術の採⽤ (Webサービス等、既存のAPIの使⽤も可能) • 既存のWebアプリとの共存問題が⽣じる(I/F の粒度が異なる場合がある) • 認証⽅式・セッションの有効期間などの設定 が異なる場合がある

Slide 12

Slide 12 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. ビジネスロジック・ストレージに対する影響 12 ビジネス ロジック レイヤー データ ストア DBMS NonSQL M/W プレゼンテー ション レイヤー Web Server Web PC / Smart Device App Smart Device アプリが追加されたシステムの概念図 影響の 度合い • Restなど、⽐較新しい技術の採⽤ (Webサービス等、既存のAPIの使⽤も 可能) • 既存のWebアプリとの共存問題が⽣じ る(I/Fの粒度が異なる場合がある) • セッションの有効期間などの設定が異 なる場合がある • I/Fの粒度の差による修正が⽣じ る • アプリ運⽤に関するデータが追加 される

Slide 13

Slide 13 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. 追加で考慮が必要な要素(パッケージと外部サービス) 13 ビジネス ロジック レイヤー データ ストア DBMS NonSQL M/W プレゼンテー ション レイヤー Web Server App Smart Device MDM APNS APNS AppStore 企業システム 外部連携 審査ガイドライン及び審査期間の考慮 iTunes Connect Apple Developer Program MAM •  端末の保護 •  通信の保護 •  データの保護

Slide 14

Slide 14 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. 追加で考慮が必要な要素(パッケージと外部サービス) 14 ビジネス ロジック レイヤー データ ストア DBMS NonSQL M/W プレゼンテー ション レイヤー Web Server App Smart Device MDM APNS APNS AppStore 企業システム 外部連携 審査ガイドライン及び審査期間の考慮 iTunes Connect Apple Developer Program MAM •  端末の保護 •  通信の保護 •  データの保護 複数のアプリが 必要になったら?

Slide 15

Slide 15 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. 追加で考慮が必要な要素(パッケージと外部サービス) 15 APNS AppStore iTunes Connect ビジネス ロジック レイヤー データ ストア DBMS NonSQL M/W プレゼン テーション レイヤー Web Server App APNS 複数のアプリが あるシステム MDM MAM 企業システム ビジネス ロジック レイヤー データ ストア DBMS NonSQL M/W プレゼン テーション レイヤー Web Server App APNS

Slide 16

Slide 16 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. アプリ バックエンド サーバー アプリを含む企業システムの理想的なアーキテクチャー 16 APNS AppStore iTunes Connect App MDM MAM 企業システム App App 既存システム アプリ 専⽤DB アプリ共通機能 アプリ共通機能 アプリ共通機能 既存システム 既存システム 外部システム

Slide 17

Slide 17 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. アプリの基本的なアーキテクチャー アプリ View Controller Model いわば、MVCモデル

Slide 18

Slide 18 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. しかし現実は・・・ アプリ View Controller Model Networ king Keychain Local Storage APNS 受信 データ 保護 データ キャッシュ エラー 処理 認証・認可 データ 同期 オフライン 対応 フォーマット 変換 サーバー ⾊々

Slide 19

Slide 19 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. それで、もしこれらの殆どを無視することができれば? アプリ View Controller Model Networ king Keychain Local Storage APNS 受信 データ 保護 データ キャッシュ エラー 処理 認証・認可 データ 同期 オフライン 対応 型 変換 サーバー ⾊々

Slide 20

Slide 20 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. それで、もしこれらの殆どを無視することができれば? アプリ View Controller Model Networ king Keychain Local Storage APNS 受信 データ 保護 データ キャッシュ エラー 処理 認証・認可 データ 同期 オフライン 対応 型 変換 サーバー ⾊々 できます!!

Slide 21

Slide 21 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. それで、もしこれらの殆どを無視することができれば? アプリ View Controller Model Networ king Keychain Local Storage APNS 受信 データ 保護 データ キャッシュ エラー 処理 認証・認可 データ 同期 オフライン 対応 型 変換 サーバー ⾊々 ちなみに、なんで ここは残しているか?

Slide 22

Slide 22 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. AppPotとは

Slide 23

Slide 23 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. 特徴③ 特徴② AppPotとは 企業のスマートデバイス活⽤を⽀援する モバイルアプリの開発/運⽤プラットフォームです 既存の社内システムとの 連携が容易 サーバー開発不要 企業で必要な機能を 実装済み 特徴① ίετ࡟ݮº։ൃظؒ୹ॖ

Slide 24

Slide 24 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. AppPotが提供する主な機能 ①  企業単位のグループ、ユーザー及びアプリの権限管理 ②  ログイン/ログアウトなどの認証 (LDAP / Active Directory / Google Apps連携も可能) ③  端末とサーバー間のデータの同期 ④  アプリの使⽤状況、エラーの情報収集 ⑤  端末内のデータの暗号化 ⑥  プッシュメッセージの送受信(対象・時間指定可能) ⑦  アプリからのEメールの送受信 ⑧  ファイルの送受信 ⑨  他システムとの連携(データベース、Webサービス他)

Slide 25

Slide 25 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. AppPotの導⼊効果 サーバー開発が不要でモバイルアプリの導⼊のリードタイム、コスト削減 ユーザー 部門 IT部門 モバイルアプリ エンジニア サーバーアプリ エンジニア インフラ エンジニア アプリ作成依頼 作業依頼 データセンター を借りなきゃ! セキュリティの設計は 時間がかかる。 どうやって基幹システ ムに接続するか 画⾯は早くできたん だけど・・・ 2ヶ⽉以内に マーケティング⽤ のアプリが必要! 2ヶ⽉は 無理です ユーザー部門 IT部門 モバイルアプリ エンジニア アプリ作成依頼 作業依頼 画⾯だけの開発 であれば、すぐ できます 2ヶ⽉以内に マーケティング⽤の アプリが必要! OKです 従来型のアプリ開発 AppPotを使⽤したアプリ開発

Slide 26

Slide 26 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. クラウド AppPotの概要アーキテクチャ AppPotサーバー Systems 既存システム群 Systems 他システム データ コネク ター         認証・認可 データ管理 プッシュ メッセージ ロギング 管理コンソール データベース、 Webサービス等 アプリ配布 デバイス管理 AppPot DB Client Application SDK Client Application SDK Client Application SDK Client Application AppPot SDK AppPot機能 提供範囲 AppPot機能 提供範囲外 スマートフォン/タブレット システム連 携 システム連携 API MDM 凡例 ユーザー管理 アプリ管理

Slide 27

Slide 27 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. 企業向けに特化したバックエンドサービス 企業システムとの連携 ActiveDirectoryや Googleアカウントとの 認証の連携、既存のDB やWebサービスなど他 システム連携など企業 システムで必要な機能 が⽤意されている DBはNoSQLではなく あえてRDBMSを採⽤ 複雑なJoinなど業務シ ステムのデータを扱う のに⼗分な機能がある クラウドでもオンプレ ミスでも企業のポリ シーに合わせて選択可 能 オンプレミスからクラ ウドへの移⾏も可能

Slide 28

Slide 28 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. AppPotデモ 管理画面でアプリを登録

Slide 29

Slide 29 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. アプリ開発の前の準備 ①  アカウントの登録 •  http://apppot.jpから申し込む ②  ユーザーグループ、ユーザーの登録 •  LDAP、ActiveDirectoryと連携可能 ③  アプリの登録 •  appId, Versionなどの情報を登録 •  必要に応じてAPNS⽤の証明書をアップロード •  アプリを使⽤できるユーザーグループの指定 n  デモ •  管理画⾯を参照 •  各メニューの紹介

Slide 30

Slide 30 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. AppPotデモ AppPotのSDKを導入

Slide 31

Slide 31 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. AppPot SDK for Swiftを導⼊ ①  新しいプロジェクトを作成し、あるいは既存プロジェクトにSDK を追加する •  「AppPotSDKforSwift.framework」をプロジェクトターゲットのGeneralタブの Embedded Binaryに追加する。

Slide 32

Slide 32 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. AppPot SDK for Swiftを導⼊ ②  ターゲットのCapibilitiesタブにて下図のようにKeyChain Sharingをオンに設定する ここ!

Slide 33

Slide 33 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. ③  AppPotの機能を使いたいコードの先頭にてAppPotSDKforSwift をimportする AppPot SDK for Swiftを導⼊ ここ!

Slide 34

Slide 34 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. ③  AppPotの機能を使いたいコードの先頭にてAppPotSDKforSwift をimportする AppPot SDK for Swiftを導⼊ ここ! 終了!

Slide 35

Slide 35 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. n  もし、SSLを使⽤しないなら、特定URLに対して⾮SSL通信を許可 する設定をする •  Info.plistに下記の設定を追加する NSAppTransportSecurity NSExceptionDomains trial.apppot.net NSTemporaryExceptionAllowsInsecureHTTPLoads 参考:その他の設定

Slide 36

Slide 36 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. AppPotデモ AppPot SDKを利用した開発

Slide 37

Slide 37 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. n  アプリはいつでも修正・機能追加ができます n  サーバー側の開発は不要です 開発の基本的な流れ ①アプリの 初期設定 ②モデルクラス の定義 ③アプリとサー バーの初期化 ④アプリの実装 必要に応じて修正 リリース

Slide 38

Slide 38 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. ①アプリの初期設定 n  AppDelegate.swiftに下記のコードを追加する 管理画⾯で登録した アプリの情報を設定 その他、アプリで使 う機能を指定

Slide 39

Slide 39 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. ②モデルクラスの定義 n  全てのモデルクラスはAPObjectを継承 n  各クラスを定義する際にクラスの振る舞いも定義する •  configureModelというファンクションの中で必要な振る舞いを指定 n  つまり、クラス定義をしておけばその後はモデルの詳細を気にせず使 うことができる n  モデルクラスに指定できる項⽬ •  データの保存場所:ローカル、サーバー、両⽅ •  データの権限:ユーザー、グループ、全体 •  排他制御の有無 •  ⾃動更新の有無と更新間隔、⾃動更新対象データの範囲 •  データ保持期間 •  暗号化の有無と暗号化対象の属性

Slide 40

Slide 40 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. ②モデルクラスの定義 ここ!

Slide 41

Slide 41 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. ③アプリとサーバーの初期化 n  recreateDatabaseのパラメーターをtrueにしてprepareToUse関 数を呼び出す(その後はfalseに変える) ここ!

Slide 42

Slide 42 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. ③アプリとサーバーの初期化 n  初期化作業の詳細 AppPot サーバー DB DB

Slide 43

Slide 43 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. ③アプリとサーバーの初期化 n  モデルクラスを変更したらrecreateDatabaseのパラメーターを trueにしてもう⼀回実⾏するだけ! ここ!

Slide 44

Slide 44 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. ④アプリの実装 アプリ View Controller Model Networ king Keychain Local Storage APNS 受信 データ 保護 データ キャッシュ エラー 処理 認証・認可 データ 同期 オフライン 対応 型 変換 サーバー ⾊々

Slide 45

Slide 45 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. AppPotデモ 実はすごい、モデルクラスの力!!

Slide 46

Slide 46 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. ②モデルクラスの定義 ここ!

Slide 47

Slide 47 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. n  persistentType = APPersistentServerOnly •  ⽣成したデータはサーバーだけに保存される 参考:モデルクラス定義の意味 AppPot サーバー Task

Slide 48

Slide 48 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. n  persistentType = APPersistentLocalOnly •  ⽣成したデータは端末だけに保存される 参考:モデルクラス定義の意味 AppPot サーバー Task

Slide 49

Slide 49 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. n  persistentType = APPersistentLocalAndServer •  ⽣成したデータは端末とサーバーの両⽅に保存される 参考:モデルクラス定義の意味 AppPot サーバー Task Task

Slide 50

Slide 50 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. n  persistentType = APPersistentLocalAndServer n  autoRefresh = true •  ⽣成したデータは端末とサーバーの両⽅に保存される •  サーバーと端末の情報が⾃動的に同期される 参考:モデルクラス定義の意味 AppPot サーバー Task Task 同期

Slide 51

Slide 51 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. n  オフライン対応① •  オフラインの場合は端末に保持したキャッシュデータを使⽤する 参考:モデルクラス定義の意味 AppPot サーバー Task Task オフライン データの同期 オンライン キャッシュの使用

Slide 52

Slide 52 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. キュー n  オフライン対応② •  サーバーに保存すべきデータを適切にサーバーに送信できなかった場合、 失敗したメッセージはアプリ内に保持され、定期的に再送される 参考:モデルクラス定義の意味 AppPot サーバー Task Task Task

Slide 53

Slide 53 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. モデルクラスによってカーバーできる機能 n  サーバーとのやりとり •  ネットワーク処理 •  JSONとオブジェクト間の変換処理 •  オフライン時の対応 n  ローカルデータベースのハンドリング n  エラー処理、失敗時のリトライ n  データの同期 n  データの暗号化・復号化処理 n  データの排他制御・トランザクション管理 n  権限管理 n  ライフサイクル管理

Slide 54

Slide 54 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. 参考:モデルクラスに対するクエリ実⾏ n  APQueryというクラスでほぼSQLと同様の機能を提供 n  端末やサーバーというデータの保存場所を気にせず同じ書き⽅でデータ の取得が可能 n  ページング、データキャッシュー、取得件数指定、グルーピング、ソー ティングなどの機能でパフォーマンス向上

Slide 55

Slide 55 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. AppPotデモ モデルクラス以外の便利な必須機能

Slide 56

Slide 56 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. AppPot SDKが提供する機能 n  ログイン・ログアウト n  APNS受信のためのデバイス登録 n  動的に変更可能なモニタリン グ・ローギング n  ユーザーグループ管理 n  ユーザー管理 n  権限⼀覧取得 n  ファイル送受信 n  プッシュ〜メッセージ送信 n  メール送信 n  データベース作成・再作成

Slide 57

Slide 57 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. サマリー

Slide 58

Slide 58 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. アプリ開発をより⾼速・簡単に、しかしUXは最⾼に!! アプリ View Controller Model Networ king Keychain Local Storage APNS 受信 データ 保護 データ キャッシュ エラー 処理 認証・認可 データ 同期 オフライン 対応 型 変換 サーバー ⾊々

Slide 59

Slide 59 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. 企業向けだけではない!:⼀般的なアプリの開発サイクル 59 企画 デザイン 実装 リリース 1〜3ヶ月 分析 破棄 体制: 企画者1名、デザイナー1名、 開発者1〜2名

Slide 60

Slide 60 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. ⼀般的なアプリの開発サイクル 60 企画 デザイン 実装 リリース 1〜2ヶ月 分析 破棄 体制: 企画者1名、デザイナー1名、 開発者1〜2名 こんなもの

Slide 61

Slide 61 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. ⼀般的なアプリの開発サイクル 61 企画 デザイン 実装 リリース 1〜3ヶ月 分析 破棄 体制: 企画者1名、デザイナー1名、 開発者1〜2名 密なコラボ ワンチーム 密なコラボ、 ワンチーム

Slide 62

Slide 62 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. ⼀般的なアプリの開発サイクル 62 企画 デザイン 実装 リリース 1〜2ヶ月 分析 破棄 体制: 企画者1名、デザイナー1名、 開発者1〜2名 •  完成度よりはスピード •  Try & Error •  反復

Slide 63

Slide 63 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. ⼀般的なアプリの開発サイクル 63 企画 デザイン 実装 リリース 1〜3ヶ月 分析 破棄 体制: 企画者1名、デザイナー1名、 開発者1〜2名 •  反応分析 •  フィードバック •  改善 or 破棄

Slide 64

Slide 64 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. AppPotがあればこのプロセスもより⾼速にできます! 64 企画 デザイン 実装 リリース 1〜3ヶ月 分析 破棄 体制: 企画者1名、デザイナー1名、 開発者1〜2名 AppPot 全対サイクルをより ⾼速に!!!

Slide 65

Slide 65 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. Q&A

Slide 66

Slide 66 text

Copyright ©2016, NC Design & Consulting Co., Ltd. All rights reserved. AppPotの情報をフォローしてください! @app_pot @royskimJP @NextConceptDC セミナーの情報や、AppPotの新機能のアナウンスなどSNSを使って ⾏っています。ぜひフォローしてください!

Slide 67

Slide 67 text

お問合わせ [email protected]