2
Book Reviews 385 The among Part 1. Part 2. Part 3. Part 4. Part 5. Part 6. book is a set of 31 papers distributed six parts (chapters) as follows: The life cycle of project management (7). Organizational aspects of project manage- ment (5). Cultural aspects in projects (4). Project management in developing coun - tries (4). Tools and techniques (6). Automation in project management (5). Although the papers show a certain variety in intrinsic value of their contribution, on the whole they can be characterized by the following two features: - the papers have a descriptive character, and A they are weak in tools and techniques (also in Part 5). Thus, it is difficult to say that the contents of the book is adequate to its subtitle: “Tools and strategies for the 90s”. For example, no paper treats multicriteria decision making for project management, and only one (by Ivars Avots) men- tions very briefly expert systems in this area. Jan WE@ARZ Instytut Automatyki, Politechnika Poznariska Poznan, Poland Hans-Ludwig HAUSEN (ed.) Software Validation: Inspection-Testing-Verifica- tion-Alternatives Proceedings of the Symposium on Software Vali- dation held in Darmstadt, FRG, September 25-30, 1983, North-Holland, Amsterdam, 1984, xii + 375 pages, Dfl. 150.00 This book is the proceedings of the symposium, “Software Validation” held in Darmstadt, Federal Republic of Germany, September 25-30, 1983, and organized by Gesellschaft Wr Mathematik und Datenverarbeitung (GMD) mbH Bonn, and SRI International, Menlo Park, U.S.A. Many of these papers are state-of-the-art in that they can be understood by software test en- gineers and software quality evaluators. The papers cover inspection methods, testing methods, verifi- cation methods, and alternative development methods for validation purposes. Software valida- tion is an important issue to produce a quality software. And many methods and tools have been developed to locate software errors in systems or to demonstrate the absence of such errors. How- ever, software engineers are dissatisfied with the present status of software quality assurance. Thus, they need more useful research on software valida- tion. The editor states: “Software validation covers the technical procedures of QAC (quality as- surance and control), namely informal assurance methods, static and dynamic analysis, verification, and symbolic execution.” This book can serve as a valuable researching aid for software engineers and show how these methods and tools may be combined into an over- all and integrated software validation procedure. Shigeru YAMADA Okayama University of Science Okayama, Japan J. van LEEUWEN and J.K. LENSTRA (eds.) Parallel Computers and Computations CWI Syllabus 9, CWI, Amsterdam, 1985, vi + 184 pages, Dfl. 28.80 To be a computer-scientist (or -technologist, or -engineer, or -user) is to be a person of many parts: which set of parts you choose is largely a function of what interests you. This is, of course, true of any discipline, however computer science seems to have so many diverse, sometimes ap- parently independent, parts that care has to: be taken not to assume that simply referring to an area of interest establishes a common basis for discussion. The field of ‘parallel computing’ is a particu- larly striking example: it means different things to different people. The scientific computer users generally see it in terms of high-speed number crunching; theoreticians regard it as an another set of formal models. Others see parallel comput- ing as loosely-coupled distributed systems, or tightly-coupled multi-processing, or modeling the brain, and so on. However, anyone working in the field must see it as containing many challenging and exciting problems to be overcome, and must believe that these problems are worthy of solution. “Parallel Computers and Computations” (a set

Parallel computers and computations: J. van Leeuwen and J.K. Lenstra (eds.) CWI Syllabus 9, CWI, Amsterdam, 1985, vi + 184 pages, Dfl. 28.80

Embed Size (px)

Citation preview

Page 1: Parallel computers and computations: J. van Leeuwen and J.K. Lenstra (eds.) CWI Syllabus 9, CWI, Amsterdam, 1985, vi + 184 pages, Dfl. 28.80

Book Reviews 385

The among

Part 1. Part 2.

Part 3. Part 4.

Part 5. Part 6.

book is a set of 31 papers distributed six parts (chapters) as follows:

The life cycle of project management (7). Organizational aspects of project manage- ment (5). Cultural aspects in projects (4). Project management in developing coun - tries (4). Tools and techniques (6). Automation in project management (5).

Although the papers show a certain variety in intrinsic value of their contribution, on the whole they can be characterized by the following two features:

- the papers have a descriptive character, and A they are weak in tools and techniques (also in

Part 5). Thus, it is difficult to say that the contents of

the book is adequate to its subtitle: “Tools and strategies for the 90s”. For example, no paper treats multicriteria decision making for project management, and only one (by Ivars Avots) men- tions very briefly expert systems in this area.

Jan WE@ARZ Instytut Automatyki, Politechnika Poznariska

Poznan, Poland

Hans-Ludwig HAUSEN (ed.)

Software Validation: Inspection-Testing-Verifica- tion-Alternatives

Proceedings of the Symposium on Software Vali- dation held in Darmstadt, FRG, September 25-30, 1983, North-Holland, Amsterdam, 1984, xii + 375 pages, Dfl. 150.00

This book is the proceedings of the symposium, “Software Validation” held in Darmstadt, Federal Republic of Germany, September 25-30, 1983, and organized by Gesellschaft Wr Mathematik und Datenverarbeitung (GMD) mbH Bonn, and SRI International, Menlo Park, U.S.A.

Many of these papers are state-of-the-art in that they can be understood by software test en- gineers and software quality evaluators. The papers cover inspection methods, testing methods, verifi- cation methods, and alternative development methods for validation purposes. Software valida-

tion is an important issue to produce a quality software. And many methods and tools have been developed to locate software errors in systems or to demonstrate the absence of such errors. How- ever, software engineers are dissatisfied with the present status of software quality assurance. Thus, they need more useful research on software valida- tion. The editor states: “Software validation covers the technical procedures of QAC (quality as- surance and control), namely informal assurance methods, static and dynamic analysis, verification, and symbolic execution.”

This book can serve as a valuable researching aid for software engineers and show how these methods and tools may be combined into an over- all and integrated software validation procedure.

Shigeru YAMADA Okayama University of Science

Okayama, Japan

J. van LEEUWEN and J.K. LENSTRA (eds.)

Parallel Computers and Computations

CWI Syllabus 9, CWI, Amsterdam, 1985, vi + 184 pages, Dfl. 28.80

To be a computer-scientist (or -technologist, or -engineer, or -user) is to be a person of many parts: which set of parts you choose is largely a function of what interests you. This is, of course, true of any discipline, however computer science seems to have so many diverse, sometimes ap- parently independent, parts that care has to: be taken not to assume that simply referring to an area of interest establishes a common basis for discussion.

The field of ‘parallel computing’ is a particu- larly striking example: it means different things to different people. The scientific computer users generally see it in terms of high-speed number crunching; theoreticians regard it as an another set of formal models. Others see parallel comput- ing as loosely-coupled distributed systems, or tightly-coupled multi-processing, or modeling the brain, and so on. However, anyone working in the field must see it as containing many challenging and exciting problems to be overcome, and must believe that these problems are worthy of solution.

“Parallel Computers and Computations” (a set

Page 2: Parallel computers and computations: J. van Leeuwen and J.K. Lenstra (eds.) CWI Syllabus 9, CWI, Amsterdam, 1985, vi + 184 pages, Dfl. 28.80

386 Book Reviews

of 8 lectures) attempts both to indicate these problems and their methods of solution, and to give an introduction to the field for newcomers, and for specialists in sub-areas of parallel comput- ing wishing to widen their horizons.

For the newcomer, the first chapter by Van Leeuwen (“Parallel Computers and Algorithms”) is an extremely good introduction to the concepts of parallel processing. Attention is focussed on a mathematical approach, but without being too pedantic: theorems are well chosen and are (mostly) given without proof--idea/ for introduc- tory material. The content of the chapter is wide-ranging, covering applications (numerical analysis, sorting), design (storage allocation, com- munications), and theory (algorithmic analysis).

The first chapter does not deal much with actual parallel machines, but two chapters are concerned with specific computers. The Cyber 205 operating system is described in one, and a com- parison of the processing speeds of the Cyber and Cray-1 is made in another. These chapters to- gether form a useful introduction to both architec- tures, and report interesting, but not startling, results. What does stand out in the Cray versus Cyber chapter is how clearly it shows (uninten- tionally I’m sure) what a truly terrible language Fortran is, and also how the quicksand of an inappropriate language can drag down even the best compiler designers; e.g. A(I) + B(I) * D is slower than (A(1)) + B(I)* D!.

Other chapters cover: the design of a distrib- uted operating system for a distributed computing system, which discusses amongst other things the important question of security; (very) formal models of concurrent processes; the theory of complexity analysis of parallel algorithms; and methods for exposing the parallelism in linear algebraic computations.

The final chapter is the one which probably has the most direct relevance for EJOR readers. Kindervater and Lenstra introduce the concepts of parallel computation from the viewpoint of com- binatorial optimization. To do this a discussion of complexity theory for parallel computation is re- quired, which shows how the built-in assumptions of conventional (serial) complexity analysis need to be re-examined.

This book is good intellectual value, and good financial value too: it is (almost) worth buying it for Van Leeuwen’s chapter alone. The only minor

criticism is that it consists of lectures given in 1983, and thus describes work probably over 4 years old. We are all used to the increasingly long submission-to-publication times for journal articles, but in such a book it ought to have been possible to produce it sooner. The fact that many chapters are introductory rather than research papers however, does lessen this small criticism.

Alan WOOD University College London London, United Kingdom

William M. TURNER

Scientific Programming: Using FORTRAN 77

Hutchinson Computer Studies Series, Hutchinson, London, 1986, 154 pages, f7.95

A new title on FORTRAN programming is usu- ally considered as just another book on the sub- ject. This isn’t the case with Turner’s book for at least three reasons: (1) To some extent, Turner’s book treats the subject from the point of view of structured programming. Concepts such as top- down design and modular programming, program- ming style, steps in program development are em- phasized without going into software engineering terminology, (2) The notions of accuracy, preci- sion and error, .which are very important in scien- tific computation, are introduced, and (3) Several famous scientific libraries, without which FOR- TRAN would not still be alive, are introduced to the reader and the strength of the language is demonstrated on example programs that use these libraries. Examples are chosen from the fields of numerical methods (NAG library and FEVA package), statistical computing (BMDP and SPSSX packages) and computer graphics (GHOST-80 and FEVA packages). Although the availability of packages for modeling and simulation of both continuous and discrete systems are mentioned these techniques are illustrated with programs that do not make use of these packages.

The book is divided into fifteen chapters. The first two give the concepts of scientific computing and program design. The next seven chapters treat the elements of FORTRAN programming more or less in the usual order: Arithmetic expressions and the assignment statement, branching, input and