 WinRTの話はありません
 この物語はフィクションです。
◦ 登場するアプリケーションは実際には存在しません。
 業務パッケージ
◦ 会計とかで、いろいろ分析するアプリケーション
 メリット
◦ 圧倒的なシェア。
 ほぼすべての業務PCにインストールされている
◦ お手軽VBA
◦ 超強力な分析関数
 デメリット
◦ 最大65536行(件)
◦ フィルタリングも貧弱
◦ 超自由な入力
 ぱっと見でわかりやすいUIは作りにくい
◦ 基本一人でしか使えない
 メリット
◦ 共有フォルダさえあれば、複数人で使用可能
 サーバを立てる必要が無い
◦ Accessがない環境でも、Runtimeのみの配布が可能
◦ Excelとの連係も比較的容易
◦ やっぱりお手軽VBA
◦ 帳票ツールとしても
 デメリット
◦ VBAなので、出来ることが限られる
◦ 実行速度がイマイチ
 メリット
◦ 本格的なアプリケーション作成(?)
◦ 豊富サードパーティ製コンポーネント
◦ Office連携等が楽
◦ VBAからの移行も用意
 デメリット
◦ 似非オブジェクト指向
◦ 弱い型付け
 遅延バインディング、Variant型
◦ 継ぎ足し作られてきた秘伝のソース
環境によって
選択
SQL Server
MDB(Access)
・・・・
VB6 実行ファイル
Access 一覧系帳票用
Excel 分析計算用
単票系帳票用
DB MDB(Access)
SQL Server
 顧客要求の多様化
◦ 分析結果の経年変化/細かい単位での分析/将来予測
 実行環境の多様化
◦ OS/Office
◦ Multi DBMS
 使用者の多様化
◦ 会計・事務・営業
 安易なカスタマイズ
 今までの反省を踏まえて、イチから設計見直し。
 複雑さの隠蔽
◦ UI層の分離
 CurrencyManager/IBindingList/IEditableObject
◦ DBの抽象化
 DAO Framework
 DbProviderFactory
◦ Officeとの決別
 サードパーティー帳票ツール
 計算ライブラリの自作
【参考】
とあるコンサルタントのつぶ
IBindingList
・・
・・
Business
Logic
コードビハイ
ンド
Currency
Manager
Access SQL Server
OLE DB Provider SQL Provider
Business
Logic
DB Provider
DbProviderFactory
生成
SQLGenerator
 UIの一新
◦ WPFによるインタラクティブなUIへ
 より型安全なDBアクセス
◦ LINQ to SQL
 ClickOnceによるアプリケーション配布
 アプリケーションサーバの導入
◦ DBサーバの隠蔽
 ドライバの配布
 Firewall越しのアクセス
◦ いずれはWebも
 Silverlightとか
Oracle
・・・・
IIS
Business
Logic
UI
通信のない場合
通信のある場合
UI
Business
Logic
Service
Client
Service
Interface
HTTP
通信
WCFによる自動生成
 変更は局所的に封じ込める。
 境界をしっかり決めることで、置き換えが容易に

とあるアプリの設計進化