What is the essence of engineering and in particular what is the essence of software engineering? Is it deserving of academic respect? Can the practices of conventional engineering be applied to the software process?
These questions are very much in the air at the moment and concern more that the present authors. (See IEEE Computer magazine, May 2000 where the comparison is made between Software Engineering and Computer Science.)
According to Peters and Pedrycz 'An engineering approach to software engineering is characterised by a practical, orderly and measured development of software.' (God help us if it is otherwise!) It is the word 'measurement' here that is the key. Engineers measure things. They measure before they build. They measure their design's success and on the basis of this measurement, identify possible improvements.
It is with this process of measurement and analysis that the current text is concerned. An academic book, it is not for the faint hearted, full of theoretical perspectives, well thought out, clearly presented and with apparent rigor. Measurement is considered in the context of project planning, requirements, design, validation and risk analysis, software testing, costing, reliability, human factors, re-engineering and maintenance.
However, I think that these will be of limited appeal, since I cannot see the programmer at the coalface really gaining very much from it. High-level managers might gain from the purchase. Academics and research students may well be interested in a library copy.
As might be expected, each chapter is followed by exercises and there are copious references for further study.