Microsoft TechEd 2006 – Boston MA

Today I finally registered for the Microsoft TechEd 2006 conference which will this year take place in historic Boston Massachusetts.

Microsoft TechEd and Microsoft PDC are an absolute must for serious software developers and architects using Microsoft technologies and personally I’ve been attending these conferrences since the Microsoft PDC conferrence in 2003 when Microsoft announced Longhorn (Microsoft Windows Vista), Whidbey (Microsoft Visual Studio 2005), and Yukon (Microsoft SQL Server 2005).

If your coming to Microsoft TechEd 2006 and have never been to Boston there are several places in and around Boston that are definitely worth a visit. Faneuil Hall, built in 1742 by wealthy merchant Peter Faneuil was given to the town as a gift. It was at Faneuil Hall on November 5, 1773, that John Hancock and other Bostonians held the first tea meetings to discuss the fate of that “baneful weed.”

Another excellent piece of history to discover while in Boston is the U.S.S. Constitution, located at the Charlestown Navy Yard. The U.S.S. Constitution is the oldest commissioned warship in the world and became known as “Old Ironsides” during the war of 1812 when she fought the British Frigate H.M.S. Guerriere. Known as “Old Ironsides” because H.M.S. Guerriere sank like a stone, while the cannonballs she fired at the U.S.S. Constitution merely “bounced off” as if she were made of iron.

What could be better than learning the latest that Microsoft has to offer while enjoying historic Boston at the same time? Not to mention the excellent restaurants in Boston. See you at Microsoft TechEd 2006!!!

Visual Studio Orcas Class Designer

Unfortunately I’m not about to divulge Microsoft’s plans for the Visual Studio Orcas Class Designer but rather discuss some enhancements that I’d really like to see included in the Orcas release of this wonderful addition to the Visual Studio environment. If you agree with any of these suggestions then I would encourage you to surf on over to the MSDN Product Feedback Center and then vote on the suggestions. The FDBK numbers below are hyperlinked to the suggestions within the Product Feedback Center.

FDBK24225    Display Custom Attributes on Class Diagrams

Class diagrams should show custom attributes adorning the types shown within class diagrams, including those adorning the fields, methods, properties, events, etc. Custom attributes could be shown within the class diagram using either a language specific notation (e.g. [Serializable] in C# and in VB) or in a language neutral notation not too dissimilar to UML stereotypes.

FDBK23744    Visual Differencing of Class Diagrams

With most UML tools I’ve ever used from IBM/Rational Software and other vendors, there hasn’t been an ability to perform differencing at the diagram level although this would be an exceptionally powerful feature. I’ve seen this feature implemented in IBM/Rational Software Architect 6.0 although this is the only tool that I’m aware of that provides support for visual differencing

FDBK23695    Class Designer Interface Realization Association

It would be nice when the interface is shown on the class diagram in its class form rather than the lollipop notation for a dashed realization association to be shown and optionally hidden if the diagram becomes too chaotic.

FDBK23743    Support for Design Pattern Wizards in Visual Studio Class Designer

This was a feature that was really useful with Rational XDE for Visual Studio 2003, the ability to apply design pattern wizards for the Gang-of-Four design patterns; especially if the wizard infrastructure allowed for extensibility with other pattern wizards provided either by the developer themselves or by Microsoft and third parties.

FDBK11348    Visual Debugging using Sequence Diagrams

Not directly related to the class designer which shows static code structure, but what would be an excellent debugging tool (similar to the Visual Trace tool in Rational XDE for Visual Studio 2003) is the ability to generate sequence diagrams showing the execution path for a set of types that are ‘watched’ in a given debugging session.

SQL Server 2005 SP1

On April 19th Microsoft released SQL Server 2005 SP1 which includes newly added support for database mirroring which according to the Microsoft press release has been already put into production environments by 20 major customers.

In addition to introducing support for database mirroring, Microsoft has also released updated editions of SQL Server 2005 Express SP1 which now includes support for SQL Server Reporting Services (SSRS), full text search capabilities and the newly released SQL Server Management Studio Express.

SP1 Readme


Express Edition

Express Edition with Advanced Services

SQL Server Management Studio Express

Express Edition Toolkit

SQL Server 2005 Update from Paul Flessner provides an interesting update on the direction that Microsoft is taking the SQL Server product line, you can read the update here.

The Scourge of the Software Project Manager

It seems to me that software affects so much of our daily lives, almost to the extent portrayed in the movie ‘The Matrix’.

Software project managers today seem to focus solely upon time and cost and all too often ignore the quality aspect of the time, cost, and quality triangle.

I’m presently working on a project where performance is a key requirement and as such I developed an architecture and associated framework, discussed in my masters dissertation, which exhibits significant performance improvements over the standard .net DataSet in terms of serialization.

It also supports asynchronous communication and many other things to improve securability and performance. The Scourge of the Project Manager that I mentioned in the subject line of this posting is that a project manager involved in this project chooses to openly tell developers to ignore the architecture if it would mean the are ‘complete’ sooner, even if that definition of complete includes many bugs that must be fixed at a later date

Software project managers, almost all I’ve ever worked with, seem to suffer from this inability to even recognize the importance of the ‘ilities’ such as maintainability, securability, etc. and many other aspects of software related to quality.

I think this is in part due to the fact that project managers, and other stakeholders not directly working at the code level, find it nearly impossible to visualize quality or the lack thereof.

If you show someone two pieces of home audio equipment, one costing many times more than the next, they can perceive the level of quality in the construction. Software is different, even most stakeholders on a software project (and even some programmers…) cannot.

I’m beginning to wonder if it is possible to maintain sanity as a software architect in a world where the scourge of the project manager seems to permeate every project I work on.

Any thoughts before I continue to blog myself out of a career by upsetting project managers in this industry 🙂