次世代型アプリケーションパターンを適用せよ ~ Windows 8 業務アプリ 設計・開発の新潮流 ~

Slides:



Advertisements
Similar presentations
マイクロソフトがホスティングする拡張性に優れたサービス ベース アプリケーション プラットフォーム.
Advertisements

Microsoft VDI 事例とクラウド化. あらためて MS VDI と RDP の進化 3 Windows Server 2012 R2 の標準機能 1 platform 1 experience 4 deployment choices サーバーベースの リモートデスクトップ 旧ターミナル.
この部分こそが必 要とされている ! Runtime 自身と Expression が カバーする!
Windows Azure ハンズオン トレーニング Windows Azure Web サイト入門.
Oscar Koenders Principal Group Program Manager Microsoft Corporation
2/28/2017 1:47 AM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
D2-301 現時点の本資料は 完成版のスライドではありません。
MSON-B2 .NET Framework Web アプリケーション開発
Windows Summit /1/2017 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be.
Windows Summit /1/2017 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be.
Windows Summit /1/2017 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be.
C# Programming .NET / C# Group 検索ワードでみる C#の困り事とその対策
3/2/2017 9:01 AM © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Windows Phone アプリケーションでの データ視覚化
3/3/2017 8:49 AM © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
3/4/ :37 PM © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Expression Blend 3で始めるSilverlight 3アプリケーション開発
ParadoxのLiveScripting事情
Using connected devices in Metro style apps Metro スタイル アプリで デバイスを使用する
3/11/2017 7:02 PM © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
WindowsストアアプリをC++/CXで作る
Windows Summit /13/2017 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be.
クラウド開発の高速道路 ~Visual Studio 2010 による Windows Azure アプリケーション開発~
MIX 09 3/14/2017 9:51 PM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Microsoft Consumer Channels and Central Marketing Group
表紙です.
3/17/2017 1:49 AM © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
データはお客様に属し、かつ、コントロール可能
HP ProLiant DL980 G7 SQL Server 2008 R2 NUMA 環境 ベンチマークテスト結果報告書
ビジネスにおける オープンソースの利用価値
大学におけるクラウド活用の 最新動向と先進ソリューションの 事例
3/21/2017 3:39 AM © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Using tiles and notifications タイルと通知の使用
[コース: A1] .NET Framework の基礎
Windows Summit /6/2017 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be.
Windows Summit /8/2017 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be.
Windows Azure - 今やるWindows ストアLOB アプリ開発のための設計手法
Windows Summit /9/2017 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be.
Microsoft Consumer Channels and Central Marketing Group
Microsoft Partner Network Office 365 社内使用ライセンスの有効化
Windows ストア アプリ 開発概要 (Windows 8.1 対応)
Microsoft Consumer Channels and Central Marketing Group
Azure Pack そして災害対策 日本マイクロソフト株式会社 エバンジェリスト 高添 修
11/9/2018 3:35 AM Windows Azure Platform ハンズオン トレーニング Windows Azure アプリケーション開発概要 ~ Windows Azure 入門編 ~ © 2007 Microsoft Corporation. All rights reserved.
11/16/ :27 AM © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Windows Summit /22/2018 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may.
Windows Summit /24/2018 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may.
Expression Blend 3で始めるSilverlight 3アプリケーション開発
Chad Siefert Senior Test Lead Microsoft Corporation
Windows Azure 通知ハブ.
12/9/ :14 AM © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
suppose to be expected to be should be
Microsoft Visual Studio 2005 Tools for
.NET Framework 3.0 概要 (旧称 : WinFX)
Windows Summit /21/2019 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be.
Windows Summit /22/2019 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be.
MIX 09 2/23/2019 1:22 PM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Max Morris Principal Program Manager Microsoft Corporation
Windows Summit /24/2019 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be.
主要関係者の特定用テンプレート Windows 10 and Office 365 導入ステップ 2/24/2019
Yochay Kiriaty Senior Technical Evangelist Microsoft® Corporation
~ 第5回 認証のためのプロキシー Web Application Proxy
Windows Summit /4/10 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be.
Craig Rowland Senior Program Manager Microsoft Corporation
Microsoft Consumer Channels and Central Marketing Group
Windows Summit 2010 © 2010 Microsoft Corporation.All rights reserved.Microsoft、Windows、Windows Vista およびその他の製品名は、米国 Microsoft Corporation の米国およびその他の国における登録商標または商標です。
Windows Summit /22/2019 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be.
MIX 09 8/2/2019 8:06 AM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
クラウドコンピューティングとWindows Azure Platform
Windows Azure メディアサービス
Presentation transcript:

