170 likes | 488 Views
ALM with SharePoint 2010 and Visual Studio 2010. Paul Yuknewicz Lead Program Manager, Visual Studio. paulyuk@microsoft.com. Session Objectives and Takeaways. Session Objective(s): Discuss why ALM is important Review ALM themes in Visual Studio 2010
E N D
ALM with SharePoint 2010 and Visual Studio 2010 Paul Yuknewicz Lead Program Manager, Visual Studio paulyuk@microsoft.com
Session Objectives and Takeaways • Session Objective(s): • Discuss why ALM is important • Review ALM themes in Visual Studio 2010 • Show how ALM can be used with SharePoint solutions • Key Takeaway – SharePoint developers & testers can use the ALM features in VS2010
Why ALM? Idea is here Legacy Code Broken Builds Reporting overhead “No-Repro” Bugs Poor Estimation of cost and time Hardware costs Poor Documentation Integration Issues New Team Members No Shared Vision Poor Usability Changing architecture Solution is here Build Quality Heterogeneous Environment Scope Creep Quality concerns Changing Requirements
Proactive Project Management • Optimized for Iterative Development • Ensure productivity and react to potential risks before they happen • Understand Project Health • Detailed reports let you understand what is “Really” going on with the project • Manage Projects Your Way • Use Microsoft Project or Excel based agile planning documents to keep control of your projects
Write Better Code - Dependency Diagrams - Understand code dependencies visually and understand where to make changes • Gated Check-In • Stop build breaks before they happen • Code Analysis and Code Metrics • Help you find and fix potential problems before you make them
Testing Done Right • Test and Lab Manager • Manual Testing for the 21st century • Plan, Manage and Execute tests from one place • Virtual Test Environments • Reduce the overhead of maintaining physical test environments • Share Virtual environments between team members • Web and Load Testing • Know your code is ready for the big time • Measure performance under real time load conditions and ensure that your applications are ready for release
Spend Less Time Debugging • IntelliTrace™ • Make “No-Repro” History with Actionable Bugs • Test Impact Analysis and Code Coverage • Run the Right Tests and only the Right Tests • And know you have really tested you code • Coded UI Tests • Automated regression tests let you find bugs earlier
Application Lifecycle Fix Bugs (repeat as necessary) Developer Machine Team Foundation Server Check In Development F5 Deploy Nightly Build -OR- Continuous Integration Testing Staging TFS Build Server Open/Close Bugs SharePoint Projects Warm-blooded user testing WSP Build SP2010 DLL’s Deploy using PowerShell Automated testing Run Tests ?
Application Lifecycle Developer Machine Team Foundation Server Check In Development F5 Deploy Nightly Build -OR- Continuous Integration Testing Staging TFS Build Server SharePoint Projects WSP Build SP2010 DLL’s Deploy using PowerShell Run Tests ?
Application Lifecycle Team Foundation Server Staging Open Bugs Warm-blooded user testing WSP
Application Lifecycle Fix Bugs (repeat as necessary) Developer Machine Team Foundation Server Development F5 Deploy Nightly Build -OR- Continuous Integration Testing Staging TFS Build Server SharePoint Projects WSP Build SP2010 DLL’s Deploy using PowerShell Run Tests ?
Application Lifecycle Team Foundation Server Staging Close Bugs Warm-blooded user testing WSP
Application Lifecycle Fix Bugs (repeat as necessary) Developer Machine Team Foundation Server Check In Development F5 Deploy Nightly Build -OR- Continuous Integration Testing Staging TFS Build Server Open/Close Bugs SharePoint Projects Warm-blooded user testing WSP Build SP2010 DLL’s Deploy using PowerShell Automated testing Run Tests ?
SharePoint ALM Specifics • Team Build • Using TFS TeamBuild for SharePoint projects • http://msdn.microsoft.com/en-us/ff622991.aspx • Unit Testing • Pex/Moles – Microsoft Research project • http://research.microsoft.com/en-us/projects/pex/ • http://channel9.msdn.com/posts/matthijs/Pex-Unit-Testing-of-SharePoint-Services-that-Rocks/ • http://research.microsoft.com/en-us/projects/pex/pexsharepointbehaviors.pdf • TypeMock – Commercial product
SharePoint ALM Specifics • Integration Testing • Currently MSTest is .NET 4.0 only • Nunit or Xunit can be used • Coded-UI test work well also • IntelliTrace • Not supported for 64-bit during F5 – FIXED in SP1! • Capture IntelliTrace log in MS Test Manager • Replay captured .iTrace logs in VS
SharePoint Platform Improvements • BindingRedirect in manifest.xml • Redirect existing code to new assemblies • Support for versioned feature upgrades • Declarative & Programmatic actions on upgrade • Feature Upgrade Query Object Model • Determine what features are installed and their versions
Resources Dev center: http://msdn.com/sharepoint Team Build How-To: http://msdn.microsoft.com/en-us/library/ff622991.aspx