http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-2.xsd
model for reengineering legacy software systems to object oriented systems
Object-oriented methodology facilitates the development and maintenance of large complex software systems. The migration of existing systems to object-oriented technology is becoming increasingly important. In this dissertation, a reengineering model is proposed to provide a comprehensive method to reengineer legacy software systems into an object-oriented systems. The model consists of three main processes: reverse engineering, merging, and object-oriented development. Reverse engineering extracts requirements and knowledge from an existing software system and redocuments the system. In the merging process, recovered requirements and knowledge from the reverse engineering process are merged with new requirements and knowledge. The merging process removes redundancy, checks for inconsistency, and detects incompleteness. In the object-oriented development, a reengineered system is developed using an object-oriented software development method. In this instance, Object Modeling Technique is employed. One of the major contributions of this research is that it demonstrates that a successful reengineering to object-oriented technology can be achieved by extracting requirements and knowledge from the original system as a basis for developing the object-oriented system. The model proved to be useful where a paradigm shift is needed. The effectiveness of the model was demonstrated by converting a legacy software system (implemented in C) into an object-oriented system (implemented in Smalltalk). A set of tools was also built to support the model. An additional contribution of this research is identification of guidelines that minimize the effort involved when transformation from non object-oriented paradigm into object-oriented paradigm is needed.