Windows DNA: The Microsoft Application Platform for the Enterprise Carlos McKinley Microsoft Corporation Agenda DNA Explored Site Server XML & BizTalk Server Web Services.
Download
Report
Transcript Windows DNA: The Microsoft Application Platform for the Enterprise Carlos McKinley Microsoft Corporation Agenda DNA Explored Site Server XML & BizTalk Server Web Services.
Windows DNA:
The Microsoft Application Platform
for the Enterprise
Carlos McKinley
Microsoft Corporation
Agenda
DNA Explored
Site Server
XML & BizTalk Server
Web Services
Evolution To Web Services
TCP/IP: universal protocol
HTML: universal presentation
XML: universal description
Connectivity
Presentation
Programmability
Key success factors:
•Simplicity
•Standards
Browse
the Web
Program
the Web
Forthcoming Architecture
The Inter/Intra/Extranet (PTP)
Conversation
Client
Message
Bus on any
Protocol
Msg
Stores
Data
Stores
Web
Service
Web
Service
Subscribe
Web
Service
Publish
Data
Stores
Third Generation Architecture:
Program the Web
User
Web Site:
Applications
Page
HTML
Data
XML
Object COM
Devices
Web Site:
Applications
Windows DNA - The Guiding Architecture
Windows DNA is Distributed Computing
Common object model on all tiers
Language neutral
“Auto-everything” - services for scalable, reliable,
interoperable, distributed applications
Tools available today
Microsoft’s Application Platform
Value Proposition
A single, rich, fully capable platform for new
enterprise applications, with the best build and
buy flexibility
Ease and Low-cost of Development, via tools
tightly integrated with runtime environment
Plug into and re-use existing customer
investments on desktop, back-ends, development
languages and skills
Industry leading price/performance
The Target
Today,
It’s Easy to Build Robust Applications for PC’s
PC-based Department-sized distributed applications are
near ubiquitous
But, The Internet Factor.
Apps must be 24x7 – software as a service
More Reliable, More Scalable, More Secure
New apps developed and deployed as quickly as
possible
Plug into all other corporate IT assets
ROI – considering full life-cycle:
$$ for development, runtime, management
Windows DNA 2000
Next generation of building blocks for Windows
DNA applications
Windows 2000 is the Cornerstone
Rock solid, high performance platform
Integrates core Windows DNA Application Services
“Friction-free” deployment and management
Set of new and enhanced services
Richer Web applications platform
Improved integration and interoperability
E-commerce is “built-in”
Exploit Windows 2000
All expected to ship by mid 2000
Windows DNA
Presentation services
Rich client
Components
DHTML
HTML
Scripting
Win32
Thin client
Windows DNA
Business logic
Windows NT as an application server
includes best of breed services
Web
Transaction
Queuing
Security
Integrated
Write business
logic as COM
components
IIS
MSMQ
MTS
Windows DNA
Data services
Simplified programmatic access
Universal data provider
Mainframe
Presentation
services
Application
services
Directory
RDBMS
Email and
messaging
ADO
OLE DB
File system
Distributed transactions
and query processing across
multiple data stores
Windows DNA
Interoperability services
Bi-directional application, data and network interop with mainframes,
AS/400, UNIX and other platforms
Extends COM/COM+ to CICS, IMS, terminal oriented apps, Unisys, etc.
Extends MSMQ to MQSeries
Extends ODBC/OLEDB to DB2, Sybase, Oracle, VSAM
Delivers heterogeneous bi-directional data replication
Built-in extensibility via SDK
COM-XML-MSMQ
ADO-OLEDB-ODBC
Std. LAN Protocols
Application Integration
Data Integration
Network
Integration
TCP/IP and SNA
OS/390,
OS/400, UNIX
DRDA - RLIO
XA, TDS, CLI and
DB LIB
APPC, CLI-C, DPL
LU0, LU2 and
MQSeries
VSAM, DB2,
Oracle, Sybase
CICS, IMS,
MQSeries,
Terminal Apps
Windows DNA 2000
Microsoft
Microsoft
“Babylon” Commerce
Server
Microsoft
SQLServer
Microsoft
BizTalk
Server
Server
New or Enhanced:
• Application Services
• Legacy Interoperability
• E-commerce (B2C)
• Data Access/Storage
• Development Tools
• “Developer Success”
• + E-commerce (B2B)
• + Deployment and
Management
Windows 2000
Windows DNA Application Services
“Built-in” integrated applications server for
building distributed Web applications
IIS 5.0 - high performance web server
Active Server Pages
COM+ component services
Transactions
Message Queue and Queued Components
Role-based security
Network Load Balancing
High performance XML support
COM+ Key Features
COM+ makes it easier to develop, deploy, and administer
Enterprise Scale, Component-based Applications
New services
Queued components
Events
Dynamic Load Balancing
Object Pooling
CRM
Improved services
Transactions, servers,
security, administration
Interception
Improved interoperability
Unify COM and MTS for single
programming, admin model
XA, TIP, CRM
100% compatible with
existing COM and MTS
components
Same or better performance
COM+: Simple, Powerful
Programming Model
IUnknown
Context
CreateInstance
…
OK: SetComplete
…
Err: SetAbort
Attributes
Client
Server
COM+ for Serving Applications
Using
COM+ Services:
You write a “single user” component as though it were the
only user of resources
COM+ provides the rich service environment to make your
component multi-user, multi-threaded and resourcepooled.
All you have to do is:
Use your favorite COM-compliant tool and add attributes
COM+ Server Process
Application
Client
Concurrency
Security
Services...
IFoo
Server-side
Application Logic
COM+ Queued Components
Features:
Delivery of: component creation, method invocation, and life cycle
management over MSMQ queues with transactions
Benefits:
Increase application availability and resilience
Decouple application elements
Retain component programming model
IRecorder
Client
Application
Component
Recorder
MSMQ
Player
IFoo
Server
Application
Component
COM+ Event Service
Publish-and-Subscribe model
Late-bound design
Subscription management moved out of app code
Event
Admin
Event
Database
Application Client
Unicast
Multicast
Sink1
ICustLogin
Sink2
ICustLogin
Sink3
ICustLogin
Event
Class
Sink4
ICustLogin
Unbound
IEventXXX
Unbound
COM+ Component Load Balancing
Dynamic load balancing engine, based on response time
Available via AppCenter
Not included in base OS
Server Group
select server
LB Service
Response Time
Engine
Application
Client
create
LB
Activator
Response Time track
Runtime
Server 1
IBank
Server 1
IBank
coclass Bank
[LB=Yes,]
IIBank
COM+ Object Pooling
For
use when JIT doesn’t work
When objects are expensive to initialize
When objects consume expensive resources
Pooled
Objects :
Initialized once at startup
Pooled after SetComplete
Activate and Deactivate can be used to control recycling
Pool
size governed by Min and Max parameters
Visual Studio
Truly Integrated suite of tools
Analyzer, Modeler, Package & Deployment,
SourceSafe, Respository, Component Manager
The “Enterprise Workbench”
Allows you to Leverage component support where
appropriate – client or server
SQL Server 7.0
Best database for Line of Business
Best database for Data Warehousing and
Business Intelligence
Only DB w/ integrated OLAP & ETL
Office 2000 integration
Fastest time to market
Three times faster, 1/3 the cost
Self-tuning, self-managing
Scalable from laptop to cluster
Over 2000 apps available today
3x tpmC per CPU vs. Oracle8i
Best SAP performance – any platform
Host Integration Server
Version upgrade to SNA Server
Bi-directional network, data, and applications interoperability with
mainframes, AS/400, UNIX, and others.
Bridge legacy data into XML
Requires no new code on the host
Available by mid 2000
Application Integration
COM-XML-MSMQ
Data Integration
ADO-OLEDB-ODBC
Std. LAN Protocols
Network
Integration
TCP/IP and SNA
OS/390, OS/400,
UNIX
DRDA - RLIO
XA, TDS, CLI and DB
LIB
VSAM, DB2, Oracle,
Sybase
APPC, CLI-C, DPL
LU0, LU2 and MQSeries
CICS, IMS, MQSeries,
Terminal Apps
AppCenter Server
High Availability, Multi-Server Deployment
and Management Environment
Multiple Server
Web Farm
Single
Server
…
…
Key Features
Fault Tolerance
Dynamic Load Balancing
Simplified Management
Remote Management
App and Content Replication
Staging/Deployment
Integrated App Monitoring
Load Testing
Capacity Analysis
WMI enabled
Available
by mid 2000
Agenda
DNA Explored
Site Server
XML & BizTalk Server
Web Services
Commerce Must Haves
User identification, authentication and
targeting
Catalog browsing
Order capture
Transacted Order Processing
Analysis
Back-End Integration
Site Server 3.0
Commerce Edition
Account, profile management
Online advertising
Targeted promotions
Direct mail
Samples, wizards, tools
Order capture, routing,
management
Market-based pricing
Internet EDI
Extensible, open
Integrate existing systems
Engage Transact
Analyze
Order analysis
Usage and content
analysis
Site iteration
Every Site Needs Membership
If your site has:
Registered and anonymous users:
Can users register or update their accounts online?
Can you track millions of anonymous (cookie ID) users?
Private or sensitive content:
Do you roll your own authentication?
Can you change permissions w/o rewriting scripts?
Premium or subscription areas:
Can users subscribe without calling customer service?
Can you easily run temporary promotions?
Targeted marketing or sales information:
How hard is it to author personalized pages?
Can you tune personalization w/o rewriting scripts?
Membership At The Core Of Site
Server And Your Site
Commerce
Streamlined
Sales/Services
Personalization
Individualized
Delivery
Membership
Customer
Accounts and Site
Security
Analysis
Refined
Experience
Advertising
Targeted
Message
Membership Functions
Authenticate users and authorize access to
content and applications
Store and manage user accounts
Self-registration and delegated user admin
Protect confidential user information
Create personalized Web sites
Cookies, Basic, HTML forms,
Certificates, DPA
Active user object and design time controls
Build online communities
Membership Web Solutions
Personal And Secure
Web Site Areas
Public
Registered
Secured
Subscribed
Anon Customers
Repeat Clients
Members Only
Premium Services
Cookie Auth
Cookie Auth
+ Group ACLs
Basic, Forms,
& Certificates
Basic, Forms,
& Certificates
+ Group ACLs
Explicit Profiling
Explicit Profiling
Explicit Profiling
+ Targeted Mail
Explicit Profiling
+ Targeted Mail
+ Push
Consistent User Tracking & Analysis
Agenda
DNA Explored
Site Server
XML & BizTalk Server
Web Services
XML – A Closer Look
15334, 29.00, 50023, 1, “Ricardo”, …
<book>
<id>15534</id>
<price>29.00</price>
<author>Ricardo</author>
<title>XML and Me</title>
<grade.level>college</grade.level>
</book>
XML Structure
HTML in less then a paragraph.
<!--HTML Snippet-->
<h1>Invoice</h1>
<p>From: C. Brooks. </p>
<p>To: C. McCall </p>
<p> Date: 2/1/99 </p>
<p> Amount: $189.00 </p>
<p> Tax: 12% </p>
<p> Total Due: $5.00 </p>
XML Structure
XML in less then a paragraph.
<!--XML Snippet-->
<Invoice>
<From>C. Brooks. </From>
<To>C. McCall </To>
<Date>2/1/99 </Date>
<Amount>$189.00 </Amount>
<Tax>12% </Tax>
<Total>$5.00 </Total>
</Invoice>
A “Well-Formed” XML Document
XML declaration
Attribute
<?xml version="1.0"?>
<Order o_id="7845" o_date="1999-02-01" o_cur="USD" c_id="JANTOY" >
<ShippingAddress sa_city="Erie" sa_state="PA" sa_pcode="19130"> Element
<Line l_text="Jan's Toys" />
<Line l_text="1818 Market Street" />
Empty element
<Line l_text="3rd Floor, Room 1219" />
</ShippingAddress>
<OrderDetails>
<Item p_id="325" p_name="Whirlygig" od_qty="5" od_unitp="15.50" />
<Item p_id="326" p_name="Zapper" od_qty="2" od_unitp="10.25" />
<Item p_id="327" p_name="Whirlygig" od_qty="5" od_unitp="15.50" />
</OrderDetails>
Start-tag
<Comments>
This order replaces order 7844 which was cancelled by the customer.
</Comments>
</Order>
End-tag
Content
Root element
Multiple Applications Into A Solution
Data
(Schema)
Accounting
Interfaces
Website
Shipping
Design
Pattern
Customers
R&D
Business
Framework
Composable Services
Supplier A
SAP
Planning
ERP
Supplier B
XML Message
Online Sales
Online
Store
XML
XML
Purchase Orders
Inventory
Capacity
JD Edwards
Supplier C
Siebel
Consumers
BizTalk Server
BizTalk Server Description
A Microsoft Product Under Development for
Business Process Integration Through the
Reliable Exchange of Business Documents
Natively Uses BizTalk Schemas
Natively Supports XML Documents
Integrates with Existing Systems Via Specific
Support For
X12 EDI
UN/Edifact EDI
Recordsets
Simple flat file delimited or positional documents
Many transports
BizTalk Server
Vision
Business Process Integration Within and Between
Companies
Supplier A
BizTalk
Documents
Online
sales
Web site
Supplier B
Planning
ERP
Supplier C
Doing BizTalk With Windows DNA
SQL
Server
Single
MTS TX
Context
LOB
DCOM or
DCOM Connector
ADO
HTTP
IIS
COM Business
Logic Components
SMTP
Exchange
DOM
Wrapper
IE5/COM
HTTPS
CIPM
BTS
Windows NT, MMC, PKI, Cert Server, WLBS
F
I
R
E
W
A
L
L
BizTalk Document Structure
BizTalk message
The complete BizTalk Message
Envelope
Standard MIME & XML Message Headers
BizTalk root
<biztalk_1>encloses BizTalk Message
BizTalk header
Routing information
Document body
Business document
message & document handling info
<delivery> encloses to/from
routing info
<body> contains BizTalk Document
BizTalk Document - the business data
Current BizTalk Architecture
Org A
Org B
Application
App
App
Adapter
Adpt
Adpt
BizTalk Server
Handler
Handler
Transport
Transport
BizTalk Server Capabilities
Trading
Profiles
Duluth
Mutual
POs
Invoice
West
Coast
Sales
Trading
Profiles
Trading Partner Profile Management
Application Integration
EDI interoperability, XML tools for mapping formats
Automated document interchange
Business Desk (Profiles and Agreements)
Content based routing, Digital Certificates (PKI)
Rich Management and Analysis
SDK for extensibility, direct app integration
SQL
Agenda
DNA Explored
Site Server
XML & BizTalk Server
Web Services
st
1
&
nd
2
Generation Web
Apps
File
DB
In-house
systems
File
Web Server
Web Server
Browser
Browser
1-1 correspondence
of page to file
“Dynamic Pages”
3rd Generation Web
Web
Web
service
site
File
Web
Web
service
site
Web
Web
service
site
Tomorrow, external
Web sites become
building blocks using
XML
•Web Services
•Megaservices
“The Firewall”
Accessing another
site today = HTML
“screen scraping”
or “your architect
calls my architect”
In-house
systems
DB
Web Server
Browser
“Dynamic Pages”
Examples of Web Services
Location
Services
Maps, routing, nearby
locations…
Shopping
Services
Order tracking, supply
chain, auctions,
coupons…
Information
Services
Communication
Services
Headlines, weather,
horoscopes, TV times…
Email, instant
messages…
Some Web Service Scenarios
Search engine enables you to program it
without a browser
Travel site enables you to compare against
other travel sites
Web customer relationship management
software extended to search online White
Pages
Traffic monitoring site communicates with
PIM to calculate how long it will take you
between meetings
Combining Web Services
Calendar
SOAP
White
Pages
Mapping
SOAP
(Location)
SOAP
SOAP
Alerting
Billing
Authentication
SOAP
SOAP
Traffic
What SOAP Is
Designed to perform Web method
invocations
OS, object model, language agnostic
HTTP + XML on the wire
Works over existing Internet infrastructure
OS, language, and object model agnostic
interoperability
SOAP Message Structure
SOAP Message
The complete SOAP Message
HTTP Headers
Standard HTTP and SOAP HTTP Headers
SOAP Envelope
<Envelope> encloses payload
SOAP Header
Headers
SOAP Body
Method Call & Data
<Header> encloses headers
Individual headers
<Body> contains SOAP Method Call
XML Encoded SOAP Method Call & Data
SOAP Message Types
SOAP defines three kinds of messages:
Call
Response
Fault
Response and Fault are optional
SOAP Sample Call
POST /StockQuote HTTP/1.1
Host: www.stockquoteserver.com
Content-Type: text/xml
Content-Length: nnnn
SOAPMethodName: Some-Namespace-URI#GetLastTradePrice
<SOAP:Envelope xmlns:SOAP="urn:schemas-xmlsoaporg:soap.v1”>
<SOAP:Body>
<m:GetLastTradePrice
xmlns:m="Some-Namespace-URI”>
<symbol>DIS</symbol>
</m:GetLastTradePrice>
</SOAP:Body>
</SOAP:Envelope>
Security
Builds on HTTP security
HTTPS
X.509 certificates
Firewalls can filter easily
Does not pass application code
Developers/IT choose which methods to
expose explicitly
Type safety
SOAP and Standards
Builds on
W3C XML standards
IETF HTTP standard
SOAP Spec v1.0 to IETF
http://www.ietf.org/internet-drafts/draft-boxhttp-soap-01.txt
Summary
Windows DNA provides a comprehensive,
integrated platform for building distributed
Web apps
Windows DNA 2000 delivers the next wave
of building blocks for the platform
Windows DNA is the fastest and easiest way
to build high-value distributed Web-enabled
apps