Upload
prosper-malone
View
225
Download
1
Tags:
Embed Size (px)
Citation preview
Connected Applications Connected Applications TodayTodayConnected Applications Connected Applications TodayToday
Case Studies ICase Studies I
Lawrence WilkesLawrence Wilkes
Deutsche BankDeutsche BankDeutsche Bank Global financial services group Deutsche Bank Global financial services group provide services in 70 countriesprovide services in 70 countries
Business ChallengeBusiness ChallengeComponents calculate option pricing for equity Components calculate option pricing for equity derivativesderivatives
Distribute components to local operations Distribute components to local operations in a way that in a way that could be easily adopted for each market in which the set could be easily adopted for each market in which the set of calculators was being usedof calculators was being used
Their derivatives calculators provide option prices Their derivatives calculators provide option prices as a web service hosted on Unixas a web service hosted on Unix
Using custom controls and Visual Studio .NET, a Using custom controls and Visual Studio .NET, a drag and drop toolkit was provided to its drag and drop toolkit was provided to its developers around the worlddevelopers around the world
.NET Framework provided:.NET Framework provided:Seamless interoperability with Unix hosted servicesSeamless interoperability with Unix hosted services
Encapsulation through componentisationEncapsulation through componentisation
development time reduced by 50%development time reduced by 50%
Global Pricing Calculation Global Pricing Calculation Architecture Architecture
.NET.aspx
.cs
Client SDK usingCustom controls
Unix hosted equityoption calculator
NameTickerCCYExch
F(x)
Web Service
L’OréalL’OréalBefore .NETBefore .NET
No separation of No separation of elements in the elements in the pagepage
Logic and page Logic and page design mixed design mixed togethertogether
High costs of High costs of maintenance and maintenance and changechange
http://www.lancome.fr
L’Oréal L’Oréal ArchitectureArchitecture
.asp
Transform
Validate
BizTalk Server
SQL 2000
Web Service
HTML
XML
ASP.NET
ServiceFacadeasmx
Queue
L’ Oréal Web L’ Oréal Web Services Services
Product DescriptionProduct Description SearchSearch ImagesImages Request Further InfoRequest Further Info
L’Oréal L’Oréal SummarySummaryBizTalk Server and SQL 2000 used to implement BizTalk Server and SQL 2000 used to implement XML product CatalogueXML product Catalogue
ASP .NET separates user interface from XML data ASP .NET separates user interface from XML data – using server controls– using server controls
Web Services integrate with retailers and Web Services integrate with retailers and supplierssuppliers
BizTalk for XML transformation and integrationBizTalk for XML transformation and integration
"We expect .NET to deliver a 20 to 30 percent "We expect .NET to deliver a 20 to 30 percent reduction in the total cost of ownership for our reduction in the total cost of ownership for our hundreds of Internet properties. In addition to hundreds of Internet properties. In addition to lower development and deployment costs, our lower development and deployment costs, our new solution will reduce ongoing administrative new solution will reduce ongoing administrative costs by making life much easier for our costs by making life much easier for our webmasters and marketing people.“webmasters and marketing people.“Jérôme Peyrelevade Head Technology Officer Jérôme Peyrelevade Head Technology Officer L'Oréal Internet and e-Business L'Oréal Internet and e-Business Group ArchitectureGroup Architecture
Accor ServicesAccor Services3500 hotels in 88 countries, 46% market share, 3500 hotels in 88 countries, 46% market share, offering budget to luxury accommodations including offering budget to luxury accommodations including travel agencies, restaurants, and casinostravel agencies, restaurants, and casinos
Accor swapped development from Java/WebLogic Accor swapped development from Java/WebLogic when Microsoft Consulting Services demonstrated when Microsoft Consulting Services demonstrated the .NET development environmentthe .NET development environment
The task:The task:
Replace back-office systems with common library Replace back-office systems with common library of business objectsof business objects
Streamline e-procurement for the chain of Streamline e-procurement for the chain of restaurants and hotelsrestaurants and hotels
Manage sales and marketing campaigns for Manage sales and marketing campaigns for increased sales and incentives for sales staffincreased sales and incentives for sales staff
ASP.NET
BizTalk
SQL 2000Windows 2000
Accor .NET ArchitectureAccor .NET Architecture
ServiceFacadeasmx
Supplier
E-procurementSales Campaigns
Businessobjects
C#
AppCentre
Web Service
HTML
XML
SQL 2000
WindowsServer 2003
.NET
BTI UK Hotel BrokerBTI UK Hotel Broker
HotelsBTI HotelBroker
• Hotel Broker• Flight Broker• Car Broker
Corporate Travel Rules Maps
WeatherDrivingInstructions
Corporate Users
XML
Car Hire
Web Service
HTML
XML
Web Service
GALILEO Web Services GALILEO Web Services Reservation BuilderReservation Builder Trip PlannerTrip Planner Flight InformationFlight Information ItineraryItinerary Travel Codes TranslatorTravel Codes Translator
BTI BenefitsBTI BenefitsCall centre productivity increased by up to Call centre productivity increased by up to 40 per cent 40 per cent
Agents concentrate on complex requests Agents concentrate on complex requests
Supported infrastructure and lower cost of Supported infrastructure and lower cost of ownership ownership
Integration with other systems via Web Integration with other systems via Web services services
New automated services to customers New automated services to customers
Building Connected Apps Building Connected Apps on the Microsoft Platformon the Microsoft PlatformBuilding Connected Apps Building Connected Apps on the Microsoft Platformon the Microsoft Platform
Nigel WatlingNigel [email protected]@microsoft.comMicrosoft EMEAMicrosoft EMEA
Components, Services, Components, Services, SystemsSystems
Do Foo
Do Baz
Do Bar
Ser
vice
Com
ponen
t
System
Service Oriented Service Oriented Architecture Architecture Key PointsKey PointsSOASOA is an architectural approach to is an architectural approach to
creating systems built from creating systems built from autonomous servicesautonomous services
i.e. it is a mindset NOT a technology i.e. it is a mindset NOT a technology It can be It can be implementedimplemented using any using any technologytechnology
A major leap forward in philosophy and A major leap forward in philosophy and approach to designing and building approach to designing and building distributed, connected systems distributed, connected systems Leverages what we already knowLeverages what we already know
Evolves and consolidates all we’ve Evolves and consolidates all we’ve learned to date about designing & learned to date about designing & building distributed systemsbuilding distributed systems
Service-Orientation TenetsPhilosophy of services
Services have explicit boundariesAcross boundariesAcross boundaries we must have FORMAL interaction we must have FORMAL interaction
Services are autonomousMessage based interaction with no implicit dependenciesMessage based interaction with no implicit dependencies
Services share contract and schemaRequire a formal, shared language for schema and contractRequire a formal, shared language for schema and contract
Service compatibility is determined based on policy
Require a formal, shared language and namespace for policyRequire a formal, shared language and namespace for policy
Tenet \Ten"et\, n.Tenet \Ten"et\, n.Any opinion, principle, dogma, belief, or doctrine, Any opinion, principle, dogma, belief, or doctrine, which a person holds or maintains as true.which a person holds or maintains as true. Source: Webster's Revised Unabridged Dictionary, © 1996, 1998Source: Webster's Revised Unabridged Dictionary, © 1996, 1998
Why is SO important?Why is SO important?
Provides us with an opportunity to Provides us with an opportunity to rethink how we design and architect rethink how we design and architect tomorrow’s systemstomorrow’s systems
With Web services it enables a level With Web services it enables a level of interoperability never before of interoperability never before achievableachievable
Makes explicit some of the core Makes explicit some of the core assumptions that compromise assumptions that compromise today’s systemstoday’s systems
Particularly around boundaries and Particularly around boundaries and locality …locality …
PracticalitiesPracticalitiesBoundariesBoundaries
A SOA boundary is A SOA boundary is explicitexplicit
autonomous, autonomous,
based on schema and contract for structure, based on schema and contract for structure,
and on policy for semanticsand on policy for semantics
Influenced by platform, deployment and trustInfluenced by platform, deployment and trust
Objects are appropriate within boundariesObjects are appropriate within boundaries
Services are appropriate across and within Services are appropriate across and within boundaries boundaries
A SOA environment extends only as far as A SOA environment extends only as far as where we agree the boundary iswhere we agree the boundary is
How far do you want your boundary to extend?How far do you want your boundary to extend?
Web Services Web Services Standards-based Messaging
Web Services form a global infrastructure Web Services form a global infrastructure for message passingfor message passing
Interoperability through open standardsInteroperability through open standardsCore set of standards has been builtCore set of standards has been built
Industry is driving development of additional Industry is driving development of additional standards to complete the architecturestandards to complete the architecture
Can be used with Can be used with anyany architecture (not just architecture (not just SOA) SOA)
e.g. RPC between components!e.g. RPC between components!
On any hardware, any platform, any On any hardware, any platform, any programming languageprogramming language
Broad interoperability requires web Broad interoperability requires web servicesservices
What is a What is a practical, broadly practical, broadly interoperableinteroperable SOA? SOA?
An An appliedapplied approach to creating systems approach to creating systems built from built from interoperableinteroperable autonomous autonomous WebWeb servicesservices
WebWeb services servicesCommunicate via Communicate via SOAPSOAP message exchanges message exchanges
Are built to lastAre built to last
Have a critical need for availability and stabilityHave a critical need for availability and stability
SystemsSystemsAre a set of Are a set of WebWeb services cooperating in a services cooperating in a given taskgiven task
Are built to changeAre built to change
Adapt to new services after deploymentAdapt to new services after deployment
SOA ImplementationSOA ImplementationSystems and ServicesSystems and Services
A A systemsystem built using SOA principles built using SOA principles which wants broad usage will:which wants broad usage will:
Build on the WS- protocolsBuild on the WS- protocols
And use And use SOAPSOAP messages between messages between servicesservices
InternallyInternally a a serviceservice can utilize can utilize whichever technologies and whichever technologies and techniques are the most appropriatetechniques are the most appropriate
E.g. mainframeE.g. mainframe
Choose your boundaries carefullyChoose your boundaries carefully
Microsoft TechnologiesMicrosoft TechnologiesWhat to use, where and when!What to use, where and when!
There are many Microsoft technology There are many Microsoft technology choices for building SOA systemschoices for building SOA systems
Which should you use, where and Which should you use, where and when?when?
ASMXASMXASP.NET Web ServicesASP.NET Web Services
ASMX is Microsoft’s recommended ASMX is Microsoft’s recommended method for developing Web Services method for developing Web Services todaytoday
ASMX gives great support for formal ASMX gives great support for formal contract and schema expression contract and schema expression (WSDL)(WSDL)
ASMX doesn’t natively support the ASMX doesn’t natively support the WS-* protocol familyWS-* protocol family
ASMX can be combined with WSE to ASMX can be combined with WSE to get WS-* supportget WS-* support
WSEWSEWeb Services EnhancementsWeb Services Enhancements
Getting started today? Use the evolving Getting started today? Use the evolving advanced feature set provided by WSEadvanced feature set provided by WSE
Early implementations of WS-* Early implementations of WS-* specifications specifications
WSE tracks the evolution of emerging WS-* WSE tracks the evolution of emerging WS-* protocolsprotocols
WSE builds on current Microsoft messaging WSE builds on current Microsoft messaging technologiestechnologies
WSE can be used with ASMX for Web Services WSE can be used with ASMX for Web Services over HTTPover HTTP
WSE can be used standalone for Web Services WSE can be used standalone for Web Services over TCP/IPover TCP/IP
WSE’s supportability is 2+1 WSE’s supportability is 2+1 (standard+extended)(standard+extended)
.NET Remoting.NET Remoting
.Net Remoting is an easy-to-use object remoting .Net Remoting is an easy-to-use object remoting technologytechnology.NET Only.NET Only
.NET Common Type System (NOT XML Schema).NET Common Type System (NOT XML Schema)Proprietary messagesProprietary messagesThird party bridging productsThird party bridging products
No built-in security until .NET Framework 2.0No built-in security until .NET Framework 2.0Can leverage IIS for transport-level securityCan leverage IIS for transport-level securityOr roll-your-own custom channelOr roll-your-own custom channel
It requires tightly coupled implementation between It requires tightly coupled implementation between participants, and is therefore participants, and is therefore particularly unsuited particularly unsuited to to SOA boundary implementationSOA boundary implementationIt is a reasonable technology to use for cross app-It is a reasonable technology to use for cross app-domain communication within the service boundarydomain communication within the service boundaryDON’T USE XPROCESS/XMACHINEDON’T USE XPROCESS/XMACHINE
Use ASMX or Enterprise ServicesUse ASMX or Enterprise Services
.NET Remoting and Web ServicesWorking Side by Side
ServiceImplementation
RemotingClient
RemotingInterface
Web ServiceClient
Web ServiceInterface
Don Box on .NET Don Box on .NET Remoting…Remoting…From his blog on 26/4/04From his blog on 26/4/04
The GoodThe Good The transparent proxy (TP) /stack builder sink (SBS) infrastructureThe transparent proxy (TP) /stack builder sink (SBS) infrastructure
Allows you to construct an object reference for ANY CLR interface.Allows you to construct an object reference for ANY CLR interface.Allows the CLR to marshal object references across AppDomains inside a processAllows the CLR to marshal object references across AppDomains inside a processThe technology is alive and well and a crucial part of the CLR. Indigo M5 uses this!The technology is alive and well and a crucial part of the CLR. Indigo M5 uses this!
The BadThe Bad The support for WSDL under the TP/SBS infrastructure is an architectural The support for WSDL under the TP/SBS infrastructure is an architectural dead enddead end
The UglyThe Ugly .NET Remoting assumes shared classes and shared assemblies between the .NET Remoting assumes shared classes and shared assemblies between the two endpoints. Indigo exists to break this dependency. This is a profound two endpoints. Indigo exists to break this dependency. This is a profound architectural change. architectural change. Custom transport channels are based on bytes. Indigo has a SOAP/Infoset-Custom transport channels are based on bytes. Indigo has a SOAP/Infoset-based architecture that is more general and will have a longer life span based architecture that is more general and will have a longer life span There are no plans to support the binary/TCP transport channel. It is one-off There are no plans to support the binary/TCP transport channel. It is one-off and proprietary.and proprietary.The TP/SBS infrastructure allows class-based remoting using The TP/SBS infrastructure allows class-based remoting using MarshalByRefObject. Indigo does not require MBRO.MarshalByRefObject. Indigo does not require MBRO.
ConclusionConclusionThe real asset of .NET Remoting is the TP/SBS infrastructure. If you find The real asset of .NET Remoting is the TP/SBS infrastructure. If you find yourself wanting to use it, do so with a clear conscience.yourself wanting to use it, do so with a clear conscience.If you're crossing host boundaries, ASMX is probably a better choice, both If you're crossing host boundaries, ASMX is probably a better choice, both architecturally as well as in terms of tracking where the platform is headed architecturally as well as in terms of tracking where the platform is headed in the next 2-10 years. in the next 2-10 years.
Enterprise ServicesEnterprise ServicesES offers rich enterprise system featuresES offers rich enterprise system features
ES is the programming model that will ES is the programming model that will most resemble the Indigo programming most resemble the Indigo programming modelmodelES uses DCOM as its communication ES uses DCOM as its communication protocolprotocol
DCOM is not suitable for spanning trust DCOM is not suitable for spanning trust boundariesboundariesIt is tightly coupled enough (because you have It is tightly coupled enough (because you have proxies/stubs) that you should avoid using it proxies/stubs) that you should avoid using it cross machinecross machineCOM+ relies on closely coupled participant COM+ relies on closely coupled participant systems, and is unsuitable for expression of systems, and is unsuitable for expression of service boundaries. It is fine for use within a service boundaries. It is fine for use within a service boundaryservice boundary
Just-in-time activationJust-in-time activationDeclarative transactionsDeclarative transactionsRole-based securityRole-based securityAnd more…And more…
PerformancePerformanceSecuritySecurityACID transactionsACID transactionsObject PoolingObject Pooling
.NET Enterprise ServicesWorking Together
Service Implementation
RemotingClient
RemotingInterface
Web ServiceClient
Web ServiceInterface
ACID Transaction
MSMQMSMQSystem.MessagingSystem.Messaging
MSMQ is Microsoft’s Message MSMQ is Microsoft’s Message Queuing technologyQueuing technology
Performant, reliable, durable Performant, reliable, durable messagingmessaging
Rich administrative supportRich administrative support
Proven modelProven model
No language for schema, contract, No language for schema, contract, policypolicy
These are intuited, not interpretedThese are intuited, not interpreted
Great to use within a service Great to use within a service boundaryboundary
System.Messaging is the .NET System.Messaging is the .NET wrapperwrapper
SOA and MSFT Messaging SOA and MSFT Messaging StacksStacks
ASMX and/or WSE for the boundariesASMX and/or WSE for the boundaries
ASMX, WSE, .NET Remoting, ASMX, WSE, .NET Remoting, Enterprise Services, MSMQ inside the Enterprise Services, MSMQ inside the boundariesboundaries
ASMX+/|WSE
ASMX.Net R
emoting
Ent. SvcsMSMQ
Other Microsoft Web Other Microsoft Web Services Solutions Services Solutions
ATL Server and Managed C++ – ISAPI ATL Server and Managed C++ – ISAPI extensionsextensionsSOAP Toolkit – deprecated by .NETSOAP Toolkit – deprecated by .NET
No longer retires July 1, 2004No longer retires July 1, 2004 Standard support April 05, Extended Standard support April 05, Extended April 07April 07
SQL ServerSQL Server 2005 2005TDS only prior to SQL Server 2005 TDS only prior to SQL Server 2005 Now uses SOAP and HTTP via http.sys to Now uses SOAP and HTTP via http.sys to go through firewallsgo through firewalls
#1 Recommendation#1 RecommendationUse ASMX + WSE to create Web Use ASMX + WSE to create Web servicesservices
Complementary TechnologiesTechnology Map
CLR
Application
CLR Remoting
BizTalk
CRM
ERP
Connectors…
ASMX
SOAPClientsWeb Services
EnterpriseServices
BizTalk Server 2004Overview
Services must be agileBusiness Process ManagementEnterprise Application IntegrationTrading Partner Interaction
BizTalk Server incorporates SOA paradigmComponents are exposed and self-describingRobust support for long-running, asynchronous transactionsSolutions are extensible and reusableProcesses can be monitored in real timeCan reconfigure any process activity without disrupting the process
BizTalk Server 2004BizTalk Server 2004
Faster development and deployment Faster development and deployment of business integration applicationsof business integration applications
Microsoft Office accessMicrosoft Office access
Vertical Market acceleratorsVertical Market accelerators
Enterprise class scalabilityEnterprise class scalability
Easy integration with Web servicesEasy integration with Web services
Extensive standards supportExtensive standards support
BizTalk Server 2004Process Service Features
Process OrchestrationRapidly develop integration servicesTransport abstraction
Human Workflow ServicesExpose end user touchpointsScalable long-running transactions
Business Activity Monitoring
BizTalk Server 2004Orchestration
BizTalk Server 2004Infrastructure Service Features
SecurityEncryptionAuthorizationSingle sign-on
Reliable messagingAuto retrySecondary transports
AuditingMessage trackingApplication data tracking
BizTalk Server 2004Working Together
BizTalk Server
WebService
BAS
IISWeb
Service
ClientApplication
SharePoint Portal Server & SharePoint Portal Server & SharePoint ServicesSharePoint Services
Web-based Team and enterprise Web-based Team and enterprise collaborationcollaboration
Audience targeting and personalizationAudience targeting and personalization
Combine team portals into enterprise Combine team portals into enterprise portalsportals
SharePoint Services built on .NET SharePoint Services built on .NET frameworkframework
Integrated with BizTalk ServerIntegrated with BizTalk Server
Sites created in ASP.NETSites created in ASP.NET
Web service and XML integrationWeb service and XML integration
Host Integration Server Host Integration Server 20042004
Technologies to Integrate IBM Hosts Technologies to Integrate IBM Hosts with New Solutions Developed using with New Solutions Developed using Microsoft WindowsMicrosoft Windows
Lower Costs to Deploy Web and SOA Lower Costs to Deploy Web and SOA SolutionsSolutions
Reduce Time to Market for Enterprise DevsReduce Time to Market for Enterprise Devs
Simplify and Secure Network InfrastructureSimplify and Secure Network Infrastructure
Approaches and Methods of IntegrationApproaches and Methods of IntegrationNetwork and Security Network and Security
Data Access and MessagingData Access and Messaging
Application to ApplicationApplication to Application
The Role of ObjectsThe Role of Objects
Reduce assumptions between Reduce assumptions between servicesservices
Builds on ideas from component Builds on ideas from component software, distributed objects, and MOM software, distributed objects, and MOM
Boundaries are explicitBoundaries are explicitOpt in modelOpt in model
Share schemas, not typesShare schemas, not typesAutonomousAutonomous
Security and failure isolation are a Security and failure isolation are a mustmustVariable cost, explicit Variable cost, explicit communicationcommunicationIndependent deployment of Independent deployment of client / Serviceclient / Service
Policy-based compatibilityPolicy-based compatibilityAssertions use stable global namesAssertions use stable global names
Interaction Richness Reduced Assumptions
Complete fidelity with local Complete fidelity with local contractcontract
Customers have 20+ years of Customers have 20+ years of experience and have built intuition hereexperience and have built intuition here
Boundaries are harder to Boundaries are harder to isolateisolate
Requires careful opting outRequires careful opting out
Share types, not schemasShare types, not schemasTightly CoupledTightly Coupled
Typically require deployment of Typically require deployment of both client and server in syncboth client and server in syncAssume cheap, transparent Assume cheap, transparent communicationcommunicationobject identity and lifetime object identity and lifetime maintained by infrastructuremaintained by infrastructure
Platform-based compatibilityPlatform-based compatibilityAssertions built into platformAssertions built into platform
Service OrientationObject Orientation
Today’s Prescriptive Today’s Prescriptive GuidanceGuidanceSummarySummaryBuild services using ASMXBuild services using ASMX
Enhance your ASMX service with WSE if you need Enhance your ASMX service with WSE if you need the WSE feature set and can accept the support the WSE feature set and can accept the support policypolicy
Use object technology in a service’s Use object technology in a service’s implementationimplementation
Use Enterprise Services if:Use Enterprise Services if:You need ES rich feature setYou need ES rich feature setYou are communicating between components on the You are communicating between components on the local machine and have performance issues with ASMX or local machine and have performance issues with ASMX or WSEWSE
Use .NET Remoting if:Use .NET Remoting if:You need to integrate with an existing proprietary You need to integrate with an existing proprietary protocolprotocolYou are communicating in-process, cross app domainYou are communicating in-process, cross app domain
Use System.Messaging if you need the Use System.Messaging if you need the reliable messaging and queuing features in reliable messaging and queuing features in MSMQMSMQ
Developer Developer EnablementEnablement
GuidanceGuidanceAuthorization and Profile Authorization and Profile Application Block Application Block
Building Interoperable Web Building Interoperable Web Services: WS-I Basic Profile 1.0 Services: WS-I Basic Profile 1.0
Web Service Façade for Legacy Web Service Façade for Legacy ApplicationsApplications
Visual Studio .NET Visual Studio .NET 20032003Foundation for XML Foundation for XML WS programming WS programming modelmodel
Key supported Key supported standardsstandards
Attribute based Attribute based developmentdevelopment
Schema driven XML Schema driven XML serializationserialization
WS-I Basic profile WS-I Basic profile compliant*compliant*
Web Services Web Services Enhancements (WSE) Enhancements (WSE) 1.01.0Foundation for advanced Foundation for advanced Web service supportWeb service support
Improved extensibilityImproved extensibility
WS-SecurityWS-Security
Infrastructure And Business Infrastructure And Business ProcessProcess
GuidanceGuidanceInformation & Information & Application Application Architecture for the Architecture for the Service-Oriented Service-Oriented EnterpriseEnterprise
Application Application Interoperability: Interoperability: MicrosoftMicrosoft .NET and J2EE
Windows Server Windows Server 20032003MetadataMetadata
AD & ADAMAD & ADAM
SecuritySecurity
Authorization Authorization ManagerManager
Registry & DiscoveryRegistry & Discovery
Enterprise UDDIEnterprise UDDI
QueuingQueuing
MSMQMSMQ
HostingHosting
IIS 6.0 & Enterprise IIS 6.0 & Enterprise ServicesServices
ManagementManagementWMIWMI
BizTalk Server 2004BizTalk Server 2004Connectivity (EAI/B2B)Connectivity (EAI/B2B)
350+ Adapters350+ Adapters
Native Web service Native Web service supportsupport
Business ProcessBusiness ProcessOrchestrationOrchestration
Business Rule EngineBusiness Rule Engine
Business Activity Business Activity MonitoringMonitoring
Human Workflow Human Workflow ServicesServices
Partner ManagementPartner Management
SecuritySecuritySingle Sign-OnSingle Sign-On
ManagementManagement
SQL Server 2000SQL Server 2000Web Services Web Services SupportSupport
Smart Client And ReachSmart Client And ReachOffice System Office System
20032003XML meta and XML meta and persistence formatpersistence format
InfoPath for InfoPath for schema, template schema, template driven formsdriven forms
Native Web Native Web service consumerservice consumer
Visual Studio .NET Visual Studio .NET integrationintegration GuidanceGuidance
Smart Client Offline Smart Client Offline Application Block Application Block
Asynchronous Asynchronous Invocation Application Invocation Application BlockBlock
Service Aggregation Service Aggregation Application BlockApplication Block
Sharepoint Portal Sharepoint Portal Server for OfficeServer for Office
Windows Windows Sharepoint Sharepoint ServicesServices
.NET Compact .NET Compact FrameworkFrameworkPocketPC and PocketPC and SmartPhoneSmartPhone
© 2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.