Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 59

The Microsoft Application Platform for the Enterprise

Carlos McKinley
Microsoft Corporation

Windows DNA:

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 Web Service

Web Service Subscribe Web Service Publish Data Stores

Data Stores

Third Generation Architecture:


Program the Web
User
Web Site: Applications
Page Data HTML 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

Microsofts 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,

Its Easy to Build Robust Applications for PCs

PC-based Department-sized distributed applications are near ubiquitous


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

But, The Internet Factor.


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 Richer Web applications platform Improved integration and interoperability E-commerce is built-in Exploit Windows 2000 All expected to ship by mid 2000

Set of new and enhanced services


Presentation services
Rich client Components DHTML

Windows DNA

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 Application services Directory RDBMS Email and messaging ADO OLE DB File system
Distributed transactions and query processing across multiple data stores

Presentation services

Interoperability services

Windows DNA

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

Application Integration
Data Integration Network Integration
TCP/IP and SNA DRDA - RLIO XA, TDS, CLI and DB LIB APPC, CLI-C, DPL LU0, LU2 and MQSeries

ADO-OLEDB-ODBC

Std. LAN Protocols

OS/390, OS/400, UNIX

VSAM, DB2, Oracle, Sybase

CICS, IMS, MQSeries, Terminal Apps

Windows DNA 2000


Microsoft

Babylon Commerce
Microsoft Server

Server

Microsoft

SQLServer

New or Enhanced: Application Services Legacy Interoperability E-commerce (B2C) Data Access/Storage Development Tools Developer Success + E-commerce (B2B) + Deployment and Management

Microsoft

BizTalk Server

Windows DNA Application Services

Windows 2000

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+ makes it easier to develop, deploy, and administer Enterprise Scale, Component-based Applications

COM+ Key Features

New services

Interception

Queued components Events Dynamic Load Balancing Object Pooling


CRM Transactions, servers, security, administration

Unify COM and MTS for single programming, admin model XA, TIP, CRM

Improved interoperability

Improved services

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. Use your favorite COM-compliant tool and add attributes
COM+ Server Process

All you have to do is:

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

Unicast

Sink1 ICustLogin Sink2 ICustLogin Sink3 ICustLogin

Event Database

Multicast

Application Client

Event Class IEventXXX

Sink4 ICustLogin Unbound

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 Server 1 IBank Server 1 IBank

Application Client

create

LB Activator

Response Time track Runtime

coclass Bank [LB=Yes,] IIBank

COM+ Object Pooling


For

use when JIT doesnt 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


Self-tuning, self-managing Scalable from laptop to cluster Over 2000 apps available today

Best database for Data Warehousing and Business Intelligence

Only DB w/ integrated OLAP & ETL Office 2000 integration Fastest time to market
3x tpmC per CPU vs. Oracle8i

Three times faster, 1/3 the cost

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

DRDA - RLIO XA, TDS, CLI and DB LIB

APPC, CLI-C, DPL LU0, LU2 and MQSeries

OS/390, OS/400, UNIX

VSAM, DB2, Oracle, Sybase

CICS, IMS, MQSeries, Terminal Apps

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

AppCenter Server

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

Engage Transact

Order capture, routing, management Market-based pricing Internet EDI Extensible, open Integrate existing systems

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

Cookies, Basic, HTML forms, Certificates, DPA Self-registration and delegated user admin

Store and manage user accounts

Protect confidential user information Create personalized Web sites

Active user object and design time controls

Build online communities

Membership Web Solutions Personal And Secure


Web Site Areas Public
Anon Customers

Registered
Repeat Clients

Secured
Members Only

Subscribed
Premium Services

Cookie Auth

Cookie Auth + Group ACLs

Basic, Forms, & Certificates

Basic, Forms, & Certificates + Group ACLs


Explicit Profiling + Targeted Mail + Push

Explicit Profiling

Explicit Profiling

Explicit Profiling + Targeted Mail

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 ERP Planning Supplier B
XML Message

Online Sales Online Store XML

XML
Purchase Orders Inventory Capacity

JD Edwards

Supplier C

Siebel Consumers

BizTalk Server Description

BizTalk Server

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

Online sales Web site Planning

BizTalk Documents
Supplier B

ERP

Supplier C

Doing BizTalk With Windows DNA


SQL Server ADO LOB

Single MTS TX Context

DCOM or DCOM Connector

COM Business Logic Components

HTTP IIS SMTP Exchange

DOM Wrapper IE5/COM


CIPM

HTTPS

F I R E W A L L

BTS

Windows NT, MMC, PKI, Cert Server, WLBS

BizTalk Document Structure


BizTalk message Envelope BizTalk root BizTalk header Routing information Document body Business document The complete BizTalk Message Standard MIME & XML Message Headers <biztalk_1>encloses BizTalk Message message & document handling info <delivery> encloses to/from routing info <body> contains BizTalk Document BizTalk Document - the business data

Current BizTalk Architecture


Org A
Application

Org B
App App

Adapter

Adpt

Adpt

BizTalk Server
Handler Handler

Transport

Transport

BizTalk Server Capabilities


Trading Profiles

Duluth Mutual

POs Invoice Trading Profiles

West Coast Sales

Trading Partner Profile Management

SQL

Business Desk (Profiles and Agreements)


EDI interoperability, XML tools for mapping formats Content based routing, Digital Certificates (PKI)

Application Integration

Automated document interchange

Rich Management and Analysis SDK for extensibility, direct app integration

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


Accessing another site today = HTML screen scraping or your architect calls my architect
Web Web service site Web Web service site
The Firewall

In-house systems

File

DB

Tomorrow, external Web sites become building blocks using XML Web Services Megaservices

Web Web service site

Web Server

Browser

Dynamic Pages

Examples of Web Services


Location Services
Shopping Services Information Services Communication Services

Maps, routing, nearby locations


Order tracking, supply chain, auctions, coupons 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 Authentication

Mapping SOAP (Location)

SOAP

SOAP SOAP

Traffic

Alerting

Billing

SOAP

White Pages

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 HTTP Headers SOAP Envelope SOAP Header Headers SOAP Body Method Call & Data The complete SOAP Message Standard HTTP and SOAP HTTP Headers <Envelope> encloses payload <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


http://www.ietf.org/internet-drafts/draft-boxhttp-soap-01.txt

SOAP Spec v1.0 to IETF

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

You might also like