Update: This blog entry has been revisited here.
target .NET developers, the closer to VisualStudio’UI, the better your UI is.
realized that NDepend UI has room for improvement to abide by this simple tenet
and decided that the next feature will be a refactored UI. The UI will be
delivered in two phases:
(scheduled for September) will have:
new Options Window
tooltip (with pictures when relevant and 2 levels of explanations)
possibility to choose the skin (the default will be the VisualStudio 2008 one,
but we’ll propose also Office 2007 Blue/Black/Silver, Office 2003 and many
saving/restoring of layout.
help categorized by use-case (metric, dependencies browsing, build comparison
etc..). For each use case a starter will be proposed
(scheduled for October) will have:
of NDepend.Project.exe into VisualNDepend.exe (a la VisualStudio Project
- Colorful information about Code Elements.
This way we
expect that .NET developers will more feel at home when using NDepend which
should result in a less steep learning curve. We needed more than default WindowsForm 2.0 controls. Following Wesner Moise (from NStatic) advice, we will rely on the DevExpress’ DXperience
controls suite (free for MVPs by the way). We already tinker a lot with
DXperience and I’m completely satisfied with it. Good object model, full
integration with VisualStudio Windows Form editor, nice rendering and good
runtime performances. The only drawback is that the NDepend redistributable zip
file will grow from 1.7 to around 6 MB because of the weight of DXperience DLLs.
I like to keep things small when possible but here we had no choices.
We had to
take a decision. On one hand VisualStudio.NET (all versions) heavily relies on Menus
and ToolBars. On the other hand, since Office2007 Microsoft claims that Ribbons
represent a better way than Menus and ToolBars to organize features of a
product. I suppose that completely refactoring the UI of their second flagship
product was a big challenge for MS and that they thought about it very
In order to
abide by the ‘closer to VS UI, the better’ tenet, we first decided to choose Menus
and ToolBars. After all, Ribbons are good for beginners but NDepend users are
experienced developers. Here is what the Menus and ToolBars UI looks like:
setting is automatically saved and will be restored for future use and it can be
changed at anytime.
drawbacks of this approach is that it gives 2 appearances to the product and it adds a button. On the
other hand, we expect that experienced developers are used to configure their tool
when starting using NDepend, experienced developers are NDepend beginners and
we then thought that Ribbons could be a good choice also. We did a UI try and here
is what the Ribbon UI looks like: