С точки зрения избежания риска, подход NACA абсолютно оправдан. Повторное использование их инструментов не может. Они использовали разработку инструментов, чтобы помочь своим людям освоить Java и Linux.
Результат преобразования NACA не будет достаточно хорошим или даже ОО, и затруднит найм новых людей. Но это тестируемый, может быть реорганизован, и вы можете подключить лучшие переводчики.
[править]
Ира, ты, кажется, не очень осведомлен о риске.
Отправка программистов на cobol в java-курс не заставит их писать полезный объектно-ориентированный код. Это занимает несколько лет. В течение этого времени их производительность будет очень низкой, и вы в основном сможете выбросить весь код, который они пишут в первый год. Кроме того, вы потеряете 10-20% ваших программистов, которые не хотят или не способны осуществить переход. Многим не нравится возвращаться к статусу новичка, и это повлияет на порядок клевания, так как некоторые программисты воспринимают новый язык намного быстрее, чем другие.
Подход NACA позволяет бизнесу продолжать работать и не оказывает ненужного давления на организацию. График конвертации не зависит. Наличие отдельного переводчика на языке Java, написанного экспертами ОО, позволяет постепенно использовать Java для старой команды. Написание тестовых примеров увеличивает знание предметной области в новой команде Java.
Настоящая система oo - это переводчик, и именно здесь можно подключить лучших переводчиков. Сделать это легко, и вам не нужно прикасаться к сгенерированному коду. Если сгенерированный код достаточно уродлив, то это произойдет автоматически::)
- старые программисты изменят ввод cobol;
- новые java изменит переводчика.
[запускает переводчик один раз]
плохая стратегия Не делай этого. И если вам нужно отредактировать сгенерированный код, сохраните
отображение обратно. Это может быть автоматизировано. И должно быть. Гораздо проще делать подобные вещи в образе Smalltalk, но вы можете делать это с файлами. Есть люди с большим опытом работы с разными взглядами на один и тот же артефакт: на ум приходят дизайнеры чипов.
Переводчик должен быть инструктирован, чтобы вы могли создавать ежедневные счета, например,
- компоненты ввода кобола;
- Компоненты ввода-вывода Java;
- компоненты вывода в стиле кобол;
- Компоненты вывода в стиле OO.
Возможно, вы захотите прочитать:
Peter van den Hamer & Kees Lepoeter (1996) Управление данными проектирования: пять измерений платформ САПР, управление конфигурацией и управление данными, материалы IEEE, Vol. 84, № 1, январь 1996 года
[движущиеся платформы Cobol]
Переход от Cobol на мэйнфрейме к Cobol на Windows / Linux мог бы стать жизнеспособной стратегией для команды NACA, но вопрос был в том, чтобы перейти на Java. Если долгосрочная цель состоит в том, чтобы иметь современную ОО-систему и достичь ее с минимально возможным операционным риском, подход NACA является разумным. Это только первый шаг. Будет много рефакторинга.