次世代型アプリケーションパターンを適用せよ ~ Windows 8 業務アプリ 設計・開発の新潮流 ~ 日本マイクロソフト株式会社 デベロッパー & プラットフォーム統括本部 エバンジェリスト 佐藤 直樹 エバンジェリスト 鈴木 章太郎

Agenda デバイス + クラウド 時代の  アーキテクトの役割 適用にあたっての検討 まとめ

自己紹介 佐藤 直樹 (@nksato) 日本マイクロソフト株式会社 エバンジェリスト  エバンジェリスト 業務アプリの Windows 8 (WinRT)対応推進 経歴: 2000年7月 マイクロソフトに入社。コンサルタントとしてソフトウェア開発 会社、SI会社などに対して .NET でのアーキテクチャ構築支援、開発プロ ジェクト支援などを担当。2003年よりエバンジェリストとして .NET、 Visual Studio、Windows クライアント、Windows Server、Windows Azure などマイクロソフトプラットフォーム全般の技術啓発を担当。

Wipse モバイル x クラウド部会長(’11 ~) 2005-2012 早稲田大学大学院非常勤講師、 テクニカルエバンジェリスト http://blogs.msdn.com/b/shosuz MTC アーキテクト http://www.microsoft.com/ja-jp/business/mtc/ads.aspx 呟きネタは主に、Windows、Windows Azure、Windows Phone, RIA, HTML5, MVVM,   iOS/Android x Windows Azure 連携, Guitar … 等 ASPIC 執行役員 (‘05 ~) Wipse モバイル x クラウド部会長(’11 ~) 2005-2012 早稲田大学大学院非常勤講師、 2008-2010 中央大学非常勤講師、 2013- 東京工業大学非常勤講師 Microsoft 軽音楽部広報担当(Guitar/Keyboard)

新たなアプリケーションパターン 「モダンアプリケーション」 モビリティ ソーシャル ビックデータ クラウド クライアント サービス デバイス + サーバー 従来型のパターン (Established Patterns) 次世代型のパターン (Emerging Patterns)

+ + モダンアプリケーションの必然性 既存の アプリケーション “By 2016, more than 50% of application modernization efforts will address business demand for enhanced functionality to legacy applications, not cost reduction.” GARTNER ALLIE YOUNG, PATRICK SULLIVAN RESEARCH VP + + デバイス データ クラウド 既存の アプリケーション

モダンアプリケーションの構成要素 オープン 拡張性 柔軟性 俊敏性 信頼性 弾力性 マルチデバイス クラウド データ連携

アーキテクトの検討事項 配置 収益化 制約 他 マルチデバイス クラウド データ連携 制約事項、 アプリケーションアーキテクチャーの視点 商流の視点

マルチデバイス対応の2つのアプローチ ネイティブ Web アプリ アプリ On-Premise Windows Server Cloud (マルチ デバイス 対応) ネイティブ アプリ (Windows Store apps, iOS apps, Android apps) クロス デバイス (PC, Phone Tablet) クロス プラットフォーム (iOS, Android) On-Premise Windows Server Cloud Windows Azure

技術の選択

Windows 8 プラットフォーム WinRT Apps Desktop Apps XAML HTML5 CSS3 HTML JavaScript C C++ C# VB C C++ C# VB JavaScript WinRT API 通信&データ グラフィック& メディア デバイス& 印刷 アプリケーション モデル IE Win32 .NET Silverlight Windows コア OS サービス

WinRT API User interface Devices Graphics and media 11/22/2018 WinRT API 8.1 新規 8 8.1 更新 User interface Portable Sensors Playback Capture Printing SVG Canvas Local storage SMS Streams Background transfer Syndication Networking XML and JSON Skydrive Live tiles and toast Accessibility Data binding Application services Threading/timers Memory management Globalization Cryptography Xbox Live Bluetooth USB HID Wi-Fi direct Point of service 3D printing Scanning WebGL HTTP Contacts Appoint-ments PDF Speech synthesis Diagnostics Geo-location Proximity Direct3D Direct2D Direct Write PlayTo Contracts Bing Azure Mobile HTML5/CSS XAML Input Controls Authentication Devices Graphics and media Communications and data Services Fundamentals © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

開発環境と特性の比較 Web ブラウザ デバイスネイティブアプリ [*] Windows 8 HTML/JavaScript C#/VB+XAML C++ + XAML iOS Objective-C Android Java Windows Phone 8 C++ + XAML, D3D Phone HTML5 アプリ メリット リーチの獲得 配置が容易 高い操作性 ハードウェア機能の利用 デメリット 操作性やハードウェア利用がブラウザ機能に限定 ブラウザの互換性 アプリとOSとの対応 デバイスへのアプリの配置 HTML/JavaScript [*] タブレットアプリとしての比較のため、Windows は WinRT Apps とする [*] ネイティブアプリを構築するミドルウェアとして、Unity, PhoneGap, Titanium 等がある [*] Xamarin + Visual Studio 2013 により C# での iOS, Android などクロス開発が可能

