Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Perspectives of system informatics : a comparative presentation of object-oriented programming with C++ and Java
Broy M. (ed), Zamulin A. (ed), Bjorner D., Springer-Verlag New York, Inc., Secaucus, NJ, 2002. 561 pp. Type: Book (9783540430759)
Date Reviewed: Jul 3 2003

Included in this book are the proceedings of the Fourth Andrei Ershov Memorial Conference celebrating Ershovs seventieth birthday. Ershov (1931-1988) was one of the founding fathers of programming in the former Soviet Union, and his contributions to informatics (both theory and practice) and its teaching were outstanding. The wide variety of topics discussed in the conference papers reflects, to some extent, the wide variety of Ershovs interests and contributions. Unfortunately, informatics educationboth in middle school, high school, and collegewas not presented in the papers (except for a couple of paragraphs in the excellent overview paper by Pottosin), although Ershov contributed much in this area, especially emphasizing the need to teach concepts rather than currently fashionable (or currently widely used) technology.

The 48 papers were organized in sections on computing and algorithms, logical methods, verification, program transformation and synthesis, semantics and types, processes and concurrency, unified modeling language (UML) specification, Petri nets, testing, software construction, data and knowledge bases, logic programming, constraint programming, program analysis, and language implementation. Two invited talks from the memorial session were also included. It is interesting to note that the paper by Jhi et al., A Prolog Tailoring Technique on an Epilog Tailored Procedure, was classified as a logic programming one, probably due to the meaningful term prolog in its title, while in fact, the paper is about optimization of register-saving instructionscalled a prologin the context of compiling a (general purpose) procedure call.

Some papers clearly distinguish between modeling and reasoning (in Dijkstras terms, pondering and reasoning), with the very short abstract by Gurevich on the abstract state machine (ASM) paradigm being very explicit about it: ASM... is system informatics where modeling is carefully separated from formal reasoning. Notice that formal reasoning is possible only when the raw computational reality is given a mathematical form. ASMs do the modeling job. The separation of modeling and reasoning does not underestimate the role of reasoning. At the same time, many papers deal predominantly, or even only, with reasoning, and require very substantial prerequisites for their comprehension. Only in a few situations, exemplified by Mosses paper on the varieties of programming language semantics, did the authors explicitly intend to make their papers accessible to all computer scientists.

In addition to the already mentioned remarkable papers by Pottosin, Mosses, and Gurevich, the following papers are well-written and of interest to a relatively wide audience: two papers on specification-based testing by Petrenko and Bourdonov et al., where the authors advocate and describe specification extensions of usual programming languages like Java; the paper by Terekhov et al. on closing the gap between academic and industrial software engineering, which describes a tool for automatic reengineering of legacy software; the paper by Sazonov on using agents for concurrent querying of Web-like databases using a hyper-set-theoretic approach; and the paper by Granvilliers et al. on a very nice extensible graphical language for describing the cooperation between constraint solvers. Unfortunately, even the authors who follow the tradition of Ershov by using theoretical models to assist in solving practical problems (Pottosin) emphasize that only developers having special skills and education can efficiently (sic) use a specification language (Bourdonov et al.) and that the necessity of specification development extends time length and raises the cost of software development. In addition, the specification needs personnel with specific skills (Petrenko). Here we should remember that, as Dijkstra noted some time ago, it would be very counterproductive to reject proper surgical procedures for the reason that they would be too difficult for the barber in the shop around the corner.

A number of the papers should have been edited more closely by a qualified editor before publication.

Reviewer:  H. I. Kilov Review #: CR127901 (0310-1021)
Bookmark and Share
  Reviewer Selected
Featured Reviewer
 
 
Software Engineering (D.2 )
 
 
Conference Proceedings (A.0 ... )
 
 
Formal Definitions And Theory (D.3.1 )
 
 
General (F.1.0 )
 
 
Computers And Education (K.3 )
 
 
Computers And Society (K.4 )
 
  more  
Would you recommend this review?
yes
no
Other reviews under "Software Engineering": Date
Relationship quality: the undervalued dimension of software quality
Russell B., Chatterjee S. Communications of the ACM 46(8): 85-89, 2003. Type: Article
Oct 14 2003
Executable JVM model for analytical reasoning: a study
Liu H., Moore J.  Interpreters, Virtual Machines and Emulators (Proceedings of the 2003 workshop, San Diego, California, Jun 12, 2003)15-23, 2003. Type: Proceedings
Sep 24 2003
On software maintenance process improvement based on code clone analysis
Higo Y., Ueda Y., Kamiya T., Kusumoto S., Inoue K.  Product Focused Software Process Improvement (Proceedings of the 4th International Conference, Dec 9-11, 2002)185-197, 2002. Type: Proceedings
Sep 29 2003
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy