design and development tools for building mission- critical applications nametitle microsoft...
TRANSCRIPT
Design and Development Tools for Building Mission-Critical Applications
Design and Development Tools for Building Mission-Critical Applications
NameNameTitleTitleMicrosoft CorporationMicrosoft Corporation
AgendaAgenda
Designing the Designing the WhidbeyRocks!WhidbeyRocks! System System Visual Studio Team SystemVisual Studio Team System
Building the Building the WhidbeyRocks!WhidbeyRocks! DatabaseDatabase SQL Server 2005SQL Server 2005
Extending the DatabaseExtending the Database Visual Studio 2005 & SQL/CLR Visual Studio 2005 & SQL/CLR
ComponentsComponents Business Process IntegrationBusiness Process Integration
BizTalk Server 2006BizTalk Server 2006 ReportingReporting
Business Activity Monitoring / Report Business Activity Monitoring / Report BuilderBuilder
VSTS for Software ArchitectsVSTS for Software Architects
Visual Studio Team Edition
Software Architects
Team Explorer
Visual Studio Professional
Application Designer
System Designer
Logical Datacenter Designer
Deployment Designer
Visio for Enterprise Arch.
Class Designer
Model structure of complex Model structure of complex systemssystems
Knowledge Knowledge transfer/collaboration transfer/collaboration Between architects and Between architects and
developersdevelopers Between developers and Between developers and
operationsoperations Improve the value of designImprove the value of design
Design, code and configuration Design, code and configuration are synchronizedare synchronized
Improve predictability of Improve predictability of deploymentdeployment Design validation, unified Design validation, unified
deployment manifest deployment manifest Integration with best practices Integration with best practices
and guidanceand guidance
Distributed System Distributed System ChallengesChallenges
IT OperationsIT OperationsDevelopmenDevelopmentt
Application Application ArchitectArchitect
Infrastructure Infrastructure ArchitectArchitect
Designing WhidbeyRocks!Designing WhidbeyRocks!
T-SQL EnhancementsT-SQL Enhancements Varchar(max), Varbinary(max)Varchar(max), Varbinary(max)
Alternative to Text, ImageAlternative to Text, Image Uniform Programming modelUniform Programming model
Exception HandlingException Handling Try/CatchTry/Catch
Common Table Expressions (CTEs)Common Table Expressions (CTEs) Recursive QueriesRecursive Queries
Multiple Active ResultSets (MARS)Multiple Active ResultSets (MARS) PIVOT, UNPIVOTPIVOT, UNPIVOT TOP (expression)TOP (expression)
Native Support For XMLNative Support For XML Native XML SupportNative XML Support
Store platform independent data Store platform independent data Create dynamic content rich applicationsCreate dynamic content rich applications Enable loosely-coupled systems via coarse-grained messagesEnable loosely-coupled systems via coarse-grained messages
XML data typeXML data typePhonePhoneAddressAddressLast NameLast NameFirst NameFirst Name
E.g. Insurance Policy
DB
Tab
le
Point-of-Sale Svc(Windows Platform)
Supplier Svc(Non-windows)XML message
Loosely coupled services
XML and Relational co-existenceXML and Relational co-existence Support high performance XML storage and querySupport high performance XML storage and query Enhance existing applications with XML co-existenceEnhance existing applications with XML co-existence Create rich full-text search applicationsCreate rich full-text search applications
Native Support for Web Native Support for Web ServicesServices Native Web services accessNative Web services access
Enables cross platform Enables cross platform interoperabilityinteroperability
Reduces middle-tier dependency (IIS)Reduces middle-tier dependency (IIS) Simplifies management and Simplifies management and
administrationadministration
New HTTP ENDPOINT objectNew HTTP ENDPOINT object Encourage database object re-useEncourage database object re-use Support service oriented architecturesSupport service oriented architectures Easy maintenance via loose couplingEasy maintenance via loose coupling
SOAP/XML/HTTP
SPSPTSQL
SPSPSPSP
Non Windows
configure connection infoconfigure authenticationexpose stored procedures
expose TSQL batches
Web SvcEndpoints
Management StudioManagement Studio Integrated management Integrated management
Relational Database, Relational Database, Analysis Services, Analysis Services, Reporting Services, Reporting Services, Notification Services, SQL Notification Services, SQL MobileMobile
Multiple versions of SQL Multiple versions of SQL Server from one interfaceServer from one interface
Rich Management & Rich Management & authoringauthoring
PerformancePerformance Manage multiple servers, Manage multiple servers,
MANY objectsMANY objects Combines:Combines:
Enterprise Manager, Query Enterprise Manager, Query Analyzer, Analysis Analyzer, Analysis ManagerManager
Building the DatabaseBuilding the Database
.NET Integration Choices.NET Integration Choices
Choice of where to run logicChoice of where to run logic Database, for logic that runs close to dataDatabase, for logic that runs close to data Mid-tier, for logic that scales outMid-tier, for logic that scales out Symmetric programming modelSymmetric programming model
Leverage skills middle tier & serverLeverage skills middle tier & server
Choice of programming language Choice of programming language C#, VB.NET, & Managed C++, for a safe, C#, VB.NET, & Managed C++, for a safe,
modern execution environmentmodern execution environment T-SQL continues to be supported & enhancedT-SQL continues to be supported & enhanced
Remains good choice for data-intensive proceduresRemains good choice for data-intensive procedures
Safe extended stored proc (xp) Safe extended stored proc (xp) replacement replacement
VS 2005 VS 2005 ProjectProject
Assembly: “taxlib.dll”
VB, C#VB, C# BuildBuild
SQL ServerSQL Server
SQL Data Definition:SQL Data Definition: create assembly … create function … create procedure … create trigger … create type …SQL Queries: SQL Queries:
select sum(tax(sal,state)tax(sal,state))from Employee where county = 'King'
Runtime hosted by SQL
(in-proc)
The Developer ExperienceThe Developer Experience
Managing AssembliesManaging Assemblies Loaded and stored inside SQL ServerLoaded and stored inside SQL Server
Cataloged Cataloged with CREATE ASSEMBLYwith CREATE ASSEMBLY Dropped with DROP ASSEMBLYDropped with DROP ASSEMBLY
Collated as sets of filesCollated as sets of files Assembly, References, PDB, source filesAssembly, References, PDB, source files
Three Permission SetsThree Permission Sets Safe - compute, access local dataSafe - compute, access local data External - files, registry, network, web External - files, registry, network, web
servicesservices Unsafe – full trust, unmanaged CodeUnsafe – full trust, unmanaged Code
Extending the DatabaseExtending the Database
BizTalk Server 2006 BizTalk Server 2006 EnhancementsEnhancements
MMC for Enterprise Management Single View for Operations
and Monitoring Application-level Management Engine and Infrastructure
Investments
Comprehensive Comprehensive ManagementManagement
and Operationsand Operations Windows 64-bit (x86) SQL Server 2005 Support Visual Studio 2005/.NET 2.0 Virtual Server 2005
Windows Server SystemWindows Server SystemIntegrationIntegration
Real-time BAM Alerting and Notification
BAM Portal and reusable web components
SharePoint Adapter for deeper WSS integration
Business User Business User EmpowermentEmpowerment
Simplified Setup Tools for Enterprise
Application Deployments Seamless upgrade from
BizTalk Server 2004
Setup, Upgrade and Setup, Upgrade and DeploymentDeployment
How BizTalk Messaging WorksHow BizTalk Messaging Works
BizTalk
Messages
MessageBox
Subscriptions
Receive Port
Message
Orchestration
Send Port Group
Send Port(File Drop)Send Port(File Drop)
Send Port(HTTP)Send Port(HTTP)
Map
Map
Send Port(HTTP)Send Port(HTTP)
Map
Message
MapsMaps
Receive Location(HTTP)
Receive Location(HTTP)
Receive Location(File Drop)
Receive Location(File Drop)
Message
BizTalk Developer ToolsBizTalk Developer Tools Visual Studio 2005 Visual Studio 2005 Runtime built on .NET Framework 2.0Runtime built on .NET Framework 2.0 Flat-File Import wizardFlat-File Import wizard Improvements for OrchestrationImprovements for Orchestration
Zoom in / Zoom OutZoom in / Zoom Out Collapsed and expanded Collapsed and expanded
shapes preserved across savesshapes preserved across saves Array support for Web Services Array support for Web Services
((consuming only, no publishingconsuming only, no publishing)) Jagged array support Jagged array support
(no multidimensional arrays)(no multidimensional arrays) Access the context properties Access the context properties
of the message part of a of the message part of a multipart messagemultipart message
Exists operator support for Exists operator support for properties (example: public static properties (example: public static methods of a .NET class can be methods of a .NET class can be called such as invoking pipelines called such as invoking pipelines components)components)
Allow variable number of Allow variable number of message parts.message parts.
Unique event log id’s for better Unique event log id’s for better MOM support.MOM support.
Add syntax and API’s to access Add syntax and API’s to access correlation contents.correlation contents.
BizTalk Server 2006BizTalk Server 2006
Business Activity Business Activity MonitoringMonitoring Ask real-time questionsAsk real-time questions
How many orders are waiting to be How many orders are waiting to be shipped?shipped?
What is the total value of my music What is the total value of my music inventory? inventory?
Ask aggregation questionsAsk aggregation questions How much does it cost to produce one How much does it cost to produce one
poster?poster? What is the average throughput time for What is the average throughput time for
special orders right now? special orders right now? Capture business data and events Capture business data and events
New Features in BAM New Features in BAM 20062006 Business alert experience for end Business alert experience for end
usersusers Out-of-box dashboard (BAM Portal)Out-of-box dashboard (BAM Portal) Native integration with BizTalk Native integration with BizTalk
MessagingMessaging Distributed BAM infrastructureDistributed BAM infrastructure SDKSDK
Dynamic WSS web part generatorDynamic WSS web part generator Integration with Office Scorecard Integration with Office Scorecard
Accelerator, SQL Reporting ServicesAccelerator, SQL Reporting Services Custom Interception of business events Custom Interception of business events
directly from Web servicesdirectly from Web services
INFORMATION INFORMATION WORKERSWORKERS
Real-time monitoringReal-time monitoringof business of business
BUSINESS ANALYSTBUSINESS ANALYST
Understands business Understands business requirementsrequirements
DEVELOPERDEVELOPER
Maps to run-time Maps to run-time componentscomponents
BAM DynamicBAM DynamicInfrastructureInfrastructure
IT PROIT PRO
ProvisionsProvisionsthe Infrastructurethe Infrastructure
ObservationObservationModelModel
Creates
Creates
Maps to Maps to ImplementationImplementation
“Right tools for the right user”
ODBAODBABAM Design BAM Design WorkbookWorkbook
BAM Manager
Tracking Tracking Profile Profile EditorEditor
BAM BAM PortalPortal
DeploysDeploys
BAM Roles & ToolsBAM Roles & Tools
SQL Server CatalogSQL Server Catalog
Report Server
Delivery
Delivery Targets(E-mail, File share,
Custom)
Security Services(NT, Passport,
Custom)
Security
Data Sources(SQL, OLE DB, ODBC,
Oracle, Custom)
Output Formats (HTML, Excel, PDF, Custom)
Report Processing
Browser
Management
Custom App
URLURL WMIWMI Web ServiceWeb Service
Data Retrieval Rendering
Reporting Services Reporting Services ArchitectureArchitecture
Report BuilderReport Builder Built on top of familiar Microsoft Office paradigms Built on top of familiar Microsoft Office paradigms
Reports built via report templates (table, matrix, Reports built via report templates (table, matrix, chart)chart)
““Click-Once” application deployed from the RS Click-Once” application deployed from the RS server server
Users download and Users download and launch the client from launch the client from Report ManagerReport Manager
Finished reports can be Finished reports can be saved on the serversaved on the server
BAM and Report BuilderBAM and Report Builder
VSIP Partners
© 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.