3つのアプリケーションパターン リーチ獲得/容易な配置の Web アプリ コンシューマ向けのネイティブアプリ 5/29/2012 3つのアプリケーションパターン リーチ獲得/容易な配置の Web アプリ イントラ、インターネットいずれのシナリオでも、マルチデバイス対応は 検討項目 コンシューマ向けのネイティブアプリ 利用者にとって使いやすい 「ネイティブアプリ」への期待が高い タブレット業務のためのネイティブアプリ Web ブラウザ デバイスネイティブアプリ Windows 8 HTML/JavaScript C#/VB+XAML C++ + XAML iOS Objective-C Android Java Windows Phone 8 C++ + XAML, D3D Phone HTML5 アプリ HTML/JavaScript © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

マルチデバイス対応のパターン モダン Web アプリケーション (Webアプリ) モダンアプリケーション (デバイスネイティブアプリ) UI サービス(REST, JSON, etc) ネイティブ向け CSS や JavaScritp系のフレームワークで最新デバイス対応 Web、ネイティブ両方で使いまわす ネイティブの UX ハード機能の利用 プッシュ通知など OS 機能との連携

マイクロソフト技術へのマッピング例 ASP.NET Web API, WCF, Windows Azure Mobile Services 5/29/2012 マイクロソフト技術へのマッピング例 WinRT のランタイムを活用。不足部分を 3rd Pary コントロールや コードライブラリ(C#, VB, JavaScript)で補う ※ Web アプリ/サービスの実行環境: 開発PCやクラウドで開発/テストを進め、本番環境のクラウド or オンプレミスに展開 <HTML + JavaScript> C#/VB/C++/XAML, HTML/JavaScript (Objective C, Java) HTML/CSS JavaScript REST, JSON, etc.. Push 通知 ASP.NET MVC ASP.NET Web API, WCF, ASP.NET SignalR Windows Azure Mobile Services Web の UI と Web の API での標準化を .NET Framework に含まれる Web 関連の技術 ASP.NET で進め、 不足部分を 3rd Party コントロールや JavaScript で補う ネイティブアプリでの認証やプッシュ通知などクロスデバイス対応のため、管理/プログラミングモデルを共通化できるバックエンドサービス(BaaS) Windows Azure Mobile Services で補う © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

おさらい - RESTful な Web サービス 一般消費者向けインターネット サービスで主流 ステートレスなプロトコル (HTTP 等) と既定の命令体系 (GET/POST/PUT/DELETE) の活用 リソースを一意に識別する URI (例: http://example.com/api/employee/12345/) http://example.com/api/employee/12345 HTTP GET/POST/PUT/DELETE JSON / ATOM {“Name” : “Shotaro Suzuki”, “Email” : “shosuz” }

ASP.NET Web API RESTful サービス構築のためのフレームワーク Get (), Put () メソッド等に該当の処理を 記述 復帰値は JSON、XML (ATOM) 等を選択 可能 OData にも対応 (例: “$top=5”, “$orderby=name”) Web API v2 属性ルーティングのサポート 例: [HttpPost("{id}/approve")] OData の拡張 $select, $expand, $batch, $value のサポート public class ValuesController : ApiController { public IEnumerable<string> Get() return new string[] { "value1", "value2" }; }   public string Get(int id) return “value”; // api/value/5 public void Post ([FromBody] string value)

ASP.NET SignalR リアルタイム/非同期/双方向通信ライブラリ クライアント - サーバー間の永続的コネクション トランスポートの自動ネゴシエーション WebSocket, Server-Sent Events, Forever Frames, Long Polling サーバーからクライアントへのプッシュや RPC 通信 1 サーバーあたり数千の接続を非同期で処理 SignalR v2 iOS / Android サポート (MonoTouch / MonoDroid (Xamarin) ポータブル .NET クライアント

特性の比較 (サービス) サービス 特長 備考 ASP.NET Web API RESTful サービス構築のためのフレームワーク XML/JSON Entity Framework 連携 新規・既存データベース連携 OData 対応 WCF Data Services REST/SOAP サービスフレームワーク 既存データベース連携 ASP.NET SignalR リアルタイム/非同期/双方向通信ライブラリ 単一ページ構成のクライアント中心実装 優れた Web UX とマルチデバイス対応 Windows Communication Foundation (WCF) REST/SOAP サービス フレームワーク 高機能サービスフレームワーク WS-* 規格ほぼすべてに対応 ASP.NET Web サービス ASMX サービス    フレームワーク 互換性

特性の比較 (データ) データ 特性 備考 SQL Server リレーショナルデータベース 各種エディションあり Windows 認証、基本認証 SQL Database Windows Azure 上の       リレーショナルデータベース スケーラブル 基本認証のみ Windows Azure Table Windows Azure 上の      キーバリューストレージ フラットな非リレーショナルテーブル キーで認証、その他方法あり Windows Azure Blob Storage Windows Azure 上の       キーバリューストレージ 巨大なバイナリを保管する SharePoint/Online 文書管理システム REST エンドポイント公開 Windows 認証 基本認証 Dynamics CRM/Online ビジネスアプリケーション その他・・・

特性の比較 実行環境 特性 備考 Windows Server オンプレミス型の汎用アプリケーションサーバー IIS、MSMQ、トランザクションマネージャ等のアプリ基盤 Windows Azure Services for Windows Server で Windows Azure Web サイト機能実現 Windows Azure Web サイト PaaS データベース連携 インスタント立ち上げ Windows Azure 仮想マシン IaaS Windows / Linux Oracle 等 各種ミドル Windows Azure Mobile Services BaaS 認証 プッシュ通知 Windows Azure クラウドサービス 大規模 スケーラブル Web ロール Worker ロール

マルチデバイス対応の2つのアプローチ ネイティブ Web アプリ アプリ On-Premise Windows Server Cloud (マルチ デバイス 対応) ネイティブ アプリ (Windows Store apps, iOS apps, Android apps) クロス デバイス (PC, Phone Tablet) クロス プラットフォーム (iOS, Android) On-Premise Windows Server Cloud Windows Azure

次世代型パターンの展開環境 デバイスとモバイル アプリケーション サービス データ、統合管理 ソーシャル Web APIs (REST, OData) データ、統合管理 ソーシャル N 層 サービス指向 Web パブリック クラウド インフラストラクチャ IaaS PaaS Data マイクロソフト アカウント

検討範囲の広がり 配置 収益化 制約 他 配置/配布方式 収益化 制約事項 マーケットプレース経由 (Windows ストア、App Store, Google Play 等) インストールプログラム、デバイスマネージメントツール デバイスへのプレインストール 収益化 従来型のパッケージ販売、SI導入 マーケットプレースの課金システム利用 制約事項 機能利用における開発者アカウントとの関連性や制約

収益化の全体像 形態 課金単位 課金方式 ライセンス販売 容量 売り切り フリーミアム トランザクション サブスクリプション 仮想アイテム Per ユーザー 広告 Per デバイス レベニューシェア

配布方法と収益化が一体化 配布方法 収益化 内容 マーケットプレイス 無償 ・サービス等のプロモーション、デモ ・広告で一部コスト回収 無償->有償 (独自課金) ・アプリの配布をマーケットプレイスで行い、ボリュームライセンス/サブスクリプション契約等は自社で課金 ・アプリにログインID等の認証を持ち、ユーザライセンス or デバイスライセンス等を独自にコントロール 無償->有償 (マーケットプレース課金) ・アプリの配布をマーケットプレースで行い、アイテム等でアプリ内課金APIにて販売 ・マーケットプレースのラインセンスモデル(ユーザーのデバイス制限など)に準ずる インストール型 ・サービス等のプロモーション、機能限定版 有償 (独自課金) ・コンテンツ単位の販売/ボリュームライセンス/サブスクリプション契約等は自社で課金

新たな前提条件や制約事項 アプリケーションとマーケットプレースとの結びつき プッシュ通知で利用する証明書やアプケーションID デバイスへのプレインストールアプリの更新配布チャネルとしてマー ケットプレースが利用 開発者アカウントは年次など一定期間で更新 など (Windows ストアアプリでの例) Windows プッシュ通知サービス (WNS) によるプッシュ通知または Live Connect サービスを利用するには、アプリのマニフェストで適切な ID 値を定義する必要があります。これらの値は、アプリ名を予約したときに Windows ストアによって作成されています。…

本日の振り返り マルチデバイス クラウド 配置 収益化 制約 他 データ連携 アプリケーションアーキテクチャーの視点 制約事項、 商流の視点

まとめ ~アーキテクトの検討事項 アプリケーションのアーキテクチャ 「モダンアプリケーション」 配布 収益化、ビジネスモデル 制約事項など マルチデバイス対応 データ連携 クラウドサービス前提 配布 マーケットプレースとしての Windows ストア インストールプログラム、デバイスマネージメントツール デバイスへのプレインストール 収益化、ビジネスモデル 従来型の販売、SI導入 マーケットプレースの課金システムの利用 制約事項など 機能利用における開発者アカウントとの関連性や制約

© 2013 Microsoft Corporation. All rights reserved © 2013 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. このプレゼンテーションは、情報提供のみを目的としています。 Microsoft は、この概要について、明示または暗示を問わず、いかなる保証も行いません。