SCOUG Logo


Next Meeting: Sat, TBD
Meeting Directions


Be a Member
Join SCOUG

Navigation:


Help with Searching

20 Most Recent Documents
Search Archives
Index by date, title, author, category.


Features:

Mr. Know-It-All
Ink
Download!










SCOUG:

Home

Email Lists

SIGs (Internet, General Interest, Programming, Network, more..)

Online Chats

Business

Past Presentations

Credits

Submissions

Contact SCOUG

Copyright SCOUG



warp expowest
Pictures from Sept. 1999

The views expressed in articles on this site are those of their authors.

warptech
SCOUG was there!


Copyright 1998-2024, Southern California OS/2 User Group. ALL RIGHTS RESERVED.

SCOUG, Warp Expo West, and Warpfest are trademarks of the Southern California OS/2 User Group. OS/2, Workplace Shell, and IBM are registered trademarks of International Business Machines Corporation. All other trademarks remain the property of their respective owners.

The Southern California OS/2 User Group
USA

SCOUG-Programming Mailing List Archives

Return to [ 24 | December | 2003 ]


Date: Wed, 24 Dec 2003 13:40:06 PST8
From: "Lynn H. Maxson" <lmaxson@pacbell.net >
Reply-To: scoug-programming@scoug.com
To: "SCOUG Programming SIG" <scoug-programming@scoug.com > , "osFree@yahoogroups.com" <osFree@yahoogroups.com >
Subject: SCOUG-Programming: Re: [osFree] Digest Number 203

Content Type: text/plain

Cris,

I felt the need to also respond to some other comments you
made in your last message. We should add another stage in
front of the software development process (SDP), that of
requirements or requirements gathering. Normally we gather
them into groups or batches before passing them into the
formal, five stages of SDP: specification, analysis, design,
construction, and testing.

Note that normally requirements do not occur in batches.
They also do not occur in logical order. In short they
frequently occur individually and in random order. Due to the
way we have implemented the SDP, the methodology use, and
the software tools supporting it, immediately transferring an
individual requirement, a change request, into the process in
random order would quickly bring the process to a halt.

We should note, however, that we want to effect a change
request as quickly as possible, immediately if possible,
regardless of the order or timing of their occurrence. That we
cannot currently do so does not represent a failure of the SDP
as sometimes falsely claimed, but a failure of implementation.

Imperative languages (first, second, and third generation)
created the need for the SDP which represents the optimal
logical order of processing. In fact it's more than optimal: it's
absolutelyl necessary. Any deviation from this order results in
non-optimal effort, i.e. a loss in efficiency or productivity.

That does not mean that deviations do not occur in practice.
They happen all too frequently. You get in analysis to
discover incomplete or missing specifications. You can have a
similar discovery in design of a failure in analysis or
specification. You can in construction discover a failure in
design related to one in analysis relating in turn to
specification.

These discoveries in later stages of errors in earlier should
mean going back to the earliest stage in which the error was
introduced, correcting it, and then proceeding forward. In
short it should follow Deming's theory of quality control,
which works for software as it does for any other process.

If you don't do this, if you don't reflect the correction in the
earlier stages, then the source for each stage gets out of
sync. That means new change requests coming into the
process will reflect the error condition in going from one stage
to the next.

You seem to indicate that these processes can occur in a
different order. In practice they do. In every instance it leads
to a rework of some kind, which may or may not get reflected
back to its source. When source, when documentation gets
out of sync beyond a loss of efficiency, i.e. productivity, you
also create a conflict situation, which frequently degenerates
to a personnel conflict, of one group distrustful of another or
believing them incompetent.

Now all this goes back to the use of imperative programming
languages. While requirements and specifications can occur in
any order the manual functions of analysis, design, and
construction demands that the input to code generation have
a logical organization of source code. In imperative languages
that logical organization, globally and locally, is the
programmer's responsibility, by definition a manual operation.

In logic programming, i.e. declarative languages, that logical
organization becomes the software's responsibility as part of
the completeness proof. It follows then that any logical
re-organization due to specification changes remains the
software's responsibility.

Thus declarative languages accept logical or rule-based
source segments in any, i.e. random, order which they in turn
impose an optimal logical organization. Thus as quickly as a
change request can be translated into its set of specifications
we can enter it into the SDP. It should be possible in practice
to effect changes in the solution set (the software) more
rapidly than they occur in the problem set (the user world).
In short no persistent or growing backlog should occur.

Therein lies the advantage of using a fourth generation,
declarative specification language which is also a
programming language. An advantage also occurs in using it
until it becomes a programming language, regardless of having
to translate it meanwhile into some third generation form like
C or C++.

=====================================================

To unsubscribe from this list, send an email message
to "steward@scoug.com". In the body of the message,
put the command "unsubscribe scoug-programming".

For problems, contact the list owner at
"rollin@scoug.com".

=====================================================


Return to [ 24 | December | 2003 ]



The Southern California OS/2 User Group
P.O. Box 26904
Santa Ana, CA 92799-6904, USA

Copyright 2001 the Southern California OS/2 User Group. ALL RIGHTS RESERVED.

SCOUG, Warp Expo West, and Warpfest are trademarks of the Southern California OS/2 User Group. OS/2, Workplace Shell, and IBM are registered trademarks of International Business Machines Corporation. All other trademarks remain the property of their respective owners.