I understand some people are having an issue with the last few posts on the standard reports in Management Studio. I’ll look into that – but if you click into them, they seem to work fine.
Anyway, I thought I would break from those for one post to talk a little about design on our management tools. At Microsoft, lots of us are involved in the design, not just the developers, the Program Managers or User-Experience (UX). That can get kind of interesting, because all of us have a lot of experience and a lot of opinions, ideas, facts and data. And we’re all convinced we’re right! No, we actually coordinate that sort of thing, but it does make for some interesting specification reviews.
So what is my theory on design? Well, I go for a “top-down, outside-in” approach. What I mean is that I think about some overriding guidelines, and then apply more and more specifics to it as I work my way down the specifications. I then think about it from a use-case perspective, thinking about the first thing you see in the various tasks this tool will be used for all the to the last click or command.
Using this approach, I first decide what is important – speed, consistency, ease of use, and so on. I then organize those into a priority ladder – is speed more important than consistency? Is ease of use more important than speed? I then use those guidelines to begin the design. Working with the UX team and the developers, we design the actual interface. There are various other constraints as well, such as Microsoft User Interface (UI) rules, Visual Studio (since that’s what we’re based on) rules, and then we have to consider localizing everything into multiple languages, high-contrast, screen-readers and so on.
So even when I decide at the outset how something will work or look, that isn’t what always shows up in the final product. And when I’m questioned on something I designed as a racehorse that turned out as a camel, well…
But it isn’t as bad as all that. We do put out something that I’ve found to be far friendlier, easier, more consistent and faster than most any other toolset for relational databases from other vendors – and believe me, I’ve used a lot of them.
Well, tomorrow I’ll return to the reports – and I’ll try and make sure they render properly!