comp.lang.ada
 help / color / mirror / Atom feed
From: Ray Blaak <blaak@infomatch.com>
Subject: Re: Another important feature of Ada
Date: 2000/11/19
Date: 2000-11-19T00:00:00+00:00	[thread overview]
Message-ID: <u66ljih85.fsf@infomatch.com> (raw)
In-Reply-To: 3A183756.485D5911@worldnet.att.net

James Rogers <jimmaureenrogers@worldnet.att.net> writes:
> "pete@nospam" wrote:
> > And in practice, it is only after running the program against the
> > actual implementation that one finds for sure if the interface is
> > the right one, also many times the interface is changed as development
> > goes on.
> 
> This of course reveals a process problem in several development
> projects. The reason for changing interfaces is most often because 
> insufficient analysis and design work was done before beginning 
> implementation. The only time I have seen it necessary to change the
> interface definitions has been when new requirements are levied on the
> project after analysis and design is complete. This, again, is a
> process problem. 

So says the official dogma. 

It sounds good on paper, but in my experience almost all interfaces need some
modification after coding starts and people can actually start using it.

I suppose you could say that I am unfortunate enough to have always worked on
projects with process problems, but I don't think so. The need for
modifications happen even on rabidly paranoid air traffic control projects
whose process (I think) is excellent.

Certainly the major design aspects of an interface should have been worked out
in advance, but the details due to language and environment can drive usage
patterns in particular ways that the designers simply cannot forsee until
coding (e.g. "oh wow! this 3rd party library expects to be able to cache its
data; I guess our data items need to be able to be cacheable across threads
after all").

Instead, it is better to always expect change, and to struture your designs
and abstractions so that they can readily be augmented, reimplemented, etc.

New requirements always happen. Unexpected gotchas always get you.

-- 
Cheers,                                        The Rhythm is around me,
                                               The Rhythm has control.
Ray Blaak                                      The Rhythm is inside me,
blaak@infomatch.com                            The Rhythm has my soul.




  reply	other threads:[~2000-11-19  0:00 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-11-15  3:32 Another important feature of Ada James Rogers
2000-11-15  0:00 ` Mark T
2000-11-15  0:00   ` Tucker Taft
2000-11-15  0:00     ` Laurent Guerby
2000-11-15  0:00     ` Ed Falis
2000-11-17  0:00       ` Jean-Pierre Rosen
2000-11-18  0:00         ` Ed Falis
2000-11-18  0:00           ` pete
2000-11-19  0:00             ` James Rogers
2000-11-19  0:00               ` Ray Blaak [this message]
2000-11-20  2:39                 ` Robert Dewar
2000-11-20  7:43                   ` Ehud Lamm
2000-11-21  0:00                   ` Ray Blaak
2000-11-21  0:00                     ` Robert Dewar
2000-11-20  7:47                 ` Ehud Lamm
2000-11-19  0:00               ` David Starner
2000-11-19  0:00             ` Jean-Pierre Rosen
2000-11-18  0:00           ` Karel Thoenissen
2000-11-15  0:00 ` mjsilva
2000-11-15  0:00   ` Brian Rogoff
2000-11-17  0:00     ` Scott Ingram
2000-11-19  0:00 ` Lao Xiao Hai
2000-11-20  0:00 ` Michel Gauthier
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox