Blog

Archive for April, 2008

Understand 2.0 – Architecture Dependence

Thursday, April 10th, 2008

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):

DependenceGraph

(more…)

OS X and Understand 2.0

Wednesday, April 9th, 2008

Recently we added OS X support for Understand 2.0. I’m not a Mac user myself, but as the “Build Engineer” I’ve spent quite a bit of time on our Mac build machine lately getting the installer polished up and I have to admit that I like what I see.

I went to a couple of our resident macheads to find out how applications are normally installed on the Mac. I was going to just .tar.gz it like our linux builds, but they protested, wanting something with a little more flair. So I was able to bundle it into a dmg package, but they insisted I had the layout all wrong and it was just ugly  Ok, I admit I have no graphical design sense.

I needed an inspiration. Several of us here at the office are Geocachers, and Jim just downloaded MacCaching which not only provides useful geocaching information, but had a very nice OS X install package. I thought I would try for a similar affect with our installer.

It wasn’t easy. They had a nice background image in their folder, and we wanted one as well. After wasting almost an entire day on copying .DS_store files around and losing the image every time I moved the folder, I discovered this wonderful article, which quickly taught me all I needed. Thanks Peter!

So as of Build 441, when all you Mac Users download Understand 2.0, you will now see this beautiful install window.

Enjoy!

KevinG

 Understand Installer Mac OS X Screen Capture

Using Understand 2.0, the Calendar Architecture, and TrackBack to Review Changes

Wednesday, April 9th, 2008

Since I’m picking on Devin today, I’ll show you how I use Understand 2.0’s new Architecture feature and the Understand/Trackback integration to do quick reviews of changes he made this week.

(more…)

How I Setup Understand 2.0 – Devin, dual monitors

Wednesday, April 9th, 2008

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.):

Devin-LeftMonitor

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.

Devin-RightMonitor

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!

 

 

Understand 2.0 – making your projects portable

Tuesday, April 8th, 2008

One of the most commonly asked questions of our support folks is “how can I share this Understand project” with somebody else.
In 1.4 this could be done in two ways – by having the same absolute paths (e.g. /sti/src ) or by using the relative project mode that located source files relative to the location of the project .udc file.

Understand 2.0 keeps those methods of portability but adds a new and more flexible method called called “Named Roots”.  I view “Named Roots” as pretty much like environment variables.  If I have a named root “STI” and it is set to “c:\sti\src” and I add a source folder c:\sti\src\maintain\ then when “Named Roots” are used my paths will show up as “STI:\maintain\”.

Read on to learn how to use them for fun and portability….

(more…)

Understand 2.0 – SDI, MDI, Any DI – Part II: Document Windows

Tuesday, April 8th, 2008

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

(more…)

Understand 2.0 – SDI, MDI, Any DI – Part I: Informational Windows

Monday, April 7th, 2008

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.

(more…)

Introducing the “C.I.S.: Contextual Information Sidebar”

Friday, April 4th, 2008

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

(more…)

How I setup Understand – Ken N. single 24″ monitor

Friday, April 4th, 2008

Understand 2.0 has many more GUI layout options that Understand 1.4 did. It is also very smart about remembering the state, position and size of the various GUI components.  Furthermore, these states are saved by monitor setup, so you can easily switch between a single and multiple monitor setup and have appropriate/pleasant/efficient layouts.

Right now I use a single 24” monitor. Here is how I currently have Understand 2.0 setup when I’m reviewing checkins and looking at crashlog stacks that arrive via e-mail periodically.  Click to see it in its full beauty (-:

Und07

On the left I keep my Architecture browser, set to Calendar and File System architectures. These let me see what is changing and also browse. On the bottom I have the Locator Window (Project->Browse ENtities) which quickly lets me filter and find lots of interesting things. Notice the two “Command Window” tabs on the bottom?  These are commands I frequently use – making Understand itself. The left one does a SVN update and make, the right makes new tools “Measure” and “Impact”. I just sit in Understand all day, doing updates, visiting syntax errors (if any), doing most of my business right in Understand. On the right is the new “Context Information Browser” – see my next posting for info about it.

Over time, I’ll be asking all of our engineers to post up their setups (they vary greatly). 

 

Our plans for transitioning from Understand 1.4 to Understand 2.0

Friday, April 4th, 2008

Recently we switched our download system so that downloaders are offered the Understand 2.0 beta ahead of Understand 1.4.  This is because we feel that even though not 100% feature complete, the beta is a better tool for what most of our customers use Understand for than 1.4.

That download page change reflects how close we are to taking Understand 2.0 off beta.  Remaining features we want to add before doing that are:

  • external editor integration (for instance using EMACS as the source editor)
  • external application control of Understand (permitting other apps to launch Understand views/graphs)
  • user tools (permitting users to integrate with make, CM and other external system commands)
  • poster / n-page printing of graphics

All of these are 2–3 weeks away… so the time is approaching.

Naturally most of our development effort is directed at Understand 2.0, but Understand 1.4 will not be ignored:

  • we will continue to release new builds of Understand 1.4 for 4–6 months. These builds will include:
    • all parser changes
    • crash fixes
    • no new features will be added except for parser and things common to 2.0, like the PERL and C APIs
  • after 4–6 months, we will stop making new builds of 1.4 weekly. However, we can and will make new builds as we encounter and fix critical errors reported by users still depending on it.

Note that all current Understand 1.4 licenses will operate 2.0 as well. If you are under maintenance, enjoy 2.0. If you aren’t, give it a try and see if coming back under maintenance is worth the money. If so, e-mail sales@scitools.com to ask for a maintenance renewal quotation.  As usual, it is an honor system. We hope you understand doing things like 2.0 (and 2.1, 2.2, so forth) takes money and we hope you feel Understand 2.0 and our support efforts are worth the cost.

I hope this plan seems reasonable to you. None of this is cast in stone, so feel free to send concerns, compliments or suggestions  to support@scitools.com.

Regards,

Ken Nelson
President
Scitools