Microsoft Technology Center in Silicon Valley

Having worked for two startups I was not surprised to see glass enclosed server room positioned prominently to the side of the main work area. After all this a customer centric facility where select Microsoft customers are invited to spend time with the best and the brightest Microsoft hands-on technologists.

But it was not the stacks of the latest hardware with its neatly tucked cables in dust free racks that impressed me. Not even the myriad gizmos such as a touch screen HP's desktop and a Microsoft Surface. What impressed me are the people who worked at the Microsoft Technology Center in Silicon Valley on my recent trip in July 2009.

For the duration of the weeklong stay the hosts ensured that all our activities stayed within the scope of the business problem we defined on day one. And that's the key. The hosts took time to understand the business and concrete problems in the context of an end-to-end scenario. They adapted quickly to our team's terminology and collectively the whole team defined the agenda and measureable goals for the week.

When iteratively defining architecture for a solution it's imperative to define a core scenario that represents the essence of the solution. Structure your scenario in such way that you can bolt-on complexity as discussion progresses. For a proof of concept solution that we built at Microsoft Labs we were able to see how various degrees of complexity could be addressed as solution concept evolved. These "complexities" can be classified as either constraints, functional requirements, or quality attributes.

In our case the goal was to capture the overall wholeness of the solution at the expense of not implementing all organization's constraints and all desired quality attributes. However seeing all segments of a solution in action as part of an end-to-end scenario is a huge achievement itself. And that's worth the trip to a Microsoft Technology Center (in Silicon Valley).

Constantin K.
Firebrand Architect®
SoftwareArchitectures.com
FirebrandArchitect.com

Comments

Popular posts from this blog

Why we do agile

Quality Attribute Refinement