Visual Studio 2010: A Perspective - David Chappell


Published on

Presentation by David Chappell at "MSDN Presents: Windows Azure Platform" Event (Apr 13, 2010) .

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Visual Studio 2010: A Perspective - David Chappell

  1. 1. Visual Studio 2010: A Perspective David Chappell Chappell & Associates
  2. 2. Tools for Software Development An evolution 1970s-1980s 1980s-1990s 1990s-2000s Editors Integrated development environments Compilers (IDEs) Team development tools Build tools Version control tools Testing tools Reporting and tracking tools
  3. 3. Tools for Software Development The real goal: Optimizing the end-to-end process Development Tools Architecture Testing Tools Tools Design Documents Version Test Cases Control/ Build Tool Requirements Project Statistics Reporting Requirements Shared Server and Tracking Tools Tools
  4. 4. Illustrating Visual Studio 2010 Eclipse IDE Visual Studio Visual Studio Visual Studio Team Explorer Team Explorer Microsoft Test 2010 IDE 2010 Everywhere 2010 Manager 2010 Expression Studio Visual Studio Lab Web Browser Visual Studio Management SharePoint Team Foundation 2010 Microsoft Server 2010 Excel Microsoft Visual Studio 2010 Project Other Microsoft Other Vendors and Open Source
  5. 5. Illustrating TFS Visual Studio Team Foundation Server 2010 Work Item Version Tracking Control • Requirements/ User stories • Tasks • Test cases • Bugs •… Reports and Build Process Dashboards Management Templates • MSF for Agile Software Development • MSF for CMMI Process Improvement •…
  6. 6. Using Visual Studio 2010
  7. 7. Managing Requirements/User Stories  VS 2010 doesn’t define how requirements/user stories should be gathered  It does define how they’re managed – Using Requirement/User Story work items – Which can be linked to other work items Requirement X Requirement Y Bug Task Test Case Task Test Case Bug Task Test Case Task Test Case Bug Task Test Case Test Case Bug Bug Test Case
  8. 8. Managing Requirements/User Stories Example: Accessing User Story work items from Excel
  9. 9. Architecting the Solution  Visual Studio 2010 supports UML modeling – With Class, Sequence, UseCase, Activity, and Component diagrams – A UML diagram can be linked to a TFS work item • Such as linking a UseCase diagram to a Requirement  Other design/visualization tools include: – Layer Explorer for creating layer diagrams – Architecture Explorer for creating dependency graphs – More
  10. 10. Architecting the Solution An example layer diagram
  11. 11. Architecting the Solution An example dependency graph
  12. 12. Writing Code Toolkits and designers  VS 2010 includes toolkits for: – SharePoint development – Office development – Windows Azure development  It also includes: – The WPF and Silverlight Designer – The Workflow Designer for creating WF workflows – The O/R Designer for creating LINQ to SQL object model mappings – More
  13. 13. Writing Code Tools for writing better code  Refactoring support  Static code analysis – Examines code for security holes and more  Dynamic code analysis – Performance profiling – Code coverage, showing what’s being tested  Code metrics – Measuring complexity and maintainability  Debugging support – Including IntelliTrace
  14. 14. Testing Code  VS 2010 has lots of support for testing – It’s important  This release introduces Microsoft Test Manager (MTM), supporting: – Creating and managing test suites – Running manual tests – Running automated tests – More
  15. 15. Testing Code Gathering test results 1) Run Visual Studio test T 2010 IDE Application Microsoft Test Under Test Manager Tester Diagnostic R 2) Return Data Adapters test results (DDAs) Computer
  16. 16. Testing Code Example DDAs  IntelliTrace: Creates a detailed trace of an application’s execution, which a developer can replay  Action Recording: allows recording and replaying a manual test  Event Log: Collects information written to event logs during the test  Video Recorder: Records the screen of the computer the tested app is running on  Test Impact: Allows test impact analysis
  17. 17. Testing Code Using MTM: Examining a requirement’s test cases
  18. 18. Testing Code Illustrating Lab Management  Visual Studio Lab Management 2010 allows creating and managing VMs for a test lab – VMs can be created from predefined templates – The Lab Management client is part of MTM System Center Visual Studio Lab Manager Virtual Machine Lab Management Manager 2008 Microsoft Test Manager VM
  19. 19. Testing Code Using MTM and Lab Management: Preparing to run tests Visual Studio Lab VM 1) Create Management test lab VMs 3) Deploy test build Lab Manager TT TT 2) Create test suite TT TT Test Management Test Test Test Agent Agent Agent Microsoft Test Team Manager Foundation Server
  20. 20. Testing Code Using MTM: Running tests Lab Manager TT TT TT TT 1) Run test DDAs DDAs DDAs Test Test cases Management Controller Test Test Test R 4) Access Agent Agent Agent test results 3) Return Microsoft Test Team test results Manager Foundation Server 2) Run tests and collect test results
  21. 21. Testing Code Using MTM: Running a manual test
  22. 22. Testing Code Options for automated tests  Visual Studio 2010 supports several kinds of automated tests Coded Web UI Performance Unit Tests Tests Tests Database T T T T T T Unit Tests T T T T T T T T T T T T User Business Database Interface Logic
  23. 23. Testing Code Illustrating load testing Web Performance Load Test Tests Virtual User Test T T Pack Agent T T Test T T Test Agent T T Controller Test T T Agent T T Test T T Agent T T
  24. 24. Managing and Tracking the Project  VS 2010 provides: – Reports created using Excel or SQL Server Reporting Services – Dashboards created using SharePoint  The available reports and dashboards depend on what process template is used – They can also be customized
  25. 25. Managing and Tracking the Project Example report: Stories Overview
  26. 26. Managing and Tracking the Project Example dashboard: Quality
  27. 27. Adopting Visual Studio 2010
  28. 28. How Visual Studio 2010 is Packaged Mapping software to SKUs Visual Microsoft Visual Visual Studio Visual Visual Studio Studio Team Test Studio Team Team Foundation Studio IDE Lab Explorer Manager Explorer Server Management Everywhere x x x x x Visual Studio 2010 Ultimate* x x x Visual Studio 2010 Premium* x x x Visual Studio 2010 Professional* x x x Visual Studio Test Professional 2010 * x Visual Studio Lab Management 2010 Visual Studio Team Explorer Everywhere 2010 x *With MSDN subscription
  29. 29. How Visual Studio 2010 is Packaged Options for the IDE Visual Studio Microsoft Test Manager 2010 Ultimate Test Case Manual Fast Forward for Management Testing Manual Testing Web Performance Load UML IntelliTrace Testing Testing Modeling Dependency Layer Sequence Class Graphs Diagrams Diagrams Designer Visual Studio Remote Test Diagnostic Data Coded UI Test Impact 2010 Premium Execution Adapters Testing Analysis Performance Static Code Code Code Profiling Analysis Coverage Metrics Database Change Database Unit Database Test Database Management Testing Data Generators Deployment Visual Studio C#, VB, C++, F#, Windows Web SharePoint 2010 Professional JScript Development Development Development Windows Azure Office Multi-Core Unit Development Development Development Testing WPF/Silverlight Object/Relational Workflow XML Schema Designer Designer Designer Designer
  30. 30. Conclusions  Modern software development requires a diverse set of tools – Integrating those tools makes sense  Visual Studio 2010 provides an integrated set of diverse development tools – For large teams, small teams, and solo developers
  31. 31. About the Speaker David Chappell is Principal of Chappell & Associates ( in San Francisco, California. Through his speaking, writing, and consulting, he helps people around the world understand, use, and make better decisions about new technology. David has been the keynote speaker for many events and conferences on five continents, and his seminars have been attended by tens of thousands of IT decision makers, architects, and developers in more than forty countries. His books have been published in a dozen languages and used regularly in courses at MIT, ETH Zurich, and other universities. In his consulting practice, he has helped clients such as Hewlett-Packard, IBM, Microsoft, Stanford University, and Target Corporation adopt new technologies, market new products, train their sales staffs, and create business plans. Earlier in his career, David wrote networking software, chaired a U.S. national standards working group, and played keyboards with the Peabody-award-winning Children’s Radio Theater. He holds a B.S. in Economics and an M.S. in Computer Science, both from the University of Wisconsin- Madison.
  32. 32. Copyright © 2010 David Chappell Chappell & Associates www.davidchappell.comSOAP/WS-*