[Tutor] OT NS charts was: Re: Valid Username Program

Alan Gauld alan.gauld at yahoo.co.uk
Sat Oct 10 06:39:35 EDT 2020


On 10/10/2020 01:44, Dennis Lee Bieber wrote:
> On Sat, 10 Oct 2020 00:33:11 +0100, Alan Gauld via Tutor <tutor at python.org>
> declaimed the following:
>> anyone use them outside college. I'm curious, has anyone
>> actually use NS charts in real world projects?
>>
> 
> 	They were being taught to software engineers at Lockheed Missiles and
> Space (now Lockheed-Martin Space Systems)

Yes, but were they useful? I once worked on a project where everything
was documented using SSADM. But when there was a problem nobody looked
to the diagrams they just jumped into the code. The diagrams were a
wasteful overhead imposed by management - and often retro-fitted
after the code was done! Of all the SSADM diagrams (and there are
very many!) there were only about 3 or 4 that people actually used!

> given to new-hires) and I suspect Lockheed has probably obtained licenses
> for Enterprise Architect these days.

I'm sure, or one of the many other capable alternatives!

>> I had actually seen them in use and they were effective.
>> So has anyone used these and found them effective?
>>
> 	Without some software support, they are tedious to maintain, but they
> did map better to "structured engineering" (one-in, one-out) than
> flow-charts.

But were they used? I've seen flow charts (and their significantly
better brethren, structure charts and UML activity diagrams) used in
projects and the developers actually refer to them before looking
at the code(*). But I've also seen many design diagrams used but
never referred to! In fact pseudo-code is probably my preferred tool
for describing code level design - many programmers think in text
so feel comfortable reading pseudo code, but its still an order of
magnitude faster than reading production code.. .

(*)Back when I managed a maintenance team I always insisted that
every project had documentation to a level where we could
pinpoint a bug into at least a module, ideally a function,
before looking at the code. This was in a scenario where most
projects had >1 million lines of code and bugs had to be
turned around in 24 hours. We simply didn't have time to trawl
though reams of code. If suitable designs didn't exist we
took the time to reverse engineer them ourselves!

But maybe we should take this discussion to a separate thread?! :-)

-- 
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/
http://www.amazon.com/author/alan_gauld
Follow my photo-blog on Flickr at:
http://www.flickr.com/photos/alangauldphotos




More information about the Tutor mailing list