This is the proceedings of an international conference held in Udine, Italy, in May 1997. The 32 papers are grouped under the seven headings of:
- 1
Educational;
- 2
Quality and Reliability;
- 3
Methodologies;
- 4
Metrics;
- 5
Testing and Validation;
- 6
Object Orientation; and
- 7
Industrial Case Studies.
Of the five papers under the first heading, one draws parallels between course construction and the writing of software, with constructive criticism of current practices in both areas. Two others deal with particular teaching tasks, respectively the teaching of abstract algebra and of expert system construction. The requirements of the abstract algebra application are well met by an object‐orientated programming environment. Another paper deals with the teaching of software engineering through the Internet, and another reports and discusses the result of a survey of student attitudes to the use of a particular programming language for teaching. Although the languages under consideration are modern ones allowing object‐oriented programming, there is clearly a dilemma of the kind that has been indicated by reference to Fortran as “the language that refuses to die”. There is a problem because the languages that the teachers would like to use to encourage good programming practices are not those that employers will expect the students to know and in which much software is already written.
Under the other headings, each general theme is developed using a similar variety of approaches. A paper under the heading of “Methodologies” reviews a total of 11 interesting developments in the computer mediated control of complex systems, of which all except number eight constitute dramatic failures, and include such notorious examples as the breakdown of the London Ambulance Service and the disastrous investment speculation of the Church of England Commissioners.
Under the heading of “Metrics” there is attention to measures of program complexity. A simple and obvious measure is a count of the number of lines of code needed, but this is not satisfactory, particularly where the programming is object‐orientated and program modules inherit characteristics from others, possibly with multiple inheritance. With multiple inheritance the “family tree” becomes a lattice and complexity measures are described that take account of this. A criticism that has to be made of one of the papers is that it uses an acronym, DAG, actually in the paper title, without anywhere defining it. It probably stands for “Directed Acyclic Graph”, but the author should have defined it explicitly.
The final section, with the rather general heading of “Industrial Case Studies”, consists of two papers. One stresses the importance of documentation as an integral part of a software product, an aspect that is well known to be often neglected by software writers. The other reports a study of the reliability of a new technical development, namely the use of infrared links for the transfer of data between computers. The transmission of small amounts of data by infrared is a well tried technique used in remote controls for television sets and the like, and the new idea is to use it for serious data transfer, as an alternative to plug connections. The study reported here suggests that the method is entirely feasible.
An interesting aspect of the conference is the wide geographical distribution of the affiliations of the authors. The host country, Italy, contributes only five of the 32 papers, and although Britain and USA are the home countries of the sponsoring organisation, each of them contributes only a few papers. The advanced aspects of computing are receiving very widespread attention.
There is a great deal of interesting, useful and topical material here, but it takes some effort to discover just what is on offer since there is no editorial summing‐up, either for the work as a whole or for the sections. The standard of production is high, with all of the papers typeset with impressive uniformity. Unfortunately this is reflected in a high selling price which will probably mean that the material does not become as widely available as it deserves.
