Stephen Kaufman Delivery Architect Microsoft Consulting Services SOA312 How Life Used to Be How did we do things with 2006 and R2 Remember how we.

Download Report

Transcript Stephen Kaufman Delivery Architect Microsoft Consulting Services SOA312 How Life Used to Be How did we do things with 2006 and R2 Remember how we.

Stephen Kaufman
Delivery Architect
Microsoft Consulting Services
SOA312
How Life Used to Be
How did we do things with 2006 and R2
Remember how we used to:
Test the mapper
Submit a test, modify and test again
Validate, save xsl, add to solution, debug
Challenges
Agenda
ALM Experience (phases and then capabilities)
Plan
Requirements Management
Project Management
Develop
Visual Studio Environment for BizTalk
Improvements in the BTS Project System
TFS Integration
Team Test Functionality
Enhanced Debugging Support
MSBuild
Operate/Monitor
Session Objectives and Takeaways
Describe the new developer and team
productivity features
Describe the ALM experience
Demonstrate real world examples for
debugging, MSBuild integration and
unit testing.
Questions as they occur…
BizTalk Server 2009 Themes
Updated Platform Support
Support for .NET Framework 3.5 SP1
and Visual Studio 2008 SP1
Take advantages of the
latest developer tools
Support for Windows Server 2008
and SQL Server 2008
Hyper-V support
Increased performance & scale
Business to Business Integration
New Mobile RFID Platform
New RFID device management and industry
standards support
Enhanced Support for EDI and AS2 Protocols
and Drummond certification
Updated SWIFT Support and SWIFTReady
Financial EAI Gold certification
SOA and Web Services
New UDDI v3 Web Services Registry
New and enhanced LOB adapters (Oracle
EBS, SQL)
Enhanced host systems integration
(MQ, CICS, IMS)
Enhanced BAM support
ESB Guidance 2.0 delivers updated
prescriptive guidance
Developer & Team Productivity
New Application Lifecycle Management
(ALM) support
Support for TFS - integrated source control,
bug tracking, MSBuild automation
Enhanced Developer Productivity
Visual Studio project system updates
ALM Experience
ALM Experience
What is ALM?
Benefits
Increases Business Value by enabling cross functional
collaboration (Dev, Test, Project management)
Features
Integrated Source Control
Bug Tracking
Task Management
Unit Testing integration
Build and Deployment
ALM Supported Collaboration Focuses on Team
Results and Delivering Value
Developer
Business
Analyst
Tester
Architect
Project
Manager
DB Pro
Designer
“We’re
done”
“We’re
done”
“We’re
done”
“We’re
done”
“We’re
done”
ALM Experience
1. Team Explorer
2. Team Queries
3. WorkItems  Add Work Item
4. Add New Task
5. WorkItem View
6. TFS Web Access
7. View Task in TFS Web Access
8. Update Task in TFS Web
9. Review Task in Team Explorer
10. Opening Project SharePoint Portal
11. Project SharePoint Portal
12. Portal - All Site Content
13. TFS – Another Project View
14. TFS Report Sample – Bug Rates
ALM Experience
Plan
ALM Experience - Plan
Requirements Management
Standard TFS integration functionality
Work Item Management
SharePoint portal for project, TFS Web Access
Partner integrations
Project Management
Project Server Integration
Capture Project Schedule and Tasks from Project Server
as Work Items in TFS
Project Server – TFS Connector (CodePlex)
ALM Experience
Develop
Visual Studio Enhancements
Compiler Changes
Designer Changes
Upgrade Wizard
MSBuild and Deployment
Project System
BizTalk Project System
BTS Project - Flavored version of baseline C# Project
from Visual Studio 2008
Core Features from Baseline project
Project and Item Templates
Integrated designer and debugging experience
Command, Context, and toolbar options
Build and Validate Error Navigation
Source Control and TFS Integration
Project Assembly properties
Flavoring adds custom features to the baseline project
BizTalk Project System Enhancements
Property Window Integration
Project Properties displayed in VS Project Designer
Schema and Map Properties are displayed in a
separate window
Add Web Reference available through Add
Service Reference dialog
Release and Debug Build Types
Replace Development and Deployment build types
from earlier versions
BizTalk Project System Enhancements
Embedding Tracking and debugging information
“Embed Tracking Information” and “Generate
Debugging Information” output configuration
properties
replaced by Define TRACE constant and Define DEBUG
constant build options
BPEL Compliance configuration property replaced
by BPEL Compliance project property
BizTalk Project System Enhancements
Unit testing Support
Migration from previous versions
Use Conversion Wizard
Project Files
Represents the BizTalk
Project Factory
Represents the C#
Project System
Project Files
BizTalk MSBuild tasks are implemented in the
Microsoft.VisualStudio.BizTalkProject.BuildTasks assembly, which you'll find in the
'Microsoft BizTalk Server 2009\Developer Tools' folder.
Project Properties
These items specific properties are visible when you select a file in Solution Explorer and open the
Properties window
<File Path="E:\Projects\BizTalk\PipelineTesting\SampleSchemas\Map1.btm">
<ValidateTestMapInput>True</ValidateTestMapInput>
<ValidateTestMapOutput>True</ValidateTestMapOutput>
<TestMapInputInstanceFilename></TestMapInputInstanceFilename>
<TestMapOutputInstanceFilename></TestMapOutputInstanceFilename>
<TestMapSourceType>0</TestMapSourceType>
<TestMapTargetType>0</TestMapTargetType>
<EditorOutputInstanceFilename></EditorOutputInstanceFilename>
<EditorInputInstanceFilename></EditorInputInstanceFilename>
<GenerateInstanceOutputType>0</GenerateInstanceOutputType>
<ValidateInstanceInputType>0</ValidateInstanceInputType>
<PropertySchemaFileName>PropertySchema.xsd</PropertySchemaFileName>
<AutoRefreshSchema>0</AutoRefreshSchema>
</File>
<File Path="E:\Projects\BizTalk\PipelineTesting\SampleSchemas\Sample.xsd">
<ValidateTestMapInput>True</ValidateTestMapInput>
<ValidateTestMapOutput>True</ValidateTestMapOutput>
<TestMapInputInstanceFilename></TestMapInputInstanceFilename>
<TestMapOutputInstanceFilename></TestMapOutputInstanceFilename>
<TestMapSourceType>0</TestMapSourceType>
<TestMapTargetType>0</TestMapTargetType>
<EditorOutputInstanceFilename></EditorOutputInstanceFilename>
<EditorInputInstanceFilename></EditorInputInstanceFilename>
<GenerateInstanceOutputType>0</GenerateInstanceOutputType>
<ValidateInstanceInputType>0</ValidateInstanceInputType>
<PropertySchemaFileName>PropertySchema.xsd</PropertySchemaFileName>
<AutoRefreshSchema>0</AutoRefreshSchema>
</File>
Visual Studio Environment
BizTalk Team Test Functionality
Create unit tests for Maps, Schemas, Pipelines
Enable Unit testing by setting property on
Deployment tab for a BizTalk project
BizTalk Unit Testing Fundamentals
Framework provides base
classes for testability
Add reference to assembly
Microsoft.BizTalk.TestTools to
your project
Artifacts are automatically
derived from
TestableSchemaBase
TestableMapBase
TestablePipelineBase
Team Test Scenario Enablement
Use attributes as in a normal Test Project
WorkItem attribute
Apply custom attributes for enhanced logging,
diagnostics
Test results can be published to TFS Data
Warehouse and Work Item Store
Debugging Support
Debug Map Feature – XSLT
Inline XSLT Debugger
Debugging Orchestrations and Pipelines
BizTalk Trace Functionality – private variables are
now visible in the trace
We can now capture trace for off-line debugging –
you can tell between engine code and custom code
We can now enable tracing at every level
Debugging Support
Health and Activity Tracking tool (HAT)
HAT is removed
Features integrated within MMC
New queries, tracked message, tracked services
Team Test Functionality and Debugging Support
Build Automation
Automate your BizTalk builds… including
scheduled or on demand
Refined control over your process
Moving assemblies
Building Applications
Generating .msi files
Options
MSBuild
PowerShell
Scripts (.vbs, .bat) and other options (Nant)
MSBuild and Deployment
Custom tasks defined in BizTalkC.Targets and
BizTalkCommon.Targets
Every BizTalk project imports
Microsoft.Csharp.Targets and BizTalkC.Targets
Support for incremental builds
2 Pass Build process
Built in two passes, first pass builds: schemas, maps, pipelines; second
pass builds orchestrations
VSDEPLOY output shown in Deploy window
Deployment properties stored in btproj.user file
No custom task for Deployment
Standalone MSBuild Feature during Setup
MSBuild and Deployment
BTProj files follow MSBuild format
Specific tasks to compile individual artifacts
XLangTask
SchemaCompiler
MapperCompiler
PipelineCompilerTask
Tasks contained in assembly
Microsoft.VisualStudio.BizTalkProject.BuildTasks.dll
VSDEPLOY output shown in Deploy window
Deployment properties are stored in btproj.user file
New MSBuild Tasks
Pipelines:
Maps:
<ItemGroup>
<Pipeline Include="CSV_FF_RecvPipeline.btp">
<Namespace>Samples</Namespace>
<TypeName>CSV_FF_RecvPipeline</TypeName>
</Pipeline>
</ItemGroup>
<ItemGroup>
<Map Include="Map1.btm">
<TypeName>Map1</TypeName>
<Namespace>Samples</Namespace>
<SubType>Task</SubType>
</Map>
</ItemGroup>
Schemas:
<ItemGroup>
<Schema Include="Schema1.xsd">
<Namespace>Sampls</Namespace>
<TypeName>Schema1</TypeName>
</Schema>
</ItemGroup>
Orchestrations:
<ItemGroup>
<XLang Include="BizTalk Orchestration.odx">
<TypeName>BizTalk_Orchestration</TypeName>
<Namespace>Samples</Namespace>
<SubType>Task</SubType>
</XLang>
</ItemGroup>
MSBuild
Does what we have seen so far cover everything required?
SDC Tasks
http://www.codeplex.com/sdctasks
MS Build Extensions
http://www.codeplex.com/MSBuildExtensionPack
MSBuildTasks
http://msbuildtasks.tigris.org/
MSBuild Rules Tasks
http://www.codeplex.com/BtsRulesEngine
Visualizers
http://www.codeplex.com/msbuildstudio
http://www.codeplex.com/BizTalkMsBuildTool
Team Build Integration
Team Build – Build Definition
Build Definition - Workspace
Build Definition - Project File
Build Definition – Project File Creation
Build Definition – Project File
Creation Wizard
Wizard - Build Options
Build Definition – Project File
Build Definition – Retention Policy
Build Definition – Agent - Location
Build Agent Properties
Build - Triggers
MSBuild and Deployment
BizUnit
Usable with MSTest and Nunit
Flexible and extensible declarative test
framework for distributed systems
Generic reusable test steps
Test cases defined in XML
Auto generation of test cases possible
Target multiple test environments
ALM Experience
Operate/Monitor
Operate/Monitor
BAM
Support for SQL Server 2008 and Excel
BAM Whitepaper
ILL Sessions
Hands On Labs
System Center Operations Manager
BizTalk Management Pack
Reporting under the Group Hub in the Admin Console
Administrators can log Items back into TFS to provide
full circle lifecycle
Announcing the BizTalk ESB Toolkit
Name change
From “ESB Guidance” to “BizTalk ESB Toolkit”
General Availability
Mid June 09
Packaging &
Distribution
Signed binaries and samples code (MSDN -> Download Center)
Documentation (MSDN)
Private Fixes (Microsoft Connect site)
License
free for BizTalk Customers
Support &
Bug Reporting
Managed MSDN forums with Microsoft Customer Support
Services* in the loop to fix issues as required
Online Community
Managed MSDN forums
* Ramping up through the summer
Summary
BizTalk Server 2009 provides an integrated
development platform within Visual Studio
Deep integration is enabled by flavoring existing
C# project system and additional customizations
New ALM experience includes Source Control,
TFS integration, Unit Testing, MSBuild
and Deployment
More Productive and Efficient BizTalk developer
experience
Call To Action
Here is what you should do when you get back
to the office
Resources
www.microsoft.com/teched
www.microsoft.com/learning
Sessions On-Demand & Community
Microsoft Certification & Training Resources
http://microsoft.com/technet
http://microsoft.com/msdn
Resources for IT Professionals
Resources for Developers
www.microsoft.com/learning
Microsoft Certification and Training Resources
Track Resources
SOA
www.microsoft.com/soa
msdn.microsoft.com/wcf
msdn.microsoft.com/wf
www.microsoft.com/net
msdn.microsoft.com/biztalk
www.microsoft.com/biztalk
“Dublin”
www.microsoft.com/net/dublin
“Oslo”
msdn.microsoft.com/oslo
www.microsoft.com/net/oslo.aspx
msdn.microsoft.com/azure/netservices
www.microsoft.com/azure/netservices
twitter.com/dotnetservices
TFS Integration
Source Code Control
Code Organization Strategies
Use a Consistent Folder Structure for Solutions and Projects
Keep Source Control and File System Structures Identical
Define and Use a Common Root Folder
Create a Master Solution That Will Hold All Projects
Store All BizTalk Projects Under the Master Solution
Separate Pipeline Projects into Distinct Projects
Keep Deployment and Test Scripts with Their Projects
Use Unique Strong Name Keys When Appropriate
BizTalk File Types and merging
TFS Integration
Version Control
When to check-in BizTalk Server Projects
Checking in intermediate versions
Assembly version Vs File Version
Implications of changing version numbers
Map Function Version Numbering
Versioning non-BizTalk Server Project files
VSTS & TFS Integration
Application lifecycle for BTS projects
Support for team development
MS Project Server integration
Consistent automated build
Integrated source control
Bug tracking system
Bugs
Non Functional
Requirements
Tasks
Use Case
Business
Analyst
Change
Requests
Test
Project
Manager
Dev
Team
Production
Errors
Operations
Complete an
evaluation on
CommNet and
enter to win!
© 2009 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.