Q&A: Microsoft's Brian Harry Discusses ALM and Team Development in VS2010
Microsoft Technical Fellow and Product Unit Manager for Team Foundation Server Brian Harry talks about testing, data and team-based development in Visual Studio 2010.
Talk about the evolution of ALM and team-based development in Visual Studio. Where did we come from with Visual Studio 2005, VS2008 and Visual Studio Team System (VSTS)? And where is VS 2010 taking us?
Visual Studio has always been the premier tool for developers. We lead the industry in breakthrough developer productivity and have continued to innovate in the development experience with each new release.
However over the last few releases we have made a very significant investment in lifting the productivity across all of the development organization. We did this by focusing on additional roles in the team like the project manager, the architect and the tester, as well as really working to improving the flow of information between these roles.
What motivated the decision to sunset the VSTS brand and how was the decision made? Also, what kind of customer feedback did you get regarding ALM features being stashed in VSTS under VS2008? Did that cause confusion or issues?
The core rational behind the shift to a single brand for Visual Studio was the realization that Visual Studio itself had matured to a sophisticated offering that could support teams of all sizes. From the smallest and least mature teams to the most mature and demanding distributed organizations. We wanted to ensure that we had a single story for all of these users that really focused on delivering the right features to the right set of customers based on their needs.
The Tivo-like test functionality in VS2010 seems like a major breakthrough for the IDE. Can you talk about the genesis of this functionality in the VS2010 cycle? What challenges did the team face in enabling it?
Test was a major area of investment in Visual Studio 2010. We really wanted to streamline the interaction between development and quality assurance organizations so teams can focus on solving bugs, as opposed to spending valuable time just to find them.
We delivered on this vision with IntelliTrace, which records the application's execution history and guarantees that you can always reproduce the reported bug. When a tester discovers a bug, our tools automatically capture extensible and rich diagnostic information like IntelliTrace logs and other relevant artifacts that help a developer reproduce the issues, [such as,] indexed videos and screenshots for each new bug. When used with Visual Studio Lab Management 2010, server environment snapshots can be attached to bugs, enabling developers to connect to the test environment.
These investments greatly reduce the effort consumed in the endless game of "bug Ping-Pong." Our goal is to make the "no-repro" discussion a thing of the past.
Are developers today doing more data-related tasks? What about the risks of developers who are not database professionals, making critical decisions that could lead to disaster?
Developers and companies are taking a fresh look at data and how best to expose those data to internal and external consumers, while maintaining security and integrity. In corporate and Web environments, data are often locked in departmental silos or HTML pages and, as a result, there is a lost opportunity to capture value and create compelling applications.
One example in Visual Studio 2010 is that through WCF Data Services developers can service-enable data and publish via the Open Data Protocol (OData). This allows developers to create easily queryable services that can run through business logic to maintain the same level of security and control that was there previously.
In terms of the segmentation of roles between developers and DBAs, in Visual Studio 2010 there is a tooling experience for developers building stored procedures and data access layer code around debugging, modeling, and specification of deployment intent that will actually give DBAs more metadata to enable deployment integrity.
Visual Studio extensibility is now enabled by third-party database scheme providers such as IBM and Oracle. What trends led to this decisions?
Providing customers with choice and flexibility is something that our customers ask for and has become even more of an imperative in the current economic climate due to constrained IT budgets. As a result, we have enabled a provider model, Data Scheme Providers (DSPs), to give customers and partners more ways to take advantage of the capabilities within Visual Studio to reduce waste during the application lifecycle management process, regardless of the underlying database being used.
Clearly this is also important for customers who don't want to only use a single database for all of their enterprise requirements. With this extensibility, we believe Visual Studio is the best development tool for building applications that support the realities of heterogeneous environments and it clearly retains its position as the premier tool for developers working against SQL server.
On the Team Foundation Server (TFS) side, can you talk about how the Teamprise acquisition and how that changes Microsoft's approach to team-based development and collaboration? How did the Teamprise purchase impact TFS development for the 2010 cycle?
The Teamprise acquisition was in response to strong customer feedback that teams wanted to standardize on a single collaboration platform for the development process, across multiple technology sets. We recognize the heterogeneity of development shops. The asset purchase of the Teamprise technology proves our continued commitment to interoperability and our dedication to enabling customers to achieve greater business results, regardless of their current tooling.
The Teamprise technology and Microsoft Team Foundation Server facilitate greater collaboration for the building of higher-quality applications by teams currently using the Eclipse IDE or working from other operating systems such as Linux or Mac OS X.
Microsoft's Team Foundation Server is the backbone of quality application lifecycle management. Regardless of the developer tools you're using, working on Team Foundation Server will increase your development team's productivity. With the Teamprise technology, more developers now have access to these benefits.
About the Author
Michael Desmond is an editor and writer for 1105 Media's Enterprise Computing Group.