Есть работающая программа, но как она работает, никто не знает.
Реинжиниринг – преобразование.
Реинжиниринг – существенно более общее понятие, чем программирование.
Реинжиниринг похож на трансляцию. Но в отличие от трансляции занимается инфраструктурными преобразованиями:
o ввод-вывод (раньше перфокарты, магнитные ленты)
o диалог с человеком
o работа с базами данных
Бывает, что просто один фрагмент заменяется другим. Но чаще приходится обращаться к инфраструктурным особенностям программы (приходится менять что-то до, что-то после текущей позиции).
Реинжиниринг программного обеспечения – процесс преобразования старых программ на старых языках со старых платформ в эквивалентные на новых языках на новые платформы.
Иногда реинжиниринг подразумевает извлечение только необходимой функциональности.
Пример автоматизированных средств реинж. – «Modernization WorkBench» и «RescueWare».
Часть II. Технология программирования встроенных систем реального времени