[comp.software-eng] Naive Question

pase@ogcvax.UUCP (Douglas M. Pase) (01/06/88)

I have been exposed to a (small) number of different approaches to software
engineering in both commercial and academic settings.  However, it has been
a few years, and even so I was not satisfied with the approaches I used.
The approaches I used divided the software development into two parts: the
function, and the implementation.  This was usually reflected by having a
functional document of some type, which spelled out the intended functionality
and requirements of the software.  The second part was the documented code.
Different approaches had different formats for the information, and some
variation of the exact material to be included.

It seems more appropriate to divide the process into three sections --
functionality, *algorithm*, and implementation.  In the previous approaches,
the algorithm was not adequately serviced in either document, and was often
divided between the two.

QUESTION:  Does anyone know of an approach which *does* deal with each part
separately?  I am hoping for material which is readily available (articles
or books which are well known) rather than commercial products or obscure
titles.

maka@hpcilzb.UUCP (01/14/88)

>>QUESTION:  Does anyone know of an approach which *does* deal with each part
>>separately?  I am hoping for material which is readily available (articles
>>or books which are well known) rather than commercial products or obscure
>>titles.

The software development lifecycle model that has traditionally (although
admittedly this "tradition" is relatively young) been the most
accepted is the waterafall model.  This model identifies 4 distinct phases:
requirements specification, design, implementation, and maintenance.  There
are various other models with their own adherents as well.  These include
rapid prototyping, the "operational approach" that came out of Bell labs, etc.

Anyway, there is really quite a bit of literature in this area, if you know
where to look; the best single place is the IEEE Transactions on Software
Engineering.  There is a Handbook of Software Engineering, edited by Vick and
Ramamoorthy and published by Van Nostrand Reinhold - but the articles
included there comprise a rather disparate collection and the book is *very*
expensive.  

Specifically, for a good overview of the current state and approaches to the
software development lifecycle, I recommend "Software Engineering: Problems
and Perspectives" by Ramamoorthy et al, IEEE Computer magazine, October 1984.
This article also has a good bibliography that might be useful to you.

marta kosarchyn
mkosarchyn@dtc.hp.com
(408) 553-2993

fad@think.COM (franklin a davis) (01/25/88)

>>>QUESTION:  Does anyone know of an approach which *does* deal with each part
>>>separately?  I am hoping for material which is readily available (articles
>>>or books which are well known) rather than commercial products or obscure
>>>titles.
>
>
See "Software Engineering Concepts" by Richard Fairley, McGraw Hill
1985.  Dr. Fairley was chairman of the faculty at the now-defunct Wang
Institute of Graduate Studies, School of Information Technology.

The book includes discussion of various life-cycle models,
as well as prototyping, planning, cost estimation, requirements
definition, design, implementation issues, verification & validation,
and maintenance.

It is a good overview of the issues of software engineering, with good
references for particular topics of interest.

--Franklin

mic@hpesrgd.HP.COM (Marc Clarke) (01/28/88)

> 
> It seems more appropriate to divide the process into three sections --
> functionality, *algorithm*, and implementation.  In the previous approaches,
> the algorithm was not adequately serviced in either document, and was often
> divided between the two.
> 
> QUESTION:  Does anyone know of an approach which *does* deal with each part
> separately?  I am hoping for material which is readily available (articles
> or books which are well known) rather than commercial products or obscure
> titles.
> ----------

Try _Developing Structured Systems_, by Brian Dickinson, published by Yourdon
Press, 1133 Avenue of the Americas, New York, New York, 10036.

P.S.:  Hi, Marta!  ;'}