テクノロジの変遷と時代背景 ~マイクロソフトの...
TRANSCRIPT
SESSION-1
1993年 Windows 3.1 で COM リリース
アプリケーション間の連携技術(OLE)
Office 製品のソフトウェア部品、統合化技術(COM)
1994年 Windows NT 3.5 の32ビット版 COM リリース
1995年 Windows 95 リリース、IE 3.0
インターネット対応ソフトウェア部品(ActiveX)
1996年 Windows NT 4.0で DCOM リリース
分散環境でのアプリケーション間連携
1996年 Microsoft Transaction Server (MTS) 1.0 リリース
分散環境でのトランザクション処理
1997年 IE 4.0、Active Server Pages、Active Data Object(OLE DB) による3階層アーキテクチャ(WindowsDNA)
1998年 MTS 2.0 リリース
1998年に COM+ 1.0 (COM+ 98)リリース
Windows 2000、MTS と COM の統合
3階層アーキテクチャ +(ビジネスプロセス統合、レガシー統合、負荷分散、マイニングなど)(Windows DNA 2000)
2001年 COM+ 1.5 リリース
Windows XP、Windows Server 2003
VBS
Sub Button1_Click ()Video1.Play
End Sub
ドキュメント(HTML ビューワ)
ActiveX コントロール(例: Windows Media Player)
ActiveX スクリプトエンジン- VBS- JavaScript- その他のスクリプト言語
再生
部品提供者
ソリューション
提供者
エンドユーザ
生産性開発自由度
HTMLOffice
VB C++, Java
VBS, JavaScript
Standard Protocols: DCOM (over TCP/IP, HTTP, IPX/SPX, Falcon, etc)
Active DesktopActive Desktop
HTML
Scripting
Components
DCOM
Services
Code Download
Naming
HTML
Scripting
Components
Services
Security / Privacy
Active ServerActive Server
Mgmt / Class Store
ActiveX ServerEngine
http://www.dcc.com/equipment/default.asp
Client Server
HTTP “GET”
Denali Climbing Company
Page
VB Script
サーバ部品の呼び出し
ActiveXData
Object
HTTP response
http://www.dcc.com/equipment/catalog_type.asp? ProductType=rock+shoes
ページの生成、処理
DesktopWork-group
Depart-ment
DivisionEnter-prise
1 user 2 users 100s 1,000s 10,000s
Internet
100,000s
Shared data
Connections
Security
Context
Multithread
Multithreading
Load balancing
Multinode
Msg. queuing
Multisite
High avail.
Presentation Presentation
Application
Presentation
Application
Data Mgmt.
Application
Data Mgmt. Data Mgmt.
Data Mgmt.
Presentation
Data Mgmt.
柔軟性のある配置の選択肢
Application Application
Clien
tS
erv
er
InteroperabilityDevelopment
Environment
Integrated Storage
Business Process
User Interface & Navigation
Pages Code
Islands of
Data
Warehouse
In the Sky
Object
Environment
Transaction
Environment
Distributed Centralized
Mobile Connected
An
arch
yD
ictato
rship
Ma
ny
Sm
all
Ma
chin
es
Few
Hu
ge
Ma
chin
es
CO
M再利用可能コンポーネントを使った
3階層型アプリケーションアプリケーション
Integrated Storage
Business Process
User Interface & Navigation
File
System
Data
Base
Store
Other
Stores
Web
Server
Trans-
actions
Message
QueuingScripting
Basic
HTML
Dynamic
HTMLForms Native
Tools
Management
Directory
Security
Base
Services
Networking
Distributed
Operating
Environment
HTML/Script
Authoring
Rapid
Application
Development
Component
Creation
Team
Development
Order(Requires)
Shipping(Requires)
Audit(Requires
New)
Transaction T2
Transaction T1
Required常にトランザクションを要求する。クライアントがコンテキストを持てばそれを共有する。なければ、新規に作成する。
Supported
Requires New
トランザクションを考慮しない。クライアントがコンテキストを持てばそれを使用し、なければ、トランザクションは使用しない。
常にトランザクションを使用する。クライアントのコンテキストを共有しないで、常に新規に作成する。
常にトランザクションを使用しない。Not Supported
[Transaction]
public class Account : ServicedComponent
{
[AutoComplete]
public void Debit(int amount)
{
// Do some Db work
// throw exception to abort transaction
// otherwise transaction commits
}
}
class client
{
public static int Main()
{
Account accountX = new Account();
accountX.Debit(100);
return 0;
}
}
COM/.NET アプリケーション
ADO/ADO.NET
MTS/COM+/.NET
MS-DTC
SQL 文
RDB のロック、ログ管理
属性ベースプログラミング(transaction=required
)
トランザクションの管理
Framework
リソースの参加
パッケージへの入り口で認証チェック
クライアントからの呼び出しはクライアント ID を持つ
パッケージからの呼び出しはパッケージ ID を持つ
ロールベースのアクセス制御
パッケージ、インターフェイス
コンポーネント、メソッド
より詳細なチェックは実装コード内で行う
権限の移譲
監査
USER-ID == Joe
USER-ID == Jane
Payroll Package(from Acme & Sons
Software Inc)USER-ID == PAY
Table 2(user == PAY
Table 1(user == HR
HR Package(from Fly-By-
Night Software)USER-ID == HR
F
Joe’sOK
Jane’sNot OK
B
D
C
HR’s OK
E
A
トランザクション
ダイナミックロードバランシング
キューイング
疎結合イベント
スケジューラ
プールされたリソースオブジェクト
インメモリデータベース
自動データバインディング
コンカレンシ
コンテキスト
セキュリティ
管理
2000年 .NET 構想を発表
2002年 .NET Framework 1.0 (COM+ 99、COM+ 2.0)リリース
Visual Studio .NET 2002
2003年 .NET Framework 1.1 、Visual Studio .NET 2003 に更新
2004年 Software Factories 発表
2005年 C# JIS X 3015 に制定
2005年 .NET Framework 2.0 リリース
Visual Studio 2005
C# 2.0(ジェネリック、匿名メソッド、パーシャルクラス、イテレータ)
2006年 .NET Framework 3.0 リリース
Windows Vista に同梱
WPF、WCF、WF、CardSpace
2008年 .NET Framework 3.5 リリース
Visual Studio 2008
ASP.NET AJAX、 LINQ、 IronPython
C# 3.0(ラムダ式、拡張メソッド、型推論、パーシャルメソッド、 Expression 木)
2008年以降 .NET Framework 関係のリリース予定
ADO.NET Entity Framework、Astoria、Jasper、PLINQ…
SilverLight 1.1、DLR、 IronRuby、Managed VB、Managed JavaScript
•プロセスの効率化•Web との統合•EAI
ビジネストランザクション・リレーション
ビジネスプロセス統合
•情報発信•情報収集•B2C•B2B•新しい販売チャネル
Web コンテンツE-Commerce
第一の飛躍 第二の飛躍
•インターネットワイドの統合•業務プロセス、ビジネスモデルの変化•企業・市場を超えた価値の創造•バックエンドでのプロセスを統合するトランザクション
価
値
自律・分散・協調型価値増大・収穫逓増
ユーザー中心/戦略的アウトソーシング俊敏性/流動性
リッチクライアントマルチ/ロングトランザクション
マルチプラットフォームアプリケーションの水平/ハブ&スポーク統合
インターネット標準セキュリティXMLによるデータ交換
インターネットディレクトリからサービス発見ビジネスプロセスフレームワーク
メッセージ内容によるルーティングサービス(機能)の再利用
Web サイト間のロードバランシング可用性・信頼性・管理容易性
中央集権型コスト削減
ベンダ中心/抱え込みベストプラクティス/固定化
シンクライアント2相コミットトランザクション
単一プラットフォームアプリケーションの垂直/階層統合プラットフォーム独自セキュリティ
レコード、オブジェクトの形によるデータ交換ドメイン内ディレクトリからアプリケーション発見
画面遷移フレームワークオブジェクトによるルーティング
実装の再利用物理ノードのロードバランシング
スケーラビリティ・応答性
旅行サイト
旅行会社
旅行会社
旅行会社
サービス集約
VPN
EDI
XML
予約販売
在庫配送
決済
認証パーソナライズ
SOAPSOAP SOAP
SOAP
ホテル予約サイト
DOS から C/S への移行
C/S から Web への移行
移行
の困
難さ
、複
雑化
DOSCharacter Based
Single application
Client/Server Paradigm
Event BasedGraphical UI
Random AccessInterapp
communicationon same machine
Web ParadigmXML EnabledDisconnected
InterconnectedMessage Based
Web Service EnabledScalable
DistributableAggregated User
XPComposeable User
Web BasedMultiple Device
TargetsBroader Reach
Work Flow EnabledInter Organization
Distributable Security
Meta Data DrivenEvent Based
InterappCommunication
across the internet
Data
Schema
Services
Invocation
Framework
Objects
Classes
Methods
Calls
Web
XML
XSD
WSDL
ApplicationConcepts
SOAP
移植性よりもプログラミングモデルが重要開発の単純化
共通のプログラミングモデルスタンドアロン/Web ユーザインターフェイス
同期呼び出し/非同期呼び出し(メッセージ)
表形式/木構造データ
接続/非接続
…
System
System.Data System.Xml
System.Web
Design
ADO
SQLTypes
SQL
GlobalizationDiagnostics
ConfigurationCollections
ResourcesReflection
NetIO
ThreadingText
ServiceProcessSecurity Runtime
InteropServicesRemotingSerialization
XPath
XSLT Serialization
Configuration SessionState
Caching Security
ServicesDescription
DiscoveryProtocols
UIHtmlControls
WebControls
System.Drawing
Imaging
Drawing2D
Text
Printing
System.WinFormsDesign ComponentModel
UI コンポーネント
UI プロセスコンポーネント
データアクセスコンポーネント
ユーザーデバイス
サービス エージェント
運用管理
セキュリティ
通信
サービスインターフェイス
内部のデータソース
外部のサービスエージェント
メッセージ インフラストラクチャ
業務プロセスコンポーネント
業務コンポーネント
業務エンティティ
外部のサービス
ネットワークプロトコル
分散オブジェクトサービス
アーキテクチャパターン
言語ランタイム/クラスライブラリ
業務プロセスユースケース
アプリケーション
2002 -
2002-
WF/BPEL
LOB, ERP, SCM, CRM, KM, SaaS…)
.NET Framework/CLR
ASP.NET/DataSet…
1996- WCF/ASP.NET
SOAP/HTTP
基本ソフト(OS、下位ネットワーク、ストレージモデル、管理…)
フレームワーク
2006-
1996-
Strategic Value
IntranetEntry Point
ContentIntegration
WorkplaceIntegration
MarketplaceIntegration
Low High
Level 2
Level 3
Level 4
Additional Features• Internet info• Enterprise info(various types)• Adv. Search • Directories • Personalization
Features• Company Info• Misc. Content• Search• Links
Additional Features• Role-based Worksets
• Transactions• Collaboration • Workflows• Ad Hoc projects• Cross-functionalSystems
Additional Features• ProcurementSupport• Supply-ChainManagement• E-marketplaceIntegration• AdvancedPersonalization• EDI, XML, Java• Intra/Extra/Inter-net Contiguous
Level 1
Content
Workplace
Marketplace
製品ポジションの発展
レガシーアプリケーションメインフレーム、データベース
ホスティングWeb サービス
製造メーカサプライアビジネス
コンシューマ
ビジネスロジック業務プロセス
Personalizationユーザ統合マルチデバイスContext-aware
ダイナミックなビジネス統合SSO
アプリケーションサーバ
BPM(Business Process Manager)
EIP
© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista 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.