Based on the comparative review of several approaches to legacy system conversion and revitalization, the Lyee methodology application for the issue is presented to clarify its idea, the associated procedure, and the implemented tools. It could be said that with the tools and manual developed by ICBSM&T, the mechanical transformation of the conventional program to a Lyee-structured one becomes possible as long as the programs are made in a procedure-oriented language. In addition to the program structure conversion, the Lyee methodology permits people to choose any application language in the transformed program. At the same time, quite a new approach related to the system conversion is introduced, in which the chunk of data extracted from an old program is edited to make a new conventional structure program that has a logical sequence instead of a Lyee type of declarative program. These features can be realized through the concept of LyeeBELT, which is a set of word-information about the attributes, formulae, and conditions for an independent data item.
The overall workflow of the legacy program transformation is shown in the following.
A critical part in its implementation is the feasibility study (pre-analysis) stage where necessary information is supposed to be secured, and an appropriate plan and policy about the system to be revitalized in the new system environment should be clarified so as to customize the tools accordingly. If the initial process is completed, the mechanical legacy system conversion will be realized by registering the parameters in the tool, and the reestablishment of business knowledge in the LyeeBELT will be enabled. With the regulated business logic on the LyeeBELT, the program maintenance afterwards becomes drastically simplified and stable without the ‘spaghetti’ problem, so that software evolution can be possible. 相似文献
We introduce a general and in a certain sense time-optimal way of solving one problem after another, efficiently searching the space of programs that compute solution candidates, including those programs that organize and manage and adapt and reuse earlier acquired knowledge. The Optimal Ordered Problem Solver (OOPS) draws inspiration from Levin's Universal Search designed for single problems and universal Turing machines. It spends part of the total search time for a new problem on testing programs that exploit previous solution-computing programs in computable ways. If the new problem can be solved faster by copy-editing/invoking previous code than by solving the new problem from scratch, then OOPS will find this out. If not, then at least the previous solutions will not cause much harm. We introduce an efficient, recursive, backtracking-based way of implementing OOPS on realistic computers with limited storage. Experiments illustrate how OOPS can greatly profit from metalearning or metasearching, that is, searching for faster search procedures. 相似文献
Applying finite-state verification techniques (e.g., model checking) to software requires that program source code be translated to a finite-state transition system that safely models program behavior. Automatically checking such a transition system for a correctness property is typically very costly, thus it is necessary to reduce the size of the transition system as much as possible. In fact, it is often the case that much of a program's source code is irrelevant for verifying a given correctness property.In this paper, we apply program slicing techniques to remove automatically such irrelevant code and thus reduce the size of the corresponding transition system models. We give a simple extension of the classical slicing definition, and prove its safety with respect to model checking of linear temporal logic (LTL) formulae. We discuss how this slicing strategy fits into a general methodology for deriving effective software models using abstraction-based program specialization. 相似文献