, IEEE Computer Society
This special section contains four papers from the 23rd International Conference on Software Engineering (ICSE 2001). Today, the engineering of software profoundly impacts world economics. ICSE 2001, the premier conference for software engineering, which was held in Toronto, Ontario, Canada, featured the latest inventions, achievements, and experiences in software engineering research and practice, and gave both researchers and practitioners the opportunity to present, discuss, and learn.
The main ICSE 2001 program consisted of parallel tracks for 47 technical papers, eight case-study reports, six education papers, eight invited industry presentations, nine formal research demonstrations, and four panels. The program also contained five plenary sessions given by an outstanding set of invited speakers: Robert Balzer, Linda Northrop, Daniel Sabbah, Mary Shaw, and Bernd Voigt. The main ICSE 2001 program also contained two features new to ICSE: Challenges and Achievements in Software Engineering (CHASE), in which each session offered both research and industrial views of the same topic; and Frontiers of Software Practice (FOSP), which provided parallel sessions of minitutorials on new and promising areas of software engineering. Throughout the conference, there were also exhibits, posters, and informal research demonstrations.
Prior to the main ICSE 2001 program, there were 23 tutorials on a variety of topics and 23 workshops that offered an informal forum for interaction. Also, prior to the main ICSE 2001 program, there were three special symposia: the David L. Parnas Symposium, the Software Engineering Faculty Symposium, and the Doctoral Symposium. Finally, both prior to and immediately following the main ICSE 2001 program, there were a number of collocated conferences: International Workshop on Program Comprehension 2001, Engineering for Human-Computer Interaction 2001, Symposium on Software Reusability 2001, and Spin Workshop on Model Checking of Software 2001.
Following the conference, the program committee selected seven papers as representing the best of ICSE 2001. Revised versions of these papers underwent a second rigorous review process that involved reviewers external to the program committee. Of these, we accepted four papers for this special section.
The selected papers span a range of topics in software engineering, cover the development process, and present recent results for different steps in the process. They illustrate convincingly that ICSE papers each year provide significant contributions for improving all facets of software development.
The first paper, "Synthesis of Behavioral Models from Scenarios" by S. Uchitel, J. Kramer, and J. Magee addresses the requirements analysis phase and a corresponding automatic transition from requirements into design. The result of the transition algorithm is a Labeled Transition System, which can be formally verified. In this way, informally defined requirements given by scenario diagrams can be model checked and animated. Furthermore, this approach gives a clear semantics to Message Sequence Charts and supports modularization of large requirements specifications based on those charts.
The second paper, "A Scenario-Driven Approach to Trace Dependency Analysis" by A. Egyed goes a step further in the development process. It describes an approach for establishing traces between model elements (e.g., classes and data flow definitions) and their corresponding source code. Very often, this information gets lost when a system is maintained (or it has even never existed) and it is difficult to establish it again. The approach uses observed test scenarios that are executed on running software to gain this information. It can also be used to establish trace information between model elements only, which is also often not available.
The third paper, "Inference Graphs: A Computational Structure Supporting Generation of Customizable and Correct Analysis Components" by L.K. Dillon and R.E. Kurt Stirewalt proposes a special data structure to ease integration of formal analysis tools, such as model checkers, into software development environments. Rather than translating the output of a development environment, such as a (partial) graphical view of a software system, into and back from the mathematical model of an analysis tool, the approach suggests using labeled transition systems as a common notation for formal languages (e.g., LOTOS, Promela, LTL) and to refine them automatically down to operations of the internal data structure of a development environment.
Finally, the last paper, "Functional Paleontology: Evolution of User-Visible System Services" by A.I. Antón and C. Potts takes a rather unconventional and new look at software system evolution in general. The paper suggests an approach called functional paleontology to anticipate future changes of the functional requirements of software systems. The paper argues that this knowledge would help to make system architectures more adaptable. The paper examines the evolution and analysis of the telephony services available to domestic subscribers over a 50 year period as the main example and discusses the general patterns of functional evolution of this system.
The program of ICSE 2001 is the result of hard work by many dedicated people. The program committee members reviewed a large number of papers during a relatively short reviewing period, provided thoughtful and thorough reviews, participated in the discussion of the papers at the program-committee meeting, selected the papers for the symposium, and helped in the creation of the final program. In addition to his many tasks as General Chair for ICSE 2001, Hausi Mueller provided much support and assistance in the reviewing process, the program-committee meeting, and the creation of the final program. Finally, the authors thank the IEEE Transactions on Software Engineering Editor-in-Chief John Knight and the IEEE Computer Society staff for their patience, support, and cooperation during the review process. ICSE is an annual event sponsored by ACM SIGSOFT and IEEE Computer Society. We invite you to attend the next conference, ICSE 2003, which will be held in Portland, Oregon, May 3-10, 2003. Information about ICSE 2003 can be found at http://www.cs.orst.edu/icse2003/.