Posted by malcolmdavis
on May 3, 2007 at 7:28 AM PDT
Is Microsoft still playing catch up with tools, technology, and techniques?
Several years ago, I spent a summer doing contract work with Microsoft Visual Studio 2003. I was amazed at the low quality of Visual Studio. A major pain to install and configure, no refactoring, performed horribly, blew up all the time, etc.
Now there is Microsoft Visual Studio Team System (VSTS). For the most part, VSTS is a copy of the technology that is available free in Java world.
In an article that .NET developer, Jeff Levinson gives a brief, description of TDD capabilities of VSTS. Some of the oversights convey the missing mindset and limitations of the VSTS, and the developers that use the tools.
1. The article description says "Team Edition for Software Testers". In 20 years of software development, I have never seen testers write low-level unit test. That is one of the reasons (among many) that there is a push to get developers to carry out the task. Furthermore, TDD is about developers designing the code via tests, not about not testers designing the code.
2. The article describes disadvantages to using TDD. "TDD does not allow you to create class diagrams and perform optimization up front." The lack of class diagrams and perform optimization is a misnomer. The concept is to design classes from an interface perspective, however there is nothing keeping developers from using class diagrams (both high-level and low-level UML diagram techniques) to design the interfaces. I see the design misconceptions from people new to Agile, claiming to be agile but never having been involved with an actual agile project.
3. 100% Myth.