Mohammad Ashraful Alam, Chief Architect, desme Inc. MVPOverview of Visual Studio Team System 2010
Agenda Common Business Problems What Is Visual Studio Team System? A Brief Overview of Visual Studio Team System Feature and Architecture Exploring Few Cool Features of Visual Studio Team System
Common Business Problems How do we build high quality applications that deliver real business value? How can we ensure that all members of the team – both technical and non-technical – are part of the process? How can we get the most value from our existing code assets? How do we make powerful modeling tools available to everyone in the application lifecycle?
Application lifecycle management (ALM) is the marriage of business management to software engineering made possible by tools that facilitate and integrate requirements management, architecture, coding, testing, tracking, and release management. Visual Studio Team System is a set of software development, collaboration, metrics, and reporting tools from Microsoft, to evolve ALM. What is Visual Studio Team System?
Visual Studio Team System 2010 Tools and Applications Microsoft Visual Studio Team Suite 2010, includes: Microsoft Visual Studio Team Architecture 2010 Microsoft Visual Studio Team Development 2010 Microsoft Visual Studio Team Test 2010 (includes Microsoft Test and Lab Manager) Microsoft Visual Studio Team Architecture 2010 Microsoft Visual Studio Team Development 2010 Microsoft Visual Studio Team Test 2010 (includes Microsoft Test and Lab Manager) Microsoft Visual Studio Team Test 2010 Essentials (includes Microsoft Test and Lab Manager) Microsoft Visual Studio Team Lab Management 2010 Microsoft Visual Studio Team Foundation Server 2010
What Can You Do With Visual Studio 2010? Cloud Development Parallel Development Web Development (including Silverlight) C++ Development Sharepoint Development Windows 7 Development (ex. Touch screen features with WPF 4.0) Office Business Application Development
Visual Studio Team System 2010 > Overview Architecture Architecture Explorer Layer diagram Use case designer Activity designer Component diagram Logical class designer Sequence diagram Modeling project system UML Model explorer Architecture validation during build
Historical debugging Test impact analysis Improved code analysis Improved profiling (especially multi-tier) Database extensibility Visual Studio Team System 2010 > Overview Development & Database
Visual Studio Team System 2010 > Overview Lab Management Multi-tier Environment creation and management Automated deployment Easily manage machine pools (that contain several physical hosts, on which we can automatically allocate the best machine to run on ) Network fencing Checkpoints
Visual Studio Team System 2010 > OverviewTest Test planning Test case management Test prioritization Project quality reports Manual test execution Diagnostic recording (environment, video, etc) UI Automation recording Coded UI tests
Visual Studio Team System 2010 > OverviewTeam Foundation Server Work item hierarchy & linking Improved Agile template MOSS & WSS Dashboards Simplified reporting Improved support for parallel development Rollback Build queuing and pooling Gated checkin Simplified setup Scale out of web and data tiers Admin console Project move/archive/restore
Seems Lot? Let’s see few of these more closely….
Visual Studio Team System 2010 > ArchitectureArchitecture Explorer Explore existing code assets visually The Architecture Explorer Diagram offers multiple views of a system and show relationships between various elements. The screenshots next show two different visualizations of the assembly dependencies in my solution ..
Visual Studio Team System 2010 > ArchitectureUML Support Logical Class Diagram Use Case Diagram Sequence Diagram Component Diagram Activity Diagram
Visual Studio Team System 2010 > ArchitectureUML Support New Project Type: Modeling Project Add New Item ..
Visual Studio Team System 2010 > ArchitectureUse Case Diagram
Visual Studio Team System 2010 > ArchitectureActivity Diagram
Visual Studio Team System 2010 > ArchitectureComponent Diagram
Visual Studio Team System 2010 > ArchitectureLogical Class Diagram
Visual Studio Team System 2010 > ArchitectureSequence Diagram
Visual Studio Team System 2010 > DevelopmentHistorical Debugger The historical debugger allows a developer to set up a break point and move from it backwards in time. Not just the application pointer is turned back but the entire application is gradually returned to previous states. This hugely improves the debugging process, and it has been a long awaited feature. Remote historical debugging is also possible.
Visual Studio Team System 2010 > Development Test Impact Analysis Targeted at teams will lots of unit tests, the Test Impact Analysis helps determine which unit tests are affected by a code change and suggests the test to be run.
Visual Studio Team System 2010 > Development Database Extensibility In VSTS 2010 Development edition, Microsoft built out a very rich extensibility platform (known as a Database Schema Provider) to enable 3rd parties to extend Visual Studio Team System with offline design, development, testing and change management of non SQL Server databases. At Tech Ed 2008, IBM demoed an early prototype of the DB2 Database Schema Provider integrated into VSTS 2010. And in February of this year, Quest announced that they are building an Oracle DSP to allow Oracle developers to work within VSTS 2010 to manage their database changes right alongside their application changes.
Visual Studio Team System 2010 > Lab Management Overview Visual Studio Team System Lab Management is a new member of the Visual Studio Team System 2010 family of products. Lab Management enables you to create, store, and track virtual environments for use in application development, deployment, and testing.
Visual Studio Team System 2010 > Lab Management High Level Architecture On the server side, Lab Management service is one of the many services running inside Team Foundation Server (TFS). On the client side, the “Microsoft Test and Lab Manager” tool (earlier known as “Camano”) is still the tool to manage your virtualized assets. Reference: Amit Chatterjee's Blog
Visual Studio Team System 2010 > Lab Management Cool Features Network Fencing Checkpoints
Visual Studio Team System 2010 > Test Overview
Visual Studio Team System 2010 > TestTest Planning
Visual Studio Team System 2010 > TestManual Test Runner Standalone tool Enables execution of test cases Collects system data and event log Captures still images and video Enables filing a new bug Reference: Microsoft Visual Studio Team System 2010, Richard Erwin