Chapter 4. Inside Management and Administration Tools
The Microsoft SQL Server Team had two main goals for the design of the new SQL Server 2005 management tools. The first goal was to provide a consistent management experience for all components of SQL Server. The second goal was to provide an innovative tool to make database professionals more productive at querying, managing, and administrating SQL Server. To achieve these goals, the team had to choose an environment that was easily extensible, user-friendly, and familiar to the database professionals. While we were studying different hosting environments, or as we called them "shells," we soon concluded that the Microsoft Management Console (MMC) shell was not suitable to host the new tools. The MMC model was old, monolithic, and it did not provide the extensibility needed. For example, the MMC model stipulated that the management dialogs had to be modal with a fixed size optimized for a desktop size of 640 x 480 pixels. However, as the high-resolution computer monitors became more popular and the average size of the desktop increased to 1024 x 768, the legacy Enterprise Manager users hated this restriction. They consistently asked us why they could not resize the management dialogs to take advantage of the full size of their screens. However, deviating from the MMC model was not that easy. A new shell would definitely solve some of the issues, but it would also break a long-term trend. For two generations of SQL Server, database professionals had used the Enterprise Manager or Analysis Manager, both of which were MMC snap-ins. The innovative new shell had to eliminate some of the legacy restrictions but also had to be familiar to users.
One of the environments that looked very attractive was the Integrated Development Environment (IDE) upon which Visual Studio was built. The IDE had provided extensibility and a proven, user-friendly environment for developers for several years. It also offered several engineering advantages, such as a ready-to-use editor, a debugger, and a powerful help model, and it could host some of the components that were built by the Visual Studio team. After studying several prototypes, the team decided to use the IDE for the new shell. The tool was called SQL Server Workbench and it was distributed to a number of early adopter customers and SQL Server Most Valued Professionals (MVPs). By the Beta 1 release, SQL Server Workbench created a lot of controversy in the community. The feedback was very bipolar; customers either loved or hated it. While the developers found the environment extremely friendly, the DBAs found the user interface confusing. Some DBAs thought the shift to a development-like environment unnecessary, and it required a steep learning curve. The engineering team faced a tough task addressing these issues. The decision was to cut down some of the features and use the resources to address these important usability issues. The team carefully collected all the feedback and redesigned the environment to bridge the gap between the legacy tools and the new innovative tool. We also made the environment simpler and friendlier for the DBAs. By the Beta 2 release, the tool was called SQL Server Management Studio, and it received positive feedback from both developers and DBAs. The results were successful, but it came at the price of cutting some features such as the T-SQL debugger and Object Search functionality.
With almost six months since the release of SQL Server 2005 at the time of this writing, I (Michael) can see that the team made the right decision to achieve its goals. SQL Server Management Studio provides the ultimate integrated management and authoring experience for all components of SQL Server and it is a productive and user-friendly environment. You may not find all the functionality of Enterprise Manager or Query Analyzer in the new tool, but it certainly increases your productivity. As for the missing features, you can find them in other toolsas with the T-SQL debugger now found in Visual Studioor look for them in the future releases of SQL Server. Remember, the SQL Server team is always looking forward to your feedback: http://connect.microsoft.com.