During a technical conversation with one of my colleagues, I have been asked asked about the Top 7 addition to VS 2012 ALM tools from my point of view. I answered as follows:
If we mean ALM tools collectively, not only TFS then, I will say that:
1-SharePoint Testing Support : It is something that came too late but, finally it came to rock.
2-DevOps tools and techniques : It is a materialization of the Microsoft/Forrrester's Joint study that took place in 2006 (as far as I remember). 70% of Existing IT Budgets in the Fortune 500 Corporation are spent on maintaining existing systems. Delivering a way to track the quality of systems during their production time became something crucial to have.
3-TFS Service RTM: is a Brilliant offering that will bring new users to the TFS umbrella. Simply it offloads lots of small groups from incurring great amount of Capex budget, and replace it with an affordable Opex budget. Despite the fact of that there is no single clear walk-through that could be provided by the product team to migrate from On Premises solution to the cloud based solution, I expect this service to boom in the next coming years. Moreover, It will open a new opportunity for offshore teams to share their project's artifacts with their primary contractors in a much easier way.
4-The Feedback tool, along with the introduction of Storyboarding tool: It simply bridges the gap between End users, and the product team. In an old study of IBM(late 70s); this gap my cost product team 300+% of the original product cost (Reference:Sarson’s Analysis, and Design Book 1978 edition). The business agility and communication revolution may make this percentage hike up. Storyboarding and Feedback tools could save product teams a hell amount of time, and money that could be lost during the UATs.
5-MTM Enhancements: Despite they are detailed features but i count them important:
- Video Recording Enhancements: It solves lots of storage overflow problems due to video recording sizes.
- Explanatory testing: It provides a better way to implement agile testing technique. Moreover it answer the question that I used to be asked, If we don't have preset Test Cases how can we test using MTM?!
- Testing for Windows Store Applications: It was unexpected to evangelize everywhere for Windows 8 Development while not having an ALM way to make some sort of exploratory and manual testing. It gives a clear message from the ALM team that we are always aligned.
6- Unit testing Enhancements: the new Unit Testing using Fakes Framework: I know that it is a unit testing thing with professional edition but finally it is related to the ALM practices.
- Unit Testing Fakes Framework: I think part of that is related to the Microsoft Research labs efforts during the PEX project which, as far as I know, still running. For years, teams used to use their own fakes framework, or community owned fakes framework. Depending on a Microsoft standard one can streamline unit testing in many good ways. A good scenario that I might recommend Fakes Framework in is the scenario of having a primary contractor that divided a project between him, and one of his partners. They can freely use the same standard framework to makes sure that their unit test can go smoothly based on same unit tests.
- Enhancements happened to the performance of the unit tests.
7- Code Reviews: I consider this tool, a wonderful way for teaming up. Maybe it doesn't have great engineering effort from the product team (which is the same case of storyboarding, and feedback tool) but It is really very helpful towards Bridging Dev/Dev gaps. It materializes a better way for Peer reviewing.