Application Security Testing: An Integral Part of DevOps
With the launch of Visual Studio 2005, Microsoft has introduced new pricing schemes for its marquee development tools and made changes to its MSDN subscription programs, which has led to some confusion—and even pain—for customers. Existing MSDN Universal subscribers who want Visual Studio 2005 through their subscriptions must upgrade to MSDN Premium subscriptions and choose either one of three Visual Studio Team System role-based products (Team Edition for Software Developers, Architects, or Testers) or the complete Visual Studio 2005 Team Suite. Until June 30, Microsoft is offering Universal subscribers the former upgrade for free and the latter for $1,200.
However, subscribers who miss that window face significant price increases. For example, Visual Studio Team Edition for Software Developers would cost $2,299 US as part of a MSDN Premium Subscription renewal, and a renewal of a MSDN Premium Subscription with Visual Studio Team Suite would be $3,499. If, like me, you're a MSDN Universal subscriber who expects to pay $2,500 per year and receive everything Microsoft builds in that year, these options can leave you feeling hoodwinked.
This article sorts through the confusing feature matrices, complex licensing schemes, and reams of marketing material to help you figure out which version of Visual Studio is best for you. It also offers some great cost-saving alternatives to the VS tools from non-Microsoft vendors.
Visual Studio's Development Team Roles: Specialization and Monetization
If you have read my previous editorials, you know how I feel about specialization—it's a good and necessary thing. You also know that I believe that few, if any, teams have enough specialists, and they usually have too many generalists.
To support specialization, tools for the various specialists are necessary. For example, designers and architects need UML modeling tools; developers need language, refactoring, and unit-testing tools; and testers need profilers and testing tools. The good news is that our industry is making progress, especially in modeling, refactoring, and unit-testing tools.
Microsoft has addressed some of these specialist tool needs in Visual Studio 2005 with individual Team Edition versions for Software Architects, Software Developers, and Software Testers. Unfortunately, the new products are all crammed in the already crowded Visual Studio, which has performance problems because it still relies too heavily on automation and COM. In fact, unit testing in Visual Studio has crashed on me more than once.
A bigger hindrance than performance may be cost. For example, as previously stated, if you opt for a new MSDN Premium Subscription with Visual Studio Team Suite, which includes all three of the role-based products, you'd pay $3,499 (or nearly $11,000, if you were a brand new customer). Are these prices fair for what are essentially a UML modeling tool and a unit-testing tool? To be fair, Microsoft includes additional products in Visual Studio Team Suite, but in my opinion they aren't compelling enough to warrant such a large price.
Meanwhile, Sparx Systems and Gentleware make great UML products that you can get for a couple hundred bucks each, and an excellent open source unit-testing product (NUnit) is available for free. For refactoring, I picked up the professional version of Refactor!, a great tool from Developer Express, for just $99. If the folks at Redmond had asked my advice, I would have told them to sell the tools separately, make them integrate-able, tack on a modest price increase, and keep the name MSDN Universal.
As a side note: At a price of $11,000, Microsoft has probably put MSDN Premium with Team Suite completely out of the budget range of small development shops with 10 or fewer developers, which oddly enough are often where a lot of new inventions are made. Ironically, NUnit was built by about five programmers and the test tools in Visual Studio for Testers likely wouldn't exist in its present incarnation or at all if NUnit's developers had not pushed the envelope in this area.
Which Visual Studio Is Right for You?
Microsoft is asking for a serious financial commitment to use its new Visual Studio tools, but it does offer streamlined, stripped-down versions of its products (called Express editions) for free. You must determine which Visual Studio is right for you and your budget. If you have limited funds, download an Express edition (for example, Visual Basic.NET Express). And, if you really want to send Microsoft a message about its pricing, don't update to any of the Team editions of Visual Studio.
For the rest of us, Visual Studio 2005 Professional is the old Enterprise Architect. You can use Visual Studio 2005 Professional and do an excellent job. If you need a unit-testing tool, then download NUnit (Nunit.org) for free. Or, for an outstanding UML tool, buy Enterprise Architect for UML from Sparx Systems. The Professional edition costs about $200.
Now, if you have to choose a Visual Studio Team edition, you most likely want Visual Studio Team Edition for Software Developers. This version has all the core language features and unit testing. Full-time testers may want the edition for testers and full-time architects may want the Architect edition. (However, almost no one should be happy about Studio for Architects because it doesn't include testing tools. So, it's okay for architects to design and code some of their designs, but not to unit test them? That's dumb.)
To summarize your Visual Studio purchasing options:
- If you have an existing MSDN Universal subscription, you can upgrade to one of the Team editions for free (I suggest Team Edition for Software Developers for most of you), or to Visual Studio Team Suite for $1,200 until June 30.
- If you want to send a message that the price increase is unacceptable or you are a starving student or hobbyist, get an Express edition for free.
- For most developers who aren't MSDN subscribers, Visual Studio 2005 Professional is the most cost-effective upgrade ($549), and you can get excellent testing and modeling tools for less than $300 from non-Microsoft vendors.
- If you have money to burn or are afraid of missing out on something—which is questionable—upgrade to Visual Studio 2005 Team Suite.
For those still a bit confused, I'll break it down. The difference between editions means precisely this: A really creative person will be able to produce the next killer application with the free Express products, and the most creative person or group won't do substantially better even if they buy the Team Suite edition. The same job can be done with about $300 worth of tools from other vendors.
About the Author
Paul Kimmel is the VB Today columnist for www.codeguru.com and has written several books on object-oriented programming and .NET. Check out his new book UML DeMystified from McGraw-Hill/Osborne and his upcoming book C# Express for the Professional Programmer from Addison Wesley (Spring 2006). Paul is an architect for Tri-State Hospital Supply Corporation. You may contact him for technology questions at firstname.lastname@example.org.
If you are interested in joining or sponsoring a .NET Users Group, check out www.glugnet.org.
Copyright © 2005 by Paul T. Kimmel. All Rights Reserved.