Reverse Engineering
On this page I will list my involvement in
reverse engineering.
Comments are most welcome!
Reverse engineering and system renovation: an annotated bibliography
Click here to view our annotated
bibliography on reverse engineering and system renovation. Click here to view it with xdvi (to produce hard
copy please process the dvi file with the most silly name that belongs to
you that resides on /tmp of your machine). The bibliography was written
by Mark van den Brand,
Paul Klint,
and Chris
Verhoef. This annotated bibliography has appeared in the 1997 January
issue of ACM Software
Engineering Notes.
In our annotated bibliography, we listed some URLs concerning
reverse engineering. For the sake of ease, you can click here to access them.
The On-Line Reverse Engineering Bibliography
Rainer Koschke and I merged our bibliographies and
we hope that others join us so that the The On-Line
Reverse Engineering Bibliography will remain the largest
on-line bibliography on this subject. Please read more
about it, or access it directly.
Don't forget to add this link to your bookmarks.
Core technologies for system renovation
Click here to view our paper in html
format, but for a view that incorporates the figures in the correct way,
please click here for a view with xdvi or here for PostScript. The paper is written
by Mark van den Brand,
Paul Klint,
and Chris
Verhoef. Note: this paper has been presented on the XXIII-rd
Seminar on Current Trends in Theory and Practice of Informatics: SOFSEM '96 and
it appeared in the proceedings.
Reengineering needs Generic Programming Language Technology
Click here to view the paper
in html format. To view in in dvi format click here. For a PS-file click here. The paper is written by Mark van den Brand, Paul Klint, and
Chris
Verhoef. Note that this paper appeared in the 1997 February issue of ACM SIGPLAN Notices.
Obtaining a COBOL Grammar from Legacy Code for
Reengineering Purposes
Click here to view
the paper in html format. For a PS-file click here. The paper is written by Mark van den Brand, Alex Sellink, and Chris
Verhoef. this paper appeared in the
Proceedings of the 2nd
International Workshop on the Theory and Practice of Algebraic
Specifications.
Generation of Components for Software Renovation Factories
from Context-free Grammars
Click here to view the paper in html
format. For a version in pdf click here.
For a PS-file click here. The paper is
written by Mark van
den Brand, Alex
Sellink, and Chris
Verhoef. This paper has been published in a special
issue of Science
of Computer Programming. Note: An extended abstract
of this paper appeared in the proceedings of the fourth working conference on
reverse engineering. Click here
to view the extended abstract in html format. For a PS-file of the
extended abstract click here.
IEEE Computer Society---Working Conferences on Reverse Engineering
With Micheal Blaha and Alex Quilici, I organized the
Fifth Working Conference on Reverse Engineering (WCRE
98). With Ira Baxter and Alex Quilici, I organized
the Fourth Working Conference on Reverse Engineering (WCRE 97). See also this
overview of the conference. I kindly acknowledge the
useful advices of Elliot Chikofsky (the founder of this
conference) and Linda Wills (she was involved in the 3rd Working Conference on
Reverse Engineering).
European Conferences on Software Maintenance and Reengineering
With Jurgen Ebert,
I organize the fourth European Conference on Software Maintenance and
Reengineering (CSMR
2000). With Paolo Nesi, Alex Sellink, and Ger Bakker, I organized the
third European Conference on Software Maintenance and Reengineering (CSMR 99). I appreciate
the useful advises of Lutz Richter (the founder of CSMR) and Franz Lehner
who was involved in earlier CSMR conferences.
Control Flow Normalization for COBOL/CICS Legacy Systems
Click here to view the paper in html format.
For a PS-file click here. The paper is
written by Mark van den
Brand, Alex Sellink,
and Chris
Verhoef. This paper has been presented at the 2nd Euromicro Working
Conference on Software Maintenance and Reengineering Florence, Italy
-- March 9-11, 1998.
Current Parsing Techniques in Software Renovation
Considered Harmful
Click here to view the paper in html format.
For a PS-file click here. The paper is
written by Mark van den
Brand, Alex Sellink,
and Chris
Verhoef. A presentation about parsing problems described
in this paper has been given by Mark van den Brand at the
6th Reengineering
Forum. The paper appeared in the proceedings of the International Workshop on Program
Comprehension, June 24-26, 1998 Ischia, Italy.
Evolutionary Software Engineering: A Component-based
Approach
Click here to view
the paper in html format. For a PS-file click here. For a PDF-file click here. The paper is written by Paul Klint and
Chris
Verhoef. This paper has been presented by Paul
Klint at the IFIP WG 2.4 Working Conference: Systems Implementation
2000: Languages, Methods and Tools Berlin, Germany 23-26 February
1998.
Reflections on the evolution of COBOL
Click here to view the paper in html format.
For a PS-file click here. The paper is written
by Alex Sellink and Chris Verhoef.
Native Patterns
Click here to view the paper in html format.
For a PS-file click here. The paper
is written by Alex
Sellink and Chris
Verhoef. This paper has been presented at the 5th IEEE
Working Conference on Reverse Engineering, 12-14 October, Honolulu,
Hawaii, USA.
For the technical report version, that contains implementation details on
how we generate native pattern languages, and indicates formal definitions
of native pattern languages click here
to view the paper in html format. For a PS-file click here.
Click here to view the extended abstract
in html format. For a PS-file click here.
A PDF file is here. The paper
is written by Alex
Sellink and Chris
Verhoef. It appeared in the proceedings of the 13th IEEE
International Conference on Automated Software Engineering October
13-16, 1998 Sheraton Princess Kaiulani Honolulu, Hawaii, USA.
Term Rewriting for Sale
Click here to view the
paper in html format. For a PS-file click here. The paper is written by Mark van den Brand, Paul Klint, and Chris Verhoef.
This paper has been presented by Paul Klint and Mark van den Brand (who
gave the demonstrations) at the Second
International Workshop on Rewriting Logic and its Applications
WRLA 98, Pont-a-Mousson, Nancy, France, 1-4 September, 1998.
Restructuring of COBOL/CICS Legacy Systems
Click here to view the paper in
html format. For a PS-file click here.
For a PDF-file click here. The paper is
written by Alex Sellink, Harry
Sneed, and Chris Verhoef.
We have put a sample program on the web with all its intermediate steps
so that the restructuring discussed in this paper can be followed step
by step. Click here to view 70
steps of restructuring.
Note that an extended abstract with the same title appeared earlier:
Click here to view the extended abstract
in html format. For a PS-file click here.
This extended abstract has been published in the proceedings of the third
European Conference on
Maintenance and Reengineering (CSMR99), 3-5 March 1999, Amsterdam,
The Netherlands.
Conservative Extension in Positive/Negative
Conditional Term Rewriting with Applications
to Software Renovation Factories
This paper is written by Wan Fokkink
and Chris Verhoef. It treats a fundamental theorem that is important
for the incremental development of software renovation factories.
The PostScript file can be found here.
This paper will be published in the second Conference on Fundamental
Approaches to Software Engineering (FASE'99), 22-26 March 1999,
Amsterdam, The Netherlands. Note that FASE'99 is one of the European Joint Conferences
on Theory and Practice of Software (ETAPS99).
Research Issues in the Renovation of Legacy Systems
Click here to view
the paper in html format. For a PS-file click here. For a PDF-file click here. The paper is written by Arie van Deursen, Paul Klint, and
Chris
Verhoef. This paper is an invited tutorial for the European Joint Conferences
on Theory and Practice of Software (ETAPS99), 22-26 March 1999,
Amsterdam, The Netherlands. This tutorial will appear in the proceedings
of one of those joint conferences: the second Conference on Fundamental Approaches to
Software Engineering (FASE'99).
An Architecture for Automated Software Maintenance
Click here to view the paper in html
format. For a PS-file click here. For a
version in pdf click here. The paper
is written by Alex
Sellink and Chris
Verhoef. This paper will be published in the Seventh
International Workshop on Program Comprehension (IWPC99),
May 5 - 7, 1999 Carnegie Mellon University, Pittsburgh,
PA, USA. Note that this article has been reprinted in COBOLWorld Online.
Towards Automated Modification of Legacy Assets
Click here to view the paper in
html format. For a PS-file click here.
For a pdf file click here. The paper
is written by Chris
Verhoef. This paper will be published in the Journal
Annals
of Software Engineering as part of a special issue on
Software Maintenance. The paper served as background material for
a Keynote for the Joint third World
Multiconference on Systemics, Cybernetics and Informatics and the fifth
International Conference on Information Systems Analysis and Synthesis
(SCI/ISAS'99), July 31 - August 4, 1999, the Sheraton World Resort,
Orlando, Florida, USA. For copies of the slides, please send me an email.
Generation of Software Renovation Factories from Compilers
Click here to view the paper in html
format. For a PS-file click here. For a
pdf file click here. The paper is written
by Alex Sellink
and Chris Verhoef.
This paper is published in the proceedings of the International Conference on Software
Maintenance (ICSM99), August 30 - September 3, 1999, Oxford, The
United Kingdom.
A Two-phase Process for Software Architecture Improvement
Click here to view the paper in html
format. For a PS-file click here. For a pdf
file click here. The paper
is written by
Rene Krikhaar,
Andre Postma,
Alex Sellink,
Marc Stroucken, and
Chris Verhoef.
(Rene, Andre and Marc work for Philips research.) This
paper is published in the proceedings of the International Conference on Software
Maintenance (ICSM99), August 30 - September 3, 1999, Oxford, The
United Kingdom.
Software Development is a Special Case of Maintenance
Click here to view the one-page abstract
in html format. For a PS-file click here.
For a pdf file click here. The one-page
abstract is written by Chris
Verhoef and serves as a primer of a keynote address to the 3rd Annual
IASTED International Conference on Software Engineering and Applications,
October 6-8, 1999 in Scottsdale, Arizona, USA and appeared in
the conference proceedings.
Development, Assessment, and Reengineering of Language Descriptions
Click here to view the paper in
html format. For a PS-file click here.
For a pdf file click here. The paper
is written by Alex
Sellink and Chris
Verhoef. The paper appeared in the Proceedings of the 4th European Conference on
Software Maintenance and Reengineering, Zurich, Switzerland, Feb
29 - March 3, 2000. Note that an extended abstract appeared earlier in
another proceedings. See above for details.
Scaffolding for Software Renovation
Click here to view the paper in html
format. For a PS-file click here. For a pdf
file click here. The paper
is written by
Alex Sellink and
Chris Verhoef.
This paper appeared in the Proceedings of the 4th European Conference on
Software Maintenance and Reengineering, Zurich, Switzerland, Feb 29 -
March 3, 2000.
How to Implement the Future?
Click here to view the paper in
html format. For a PS-file click here.
For a pdf file click here. The paper
is written by Chris Verhoef.
The paper serves as background material for a keynote address to the 26th Euromicro Conference
"Informatics: Inventing the Future", Maastricht, the Netherlands,
September 5--7, 2000 and will be published in the proceediings.
The Realities of Large Software Portfolios
Click here to view the paper in html
format. For a PS-file click here. For a pdf
file click here. The paper
is written by
Chris Verhoef.
The Realities of Language Conversions
For a PS-file click here. For a pdf
file click here. The paper
is written by
Andrey A. Terekhov
and
Chris Verhoef. We thank Ken Foskey for his
recommendation to read this paper.
We thank S.C. Sprong for his recommedation to read this paper. This paper is
published in the november/december 2000 issue of IEEE Software. This is a Russian
translation of our paper. It is published in the May-June
issue of the Open
Systems Journal, which is comparable to IEEE Software but then in
Russia. This paper has been reprinted in Cobolreport.com, then an
industrial forum. Our paper won Cobolreport.com's annual best paper
award.
Semi-automatic Grammar Recovery
Click here to view the paper in html format.
For a PS-file click here. For a pdf file
click here. The paper is written by Ralf Lämmel and Chris Verhoef. This paper is
published in Software -- Practice
& Experience.
VS COBOL II grammar
Grammar specification written by Ralf
Lämmel and Chris
Verhoef. Click here to view the
grammar in html format. Moreover at the grammar browser page you can
find several other grammars that we are working on.
Cracking the 500 Language Problem
Click here to view the paper in html
format. For a PS-file click here. For a
pdf file click here. The paper is written
by Ralf Lämmel and Chris Verhoef. This paper is accepted
for publication in IEEE
Software.
Reengineering the Corporation---A Manifesto for IT Evolution
Click here to view the paper in html
format. For a PS-file click here. For a
PDF-file click here. The paper is written by
Harry Sneed and Chris Verhoef.
Enabling the creation of knowledge about software assets
Click here to view the paper in
PDF format. The paper is written by Paul Klint and Chris Verhoef and appeared in Data &
Knowledge Engineering in 2002.
Software Product Line Migration and Deployment
Click here to view the paper in html
format. For a PS-file click here. For a
PDF-file click here. The paper is written by
David Faust and Chris Verhoef.
This paper is accepted for
publication in Software -- Practice
& Experience.
Architectural Modifications to Deployed Software
Click here to view the paper in html
format. For a PS-file click here. For a
PDF-file click here. The paper is written by
Steven Klusener, Ralf Laemmel and Chris Verhoef.
Toward an Engineering Discipline for Grammarware
For a PDF-file click here. The paper is
written by Paul Klint, Ralf Laemmel and Chris Verhoef.
Demonstrations of our tools
The tools that we describe in our papers can be demonstrated. In this
section we put some screen dumps of these demos, so that you have an idea
of the look and feel of the tools.
To demonstrate our tools to eliminate GO TO statements from COBOL systems
we have a demo. Its screen dumps are listed below. The use of native
pattern languages and the use of our tools for computer aided language
engineering, are demonstrated in three demos. The slides containing
screen dumps can also be found below.
Control Flow Normalization for
COBOL/CICS Legacy Systems
Computer Aided Language Engineering (CALE)
Part I -- Debugging BNF
Computer Aided Language Engineering (CALE)
Part II -- Native Patterns
Computer Aided Language Engineering (CALE)
Part III -- from grammar to tools
Software Architecture Reconstruction
This book is the PhD thesis of R. Krikhaar, who is employed at Philips Medical Systems,
Best, The Netherlands. Rene asked me to put his work on the Web so
that it is accessible to everyone who is interested. Click here to view the paper in PDF format. R. Krikhaar
graduated June 1999 on this thesis at the University of Amsterdam. Click
here for a impaired but searchable text-only
version of the thesis. For correspondence on his work, please mail
Rene Krikhaar.