Posted by & filed under Tips.

Of all the changes made last week – 3261 lines added, 934 removed, and 742 removed, just one enum changed…

2008-04-28 20.43

I was curious…. What was it?  Well, that is pretty easy to find out.

Read more »

Posted by & filed under Tips.

Earlier, I showed you the Functional Decomposition architecture and used it and an about to be alpha tested tool called “Measure” to present measurements of the various parts of our source tree.  This was as a pre-cursor to doing weekly build size, complexity and change metrics reporting.

Today, I’ll show you the other architecure I’ll be using – Staff.  Using the Functional Decomposition architecture developed in about 45 minutes, I was able to create “Staff”, or who owns what, in about 15 minutes. This is what it looks like when seen in the Architect->Browse Architectures window:

2008-04-24 14.04


Read more »

Posted by & filed under Tips.

Our engineers all use Understand 2.0 all day every day as they maintain it and also develop new features and tools.

Rob G. recently joined us from Utah State University. Because we already had a Rob, we call him [new]Rob. So far he has added the Contextual Information Sidebar, re-worked the Architecture mapper, and also helped in work on a new tool for software maintenance estimation (change scoping) that we intend to  incorporate into Understand 2.0. 

[new]Rob works with two monitors. The right monitor is flipped vertically, the left is the typical landscape (horizontal layout).

He writes:

I like the dock layout on my left monitor because it has everything that I use the most in one location.  I spend most of my time in the selector, especially when I have many editors open,  and the entity filter.  And having the docks on my other monitor gives me the most room to work in Understand.  I also keep the CIS sidebar located on the bottom of my editor, which can be moved around by right-clicking on the editor’s tab or title bar, because of the limited horizontal room that I have on that monitor.

Click on the pic below to see [new]Rob’s


Posted by & filed under Tips.

Understand’s Information Browser provides a one stop source for virtually all available information about a given piece of source code (entity).

So where is our new Architecture information in the Information Browser?

Well, one obvious place is the Architectures field, which tells you what part of a given architecture the entity is in. 

Here we can learn, quite quickly, that the class “GenericTree” is in the “guitrees” directory, was developed by Mark F., is part of the Scitools Specific Qt Enhancements, and was modified this month:

2008-04-23 20.42

Hmmm… we learned a lot in just four lines… maybe this Architecture stuff could be useful (-:

Read more »

Posted by & filed under Tips.

We believe that if we use our own tools they will be better.

Hence, in the coming weeks, using just tools we sell or are about to introduce, I will be posting build metrics about each build we release. I will give static views of the size and scope of our various development efforts and on week two I’ll start showing change metrics describing what is new, changed and removed.

Today, I’ll start that off by showing you “Functional Decomposition”,  the first Architecture I will be using to organize future reports.

First off, Understand provides automatically a Filesystem architecture that is automatically derived from the directory structure of the project.

Understand’s Assistant, also suggests three that you can do by hand that will take you a long way.  They are “Functional Decomposition”, “Staff”, and “Requirements”.   Since we don’t deal with formal requirements here at Scitools, I’ll just be doing “Functional Decomposition” today and “Staff” tomorrow.

On the left is the basic Filesystem architecture I started with, and on the right one I whipped up in about 45 minutes:

2008-04-22 17.14 2008-04-22 17.16

Read more »

Posted by & filed under Tips.

One of the new features of 2.0 is “Architecture”. Loosely described Architecture is a mapping of any abstraction onto the source of a project.  The abstraction can be anything – Functional Decomposition, Requirements, Staff, Security Classification, Internal vs Externally Owned code – whatever you can dream up, Understand’s Architect component lets you map it onto our source. And as the source changes it keeps it mapped correctly, including adding/removing files and entities.

Over the next few weeks, I’ll be showing you all the places Architecture can be used.  Yesterday, for instance, I showed how the Calendar architecture can be used to limit where you search in Find in Files.

Today, I’ll explain a relatively new feature – the Architecture Dependence Graph Browser.  Basically, pick an architecture, right click on it, and choose ‘Dependence Graph”.

Something like this pops up (BTW: this is a broad overview of the products in our Maintain family at the source level):


Read more »

Posted by & filed under Tips.

Here is how Devin Pitcher, one of our engineers who sits on a Solaris Intel box all day, sets up his Understand.

He has two monitors. His left monitor is devoted to source code and information about where he is in the source code (the C.I.S.):


On his right monitor he has organized a set of undocked information palettes. He has the Project Browser available for quick traversing around the project tree. He has the Entity Filter up, set to filter on Functions. He has the Architecture browser setup to browse based on a Architecture it automatically derives while analyzing the source. And he has the Selector window up for quick access to any files he has open.  In the middle, with plenty of space to show full reference text he has an Information Browser setup to sync so that any entity he clicks on will have its information shown there.


This setup is pretty common among our engineers. Source on one big monitor (often vertically oriented) and information/navigational aids on another monitor.

Thanks for sharing Devin!



Posted by & filed under Documentation.

In Part I I described how in Understand 2.0 we are attempting to have not SDI, or MDI, but “Any DI” – where you can put windows where you want and have them stay that way.  I described how you can move dock and information windows around in the GUI and anywhere on your monitor(s). In this segment I’ll cover document windows (editor and graph windows).

Here is Understand 2.0 with a couple tabbed editor documents and a tabbed graph:

2008-04-08 06.30

Read more »

Posted by & filed under Tips.

Understand 1.4 had two windowing modes – SDI and MDI. On X-Windows, it had only SDI.

One of the big design goals for 2.0 was what we call “Any DI”, which basically means, put windows where you want. In a container window (MDI), all alone (SDI), or docked together, so forth.

Read on to learn how you can put information windows (IB, ENtity Filter, so forth) – what we call Dock Windows anywhere on your screen and have Understand 2.0 remember where you put them next time you run it.

Read more »

Posted by & filed under Tips.

For a few years now we have been asked by users to add some “push” to Understand. “Don’t make me right click, show me what I need to know”, they ask.  In Understand 2.0 we have addressed that wish in two primary ways:

  • Browse mode in the editor (I’ll write about that in a post soon)
  • Contextual Information Sidebar (CIS)
Big picture of the CIS Sidebar

Read more »