お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 part2

34

Post on 07-Jul-2015

248 views

Category:

Technology


0 download

DESCRIPTION

11/25 に日本マイクロソフト株式会社で開催されたデスクトップ アプリ最新化セミナーにおいて弊社池原がお話させていただいた内容です。詳細については http://jp.infragistics.com をご覧ください。

TRANSCRIPT

Page 1: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2
Page 2: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

お客様が望んでいるモダンデスクトップアプリとは?

傾向と対策

インフラジスティックス・ジャパン株式会社

デベロッパーエバンジェリスト

池原大然

[email protected]

@Neri78

インフラジスティックス・ジャパン株式会社

代表取締役シニア UX アーキテクト

東賢

[email protected]

@kenazuma

Page 3: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

ここからは

Office が要件に与える影響

インフラジスティックスが提供する Office UI

Page 4: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

Officeが要件に

与える影響

Page 5: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

顧客から例示されるアプリケーション

Page 6: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

要件 標準コンポーネント

作業見積り

Office のようなリボン形式でメニューを表示できること

顧客ごとに受注レコードを展開して表示できること

複数列の並べ替えができること

Excel 2010 のようなフィルタリングができること

Excelの枠の固定を実現できること。特定の列については右に固定

セル内部において桁数表示を行うこと

Outlook のように任意にビューを切り替えられること

テンプレートのエクセルを読み込み、入力された内容をもとにExcel ファイルを出力すること

ユーザーが任意にテーブル上のレイアウトを操作し、保存・ロードできること

統一感のある外観をユーザーに提供すること

要件例

Page 7: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

要件 標準コンポーネント

作業見積り

Office のようなリボン形式でメニューを表示できること × 5

顧客ごとに受注レコードを展開して表示できること △ 3

複数列の並べ替えができること ○ 1

Excel 2010 のようなフィルタリングができること × 5

Excelの枠の固定を実現できること。特定の列については右に固定 × 5

セル内部において桁数表示を行うこと ○ 1

Outlook のように任意にビューを切り替えられること × 5テンプレートのエクセルを読み込み、入力された内容をもとにExcel ファイルを出力すること △ 3

ユーザーが任意にテーブル上のレイアウトを操作し、保存・ロードできること × 5

統一感のある外観をユーザーに提供すること △(×) 3

標準コントロール

カバーできない部分の工数が跳ね上がる今回の見積もりでは 36 (人日?)

Page 8: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2
Page 9: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

Infragisticsツール利用

要件 標準コンポーネント

作業見積り

Office のようなリボン形式でメニューを表示できること ○ 1

顧客ごとに受注レコードを展開して表示できること ○ 1

複数列の並べ替えができること ○ 1

Excel 2010 のようなフィルタリングができること ○ 1

Excelの枠の固定を実現できること。特定の列については右に固定 ○ 1

セル内部において桁数表示を行うこと ○ 1

Outlook のように任意にビューを切り替えられること ○ 1テンプレートのエクセルを読み込み、入力された内容をもとにExcel ファイルを出力すること △ 3

ユーザーが任意にテーブル上のレイアウトを操作し、保存・ロードできること ○ 1

統一感のある外観をユーザーに提供すること ○ 1

コンポーネントを利用した場合の見積もり12 (人日?)= 1/3 に低減

Page 10: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

できるだけ部品をそのまま利用することによって、「作らない」ことを検討する。

そのために、標準コントロールだけでなく、多くのUIコントロールをカードとして持っておく。

既に顧客の頭の中にあるUIのイメージは標準コントロールの範囲を大幅に超えている。

Page 11: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

インフラジスティックスが

提供するOffice UIコントロール

Page 12: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

コンセプト

•圧倒的な機能セットの提供•開発生産性向上の仕組み•様々なサポートオプションの提供

生産性 ユーザビリティ 信頼性

Page 13: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

• フィルタリング• 枠の固定• グルーピング• 集計• 条件付き書式• クリップボードサポート• スパークライン

• etc

データ グリッドにおけるOffice UI 機能の提供

Page 14: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

WPFOffice UI

コントロール

Page 15: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

Office UI パターンの提供

Page 16: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

• Office 2007, 2010, 2013 形式リボンスタイル

• バックステージビューの搭載• タッチ対応デザイン• Office ライクなリボンウィンドウの提供

XamRibbon

Page 17: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

• Outlook スタイルのナビゲーションバー

• 折り畳み、展開• グループ別の表示

• バックステージビューの搭載• タッチ対応デザイン• Office ライクなリボンウィンドウの提供

XamOutlookBar

Page 18: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

• Project ライクなガントチャート

• Project XML ファイルのロード、保存

XamGanttView

Page 19: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

• Excel ピボットテーブルを実現• フラットデータ• OLAP キューブ• データスライサー• データチャートコントロールとの連動によるドリルダウン

XamPivotGrid

Page 20: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

• Outlook のスケジュールを実現

• 日、週、月表示• グループスケジュール表示• Exchange コネクター

XamSchedule

Page 21: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

• OneNote MX メニューを実現

• タッチソリューション用メニュー

XamRadialMenu

Page 22: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

継続的な

バージョンアップ

Page 23: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

最近追加された Office UI コントロール

• XamDiagram • XamSpreadSheet

Page 24: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

• Microsoft Visio のダイアグラムデザイン機能を実現

• 2タイプの項目の表現、編集• ノード(項目) –図形オブジェクト• 接続 –ノード間、あるいは点の接続をサポート

• データバインディングサポート• カスタムノードの実装サポート• 選択、切り取り、貼り付けなどのコマンドをサポート

XamDiagram

Page 25: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

• Microsoft Excel ライクなセルベーステーブルコントロール• Data Grid は行ベーステーブル

• Infragistics Excel Engine でサポートされるデータモデルを表示・編集• ≒ Excel データ (.xlsx)

• セル編集・数式・図形の表示・ズームなど、Excel で提供されている機能の一部を実装

XamSpreadSheet

Page 26: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

サポートされている機能

セルの配置 セル境界線 セル塗りつぶし

セルのインプレース編集

コマンド コンテキストメニュー

クリップボードサポート

フォントスタイル

数式バー 枠の固定 グリッド線 行列ヘッダー

行列非表示 セル、行、列の挿入・削除

サイズ変更 図形オブジェクトの表示(編集は未対応)

選択 元に戻す /

やり直し

ワークシートの背景

ズーム

今後随時拡充

Page 27: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

構成要素 単一のコントロールxamSpreadSheet

Page 28: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

コントロールの利用

• XamSpreadSheet コントロールを画面に追加

<Window

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

xmlns:ig="http://schemas.infragistics.com/xaml"

x:Class="xamSpreadSheet_1.MainWindow"

Title="MainWindow" Height="350" Width="525">

<Grid>

<ig:XamSpreadsheet/>

</Grid>

</Window>

Page 29: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

Infragistics Excel Engine を利用した既存ワークブックの読み込みと保存

• XamSpreadSheet.Workbook プロパティを利用

private void Button_Click(object sender, RoutedEventArgs e)

{// ファイルダイアログを開いて Excel ファイルをロード

OpenFileDialog diag = new OpenFileDialog();diag.Filter = "xlsx ファイル (*.xlsx)|*.xlsx";

if(diag.ShowDialog() == true)

{// ワークブックを DataContext に渡す

Workbook wb = Workbook.Load(diag.OpenFile());

this.DataContext = wb;

}

}

private void Button_Click_1(object sender, RoutedEventArgs e)

{// ファイルダイアログを開いて Excel ファイルを保存

SaveFileDialog diag = new SaveFileDialog();diag.Filter = "xlsx ファイル (*.xlsx)|*.xlsx";

if (diag.ShowDialog() == true)

{// DataContext の Workbook オブジェクトを書き出す。

(this.DataContext as Workbook).Save(diag.FileName);

}

}

<ig:XamSpreadsheet Workbook="{Binding}" Grid.Row="1"/>

Page 30: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

IGショーケース

• プロジェクトテンプレートを利用しMicrosoft Excel ライクなサンプルアプリケーションを利用

• ソースコードの参照

Page 31: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

ユーザー ニーズの変化に対応できるコンポーネント「スイート」

•圧倒的な機能セットの提供•開発生産性向上の仕組み•様々なサポートオプションの提供

生産性 ユーザビリティ 信頼性

Page 32: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

リソース

Infragistics Ultimate http://jp.infragistics.com/ULTIMATE

xamDiagram - ヘルプトピック

http://bit.ly/xamDiagramJP

xamSpreadSheet – ヘルプトピック

http://bit.ly/xamSpreadSheetJP

Page 33: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2

最高のアプリケーションを

工数を短縮し

実現する「武器」

Page 34: お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part2