Maintenance and Porting of Software by Design Recovery, Guillermo Arango and Ira Baxter and Peter Freeman
@InProceedings{ arango.baxter.ea:maintenance,
author = {Guillermo Arango and Ira Baxter and Peter Freeman},
title = {Maintenance and Porting of Software by Design Recovery},
booktitle = {CSM'85: Proceedings of the 1985 Conference on Software
Maintenance, {\rm (Washington, DC; November 11-13, 1985)}},
year = {November 1985},
pages = {42-49},
abstract = {DRACO paper on porting through transformation from source
code to abstraction back to new code. Captures
domain-specific knowledge.},
class = {Reengineering_in_General, Experiences, Alteration,
Re-Code, Program_Transformations,
Software_Reverse_Engineering, Reverse_Design,
Knowledge-Based_Concept_Assignment,
Human_Oriented_Concept_Assignment_by_Informal_Reasoning },
keywords = {domain modeling, domain analysis, DRACO}
}
TMM: Software Maintenance by Transformation, Guillermo Arango and Ira Baxter and Peter Freeman and Christopher Pidgeon
@Article{ arango.baxter.ea:tmm*1,
author = {Guillermo Arango and Ira Baxter and Peter Freeman and
Christopher Pidgeon},
title = {{TMM}: Software Maintenance by Transformation},
journal = {IEEE Software},
month = {May},
year = {1986},
volume = {3},
number = {3},
pages = {27-39},
abstract = { . Another DRACO-based paper. . Uses least common
abstractions. },
keywords = {domain modeling, domain analysis, DRACO},
class = {Reengineering_in_General, Experiences, Alteration,
Re-Code, Program_Transformations,
Software_Reverse_Engineering, Reverse_Design,
Knowledge-Based_Concept_Assignment,
Human_Oriented_Concept_Assignment_by_Informal_Reasoning}
}
Design Maintenance Systems, Ira D. Baxter
@Article{ baxter:design,
author = {Ira D. Baxter},
title = {Design Maintenance Systems},
journal = {Communications of the ACM},
month = {April},
year = {1992},
volume = {35},
number = {4},
pages = {73-89},
abstract = { . DMS . Advocates a transformational approach to SM at
the design level. . Maintain the design, generate the
implementation. . Uses TCL (!): Transformation Control
Language. . "Maintenance deltas": maintenance = applying
deltas to design. },
class = {Alteration, Re-Code, Program_Transformations }
}
A transformation system for maintenance: turning theory into practice, K. Bennet and T. Bull and H. Yang
@InProceedings{ bennet.bull.ea:transformation,
title = {A transformation system for maintenance: turning theory
into practice},
author = {K. Bennet and T. Bull and H. Yang},
pages = {146--155},
booktitle = {\cite{SM92}},
year = {1992},
note = { Describes the architecture of the Maintainer's Assistant,
a reverse engineering tool based on program
transformations. Discusses the role of metrics in selecting
appropriate transformations. Also see~\cite{WB93}},
class = {Alteration, Re-Code, Program_Transformations}
}
A catalog of object model transformations, michael blaha and william premerlani
@InProceedings{ blaha.premerlani:catalog,
author = {michael blaha and william premerlani},
title = {A catalog of object model transformations},
booktitle = {Third Working Conference on Reverse Engineering},
publisher = {IEEE},
year = {1996},
abstract = {The process of software development is gradually achieving
more rigor. Proficient develoeprs now construct software
indirectly through the abstraction of models. Models allow
a developer to focus on the essential aspects of an
application and defer details. Transformations extend the
power of models, as the developer can substitute refinement
and optimization of models for tedious manipulation of
code. This paper catalogs object modeling transformations
that we have encountered in our application work.},
keywords = {model, reverse engineering, transformation},
class = {Re-Code Program_Transformations Alteration }
}
On project-specific languages and their application in reengineering, Dmitry Boulychev and Dmitry Koznov and Andrey A.Terekhov
Available as
postscript.
@InProceedings{ boulychev.koznov.ea:on,
author = {Dmitry Boulychev and Dmitry Koznov and Andrey A.Terekhov},
title = {On project-specific languages and their application in
reengineering},
booktitle = {Proceedings of the 6th Conference on Software Maintenance
and Reengineering},
publisher = {IEEE Computer Society Press},
year = {2002},
pages = {177-185},
month = {March},
url = {http://users.tepkom.ru/ddt/Articles/ProjectSpecificLanguages.ps}
,
abstract = {We propose an approach for tuning reengineering tools to
particular projects. This approach is based on the informal
knowledge of the system, consisting of specific usages of
the programming language. We illustrate this process with
examples from an industrial project on PL/I to Java
conversion.},
keywords = {project-specific languages, language conversion, informal
knowledge, PL/I},
class = {Encapsulation_and_Finding_Objects_in_Legacy_Code Re-Code
Knowledge-Based_Concept_Assignment
Source-to-Source-Translatio Reverse_Design
Program_Transformations Alteration
Human_Oriented_Concept_Assignment_by_Informal_Reasoning
Software_Reverse_Engineering }
}
Reengineering Cobol Systems to Ada, R. Gray and T. Bickmore and S. Williams
@TechReport{ gray.bickmore.ea:reengineering,
author = {R. Gray and T. Bickmore and S. Williams},
institution = {InVision Software Reengineering, Software Technology
Center, Lockheed Palo Alto Laboratories},
title = {Reengineering Cobol Systems to Ada},
year = {1995},
note = { This paper describes the reengineering of 50,000 lines of
Cobol code and the translation to Ada. The goal was to do
it as automatically as possible. An inferential method was
used to obtain all needed information from the Cobol code
itself, no external information from users or programmers
was needed. The authors claim that inferential methods will
be the basis of the reengineering technology of the 21th
century},
class = {Alteration, Re-Code, Program_Transformations,
Source-to-Source-Translation}
}
Implications of automatic restructuring COBOL, J. Miller and B. Straus III
@Article{ miller.straus:implications,
title = {Implications of automatic restructuring COBOL},
author = {J. Miller and B. Straus III},
journal = {{ACM} Sigplan Notices},
volume = {22},
number = {6},
pages = {76--82},
year = {1987},
note = { The question whether or not mechanical transformations of
unstructured program code to a structured equivalent can
provide an improvement in the understanding of that program
is addressed. As an example the language COBOL is examined.
The paper also discusses a tool (called Structured
Retrofit) that performs such transformations for COBOL
mechanically},
class = {Alteration, Re-Code, Control_Flow_Normalization,
Program_Transformations }
}
The Realities of Language Conversions, Andrey A.Terekhov and Chris Verhoef
Available as
s6.pdf.
@Article{ terekhov.verhoef:realities,
author = {Andrey A.Terekhov and Chris Verhoef},
title = {The Realities of Language Conversions},
journal = {IEEE Software},
year = {2000},
volume = {17},
number = {6},
pages = {111-124},
month = {November/December},
url = {http://www.cs.vu.nl/~x/cnv/s6.pdf},
abstract = {Billions of lines of code that have been written in Cobol,
PL/I, and other old programming languages are still in
active use. Many commercial efforts to convert these to
more modern languages have begun, but few have succeeded.
These authors discuss the nuts and bolts of conversion
between several pairs of languages and some of the
possibilities and limitations of automating language
conversion. },
keywords = {source-to-source translation, language conversion, COBOL},
class = {Re-Code Source-to-Source-Translatio
Program_Transformations Alteration }
}
Automating Language Conversion: a Case Study, Andrey A.Terekhov
Available as
AutomatingLanguageConversion.pdf.
@InProceedings{ terekhov:automating,
author = {Andrey A.Terekhov},
title = {Automating Language Conversion: a Case Study},
booktitle = {IEEE International Conference on Software Maintenance},
publisher = {IEEE Computer Society Press},
year = {2001},
pages = {654-658},
month = {November},
url = {http://users.tepkom.ru/ddt/Articles/AutomatingLanguageConversion.pdf}
,
abstract = {Language conversion is a laborious process. Achieving the
maximum efficiency of conversion without compromising the
quality of converted system is the programmers' dream. This
paper illustrates the quest for this trade-off by a case
study. We consider an industrial reengineering project,
which included translation of a client/server system
written in a proprietary language into two different
programming languages. We also discuss various factors that
affect the automation level of language conversions. },
keywords = {language conversion, automation },
note = {There's also an extended version of this paper; it is
available on the Web at
http://users.tepkom.ru/ddt/alc.pdf},
class = {Reengineering_in_General Re-Code
Source-to-Source-Translatio
The_Pros_and_Cons_and_Risks_of_Reengineering
Program_Transformations Alteration Experiences }
}