オンラインセミナー 今からはじめるBluemixシリーズ第 2 期 Bluemixで実現するソリューション第 1 回 モバイル ソリューション 日本アイ ビー エム株式会社ソフトウェア事業本部クラウド プラットフォーム サービス事業部 テクニカル セールス李展飛
アジェンダ モバイル関連サービス概要 API 呼び出しのモバイル サービス デモ #1 : モバイル サービスを使用したモバイル アプリ その他のモバイル サービス デモ #2 : Mobile Quality Assurance モバイル サービス まとめ 2
アジェンダ モバイル関連サービス概要 API 呼び出しのモバイル サービス デモ #1 : モバイル サービスを使用したモバイル アプリ その他のモバイル サービス デモ #2 : Mobile Quality Assurance モバイル サービス まとめ 3
モバイル関連サービス 概要 カテゴリー 名称 提供形態 説明 種類 Boilerplates Mobile Cloud IBM Android ios JavaScript向けのSDKを提供 [SDK for Node.js] + [Mobile Application Security] + [Mobile Data] + [Push] で構成されるテンプレート Runtimes SDK for Node.js IBM [Mobile Cloud]ボイラー プレートに含まれるRuntime MBaaS Mobile Application Security IBM Bluemix モバイル サービスのアクセス制御を集中管理 [Push] [Mobile Data]サービス利用における前提 MBaaS Mobile Data IBM クラウド上のデータ ストア(オブジェクト形式)を提供 クライアント アプリからは プラットフォームごとにネイティブなオブジェ クトを操作可能(SDK提供) データストアの管理や実装は隠蔽 MBaaS Mobile Quality Assurance IBM モバイル アプリのクラッシュ ログやユーザー フィードバックなどのアプリの品質指標の管理を提供 Other Push IBM 複数のモバイル プラットフォームに対して プッシュ 通知サービスを提供 MBaaS Twilio 3 rd Party モバイル アプリと電話(音声)やSMSを連携させるサー ビスを提供 MBaaS AppScan Mobile Analyzer IBM Beta Mobile Security 4 アイコン Androidモバイル アプリのソースコードをスキャンし Other セキュリティーの問題をレポート
Bluemix のモバイル サービスとは MBaaS (Mobile Backend as a Service) モバイル アプリが必要とするサーバー側の様々な機能をインターネットを通じてサービスとして提供するクラウド サービスの一種 提供される機能の例 ユーザー認証 データ保管 プッシュ通知 アプリケーション開発者はこれらの機能の API を呼び出すことで アプリケーションの一部として取り込むことができる 5
Bluemix モバイル サービス (MBaaS) の特徴 マルチ言語サポートの一貫した SDK Android Java ios Objective-C JavaScript (Web, Cordova, Worklight, Node.js) クラウド上で提供ミドルウェアのデプロイや管理は不要 3 rd パーティーのサービスも活用可能 開発やテストを支援するサービスも提供 Mobile Web 6 Node.js
2 種類のモバイル関連サービス クライアント アプリからサービスの API をコール : MBaaS Mobile Data, Push, Twilio など その他 : モバイル アプリのテスト / 開発などをサポート AppScan Mobile Analyzer RapidApps アプリ全体に機能を追加 Mobile Quality Assurance Mobile Quality Assurance 7
アジェンダ モバイル関連サービス概要 API 呼び出しのモバイル サービス デモ #1 : モバイル サービスを使用したモバイル アプリ その他のモバイル サービス デモ #2 : Mobile Quality Assurance モバイル サービス まとめ 8
Mobile Data サービス スケーラブルな Cloud データベース Cloudant ベース 異なるモバイル クライアントとデータ共有 シンプルな API/SDK 提供 Objective-C (ios), Java (Android), JavaScript 各プラットフォームごとのネイティブ ライクなオブジェクトを格納する API 例えば JavaScript のプラットフォームでは JSON オブジェクトとして CRUD 操作可能 RDB のスキーマや SQL の知識は不要 ファイル同期 オブジェクトだけでなく ファイルの共有も可能 9
10 Pushサービス Push 通知を実現 アプリが起動しなくても メッセージを通知 人や時間に応じたPush 通知を実現可能 プラットフォーム固有のAPIを隠蔽 提供 APIの種類 Mobile Cloud Services SDK Objective-C (ios), Java (Android), JavaScript REST API Bluemixコンソール 柔軟な通知先の選択 All 特定のユーザー 特定のタグを購読するグループ 特定のプラットフォーム
Mobile Application Security サービス モバイル アプリへのアクセス制御 アプリ認証 特定のアプリからのみアクセスを許可 Android のパッケージ名 ios の Bundle ID ユーザー / デバイス認証 Google アカウントまたは Worklight のユーザー認証をモバイルアプリに構成 特定のユーザー / デバイスのアクセス無効化をコンソールから制御 備考 : Push サービス Mobile Data サービスをよりセキュアに利用するための機能 11
Twilio サービス 音声 SMS VoIP サービスを付与 Voice 電話回線を用いて高品質で安全な音声通話を実現 Client (VoIP) インターネット回線を用いてデバイスから音声通話が可能 SMS アプリケーションから電話へメッセージを送受信 国内では KDDI が Twilio サービスを提供 KDDI Twilio の機能 http://twilio.kddi-web.com/function/ 12
デモ #1 : Bluemix モバイル サービスを使用した 順番予約アプリ Mobile Data Push Twilio 13
アジェンダ モバイル関連サービス概要 API 呼び出しのモバイル サービス デモ #1 : モバイル サービスを使用したモバイル アプリ API 呼び出し以外のモバイル サービス デモ #2 : Mobile Quality Assurance モバイル サービス まとめ 14
Mobile Quality Assurance (MQA) サービス モバイル アプリの品質向上 4 3 1 2 ビジネス オーナー 開発者 テスト担当者 ユーザー エンド ユーザーとのつながり ニーズの理解 情報に基づく開発方針の決定 報告の解析 実装 更新されたアプリの配布 テスト対象の入手とテスト 不具合の再現 レポート 開発側とのつながり アプリの活用 改善提案 15 1 2 3 4 端末上でのバグの報告 : アプリケーション上で直接バグやクラッシュをレポートアプリケーションの配布制御 : テスト担当者に必要なビルドを迅速に展開端末上でのフィードバック : アプリケーション上で直接フィードバックを送信フィードバック分析 : アプリ配布元と連携し品質評価とセンチメント分析を実施
MQA サービスの使い方 Bluemix コンソール MQA サービス作成 対象プラットフォームを選択 テスト対象アプリの開発環境 MQA のライブラリーを組み込み テスト用と実働用の 2 種類 MQA を有効化する設定とお決まりのコードを追加 テスト実施 Bluemix コンソール Bug レポート クラッシュ ログの確認 16
Bug の報告 : 端末をシェイクし 報告画面に遷移 画面キャプチャー上に直接フリーハンドでマークやコメント Bug 内容を文章でコメント 17
Bug レポート クラッシュ ログの確認 18
デモ #2 : Mobile Quality Assurance モバイル サービス デモで使用するアプリは 下記よりダウンロード可能です developerworks 完璧ではないモバイル アプリケーションを作成する http://www.ibm.com/developerworks/jp/mobile/library/mo-build-imperfectmobile-app/index.html 19
AppScan Mobile Analyzer (Beta) モバイル アプリのソースコードをスキャン解析し セキュリティーの問題 / 対応策を報告 AppScan のエンジンを使用 対象 :Android アプリ (apk) のみ (2014 年 11 月現在 ) アプリケーション セキュリティー検査の自動化 1 2 3 アプリケーションのスキャン 解析 ( 問題の発見 ) レポート FIX 20
( 参考 ) スキャンする問題の一覧 Activity Hijacking Android Class Loading Hijacking Android Fragment Injection Broadcast Theft Buffer Overflow Client-side SQL Injection Crash in Java Code Crash in Native Code Cross-Application Scripting Cross-Site Scripting (XSS) via Man-in-the-Middle (MiTM) Debug Flag Enabled on Release Version Debug Version Detected File Manipulation Insecure File Permission Insecure Pending Intent Phishing via Man-in-the- Middle (MiTM) Service Hijacking UI Spoofing Unsafe Reflection Weak Random Number Generator 21
22 まとめ Bluemix モバイル サービス = MBaaS を活用して 高品質のアプリを簡単 & 迅速に開発 Bluemix モバイル サービス 開発者が容易に MBaaS にアクセスできる SDK を提供 Mobile Cloud SDK に含まれるサービス / ランタイム SDK for Node.js Mobile Data Push Mobile Application Security 3 rd パーティーのモバイル サービスも利用可能 Twilio モバイル アプリの開発やテストを支援するサービスも提供 Mobile Quality Assurance AppScan Mobile Analyzer (Beta)
Bluemix 情報の入手 Bluemix オンラインセミナー動画 資料 Bluemix の日本語チュートリアル https://www.ibm.com/developerworks/community/groups/community/bluemix-jp/ のフリートライアルに参加手順 http://www.ibm.com/developerworks/jp/bluemix/registration.html Bluemix YouTube 日本語動画リスト (Webinar 録画等 ) https://www.youtube.com/playlist?list=plcjgi3_0gf1b-dojupfdozo_w7debcld2 ハンズオン セミナー申し込み ( 無料 ) @ 渋谷 IBM Innovation Center https://www-304.ibm.com/partnerworld/wps/servlet/contenthandler/pw_frm_bpedusw_30 日本語 HP http://www-01.ibm.com/software/jp/info/bluemix/index.html Bluemix Developers Community( 英語 ) https://developer.ibm.com/bluemix/ 23
Copyright IBM Corporation 2014. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, Rational, the Rational logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others. 24
Copyright IBM Corporation 2014. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, Rational, the Rational logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others. 25
参考資料 Docs https://www.ng.bluemix.net/docs/# [Creating Apps]-[Mobile Cloud] [Services]-[Mobile Application Security], [Mobile Data], [Mobile Quality Assurance], [Push], [AppScan Mobile Analyzer] IBM Mobile Cloud Services SDK Developer Guide http://mbaas-gettingstarted.ng.bluemix.net/index.html 各プラットフォームごと (Android, ios, JavaScript など ) の SDK のガイド REST API の API Doc もあり Getting Started with Twilio https://www.twilio.com/docs DeveloperWorks Mobile devlopment Zone 記事 ( 英語 ) ポータル http://www.ibm.com/developerworks/mobile/library/?contentarea_by=mobile+develop ment DeveloperWorks Mobile devlopment ゾーン記事 ( 日本語 ) ポータル http://www.ibm.com/developerworks/jp/views/mobile/libraryview.jsp 26
参考資料 個別のサービス使用の記事 Mobile Data Mobile Data クラウド サービスを利用して Android アプリを作成する http://www.ibm.com/developerworks/jp/mobile/library/mo-android-mobiledata-app/index.html Mobile Data クラウド サービスを利用して ios アプリを作成する http://www.ibm.com/developerworks/jp/mobile/library/mo-ios-mobiledata-app/index.html Mobile Data クラウド サービスを利用した ios アプリを拡張して Worklight を統合する http://www.ibm.com/developerworks/jp/mobile/library/mo-ios-mobiledata-worklight-app/index.html ibeacon と IBM Mobile Data サービスを使用して時間とともに変化する情報を管理するアプリを構築する http://www.ibm.com/developerworks/jp/mobile/library/mo-bluemix-ibeacons/index.html Extend an Android app using the IBM Mobile Cloud service to integrate with Worklight http://www.ibm.com/developerworks/mobile/library/mo-android-mobiledata-worklight-app/index.html Build a hybrid mobile app with Cordova and the Mobile Data service http://www.ibm.com/developerworks/mobile/library/mo-cordova-md-app/index.html Push Push クラウド サービスを利用して Android アプリを拡張する http://www.ibm.com/developerworks/jp/mobile/library/mo-android-push-app/index.html 5 分以内にモバイル アプリケーションからプッシュ通知を送信する http://www.ibm.com/developerworks/jp/mobile/library/mo-push-apache-cordova-app/index.html Leverage push capabilities in hybrid mobile apps with Cordova plugins for Bluemix http://www.ibm.com/developerworks/mobile/library/mo-cordova-push-app/index.html 27
参考資料 Mobile Application Security Enhance an Android app with Google+ authentication http://www.ibm.com/developerworks/mobile/library/mo-android-googleauth-app/index.html?ca=drs- Twilio Twilio クラウド サービスを利用して Android アプリと ios アプリにテキスト メッセージング機能を追加する http://www.ibm.com/developerworks/jp/mobile/library/mo-android-twilio-app/index.html Mobile Quality Assurance 完璧ではないモバイル アプリケーションを作成する http://www.ibm.com/developerworks/jp/mobile/library/mo-build-imperfect-mobile-app/index.html Distribute mobile apps to testers over the air with IBM Mobile Quality Assurance http://www.ibm.com/developerworks/mobile/library/mo-otadistribution-mqa-app/index.html その他 上でバックエンドのクラウド サービスを作成して モバイル アプリと Web アプリを迅速に構築する http://www.ibm.com/developerworks/jp/cloud/library/cl-rapiddev-app/index.html Cloudant を使用して Bluemix 上で Famo.us モバイル アプリを自動化する http://www.ibm.com/developerworks/jp/cloud/library/cl-bluemix-famous-mobile/index.html Jumping through Hadoop: Stream Big Data video on a mobile app by integrating IBM Worklight with IBM InfoSphere BigInsights on http://www.ibm.com/developerworks/mobile/library/mo-aim1408-worklight-biginsights/index.html 28
Bluemix のライセンス モデル フリートライアル 30 日間の無償トライアル クレジット カード不要 全てのサービス およびサポートに制限なくアクセスが可能 (2014 月 11 月現在 ) Pay as you go (Web 決済 ) 必要に応じて 必要なプラットフォームやサービスを注文 & 利用 実利用量に応じた登録クレジット カードでの月次決済 柔軟な契約 いつでもキャンセル可能 無償枠を提供 競争力ある料金体系 * レート :$1 = 105 固定 2014 年 11 月現在 29 サブスクリプション PA 契約 PA Express 契約に加えて IBM クラウド サービス契約 ( CSA ) を利用した 全てのサービスを含むプラットフォームが利用可能なエンタイトルメントの購入 PAYG モデルと比較して割引きあり 柔軟な利用期間と請求方式を提供 無償枠を提供 競争力のある料金体系 月次の最低利用料金を設けてある 利用期間は事前に選択 月次の想定利用料金 と 利用期間 の組合せによる合計金額に応じた割引率を適用