This course covers software reengineering techniques and tools that facilitate the evolution of legacy systems. This course is broken into three major parts. In the first part, the course discusses the terminology and the processes pertaining to software evolution. In the second part, the course provides the fundamental reengineering techniques to modernize legacy systems. These techniques include source code analysis, architecture recovery, and code restructuring. The last part of the course focuses on specific topics in software reengineering research. The topics include software refactoring strategies, migration to Object Oriented platforms, quality issues in reengineering processes, migration to network-centric environments, and software integration. Three term-hours, lectures, Fall, Y. Zou
This course covers software reengineering techniques and tools that facilitate the evolution of legacy systems. This course is broken into three major parts. In the first part, the course discusses the terminology and the processes pertaining to software evolution. In the second part, the course provides the fundamental reengineering techniques to modernize legacy systems. These techniques include source code analysis, architecture recovery, and code restructuring. The last part of the course focuses on specific topics in software reengineering research. The topics include software refactoring strategies, migration to Object Oriented platforms, quality issues in reengineering processes, migration to network-centric environments, and software integration. Three term-hours, lectures, Fall, Y. Zou