В наши дни COBOL не назовёшь очень модным языком программирования. Молодые разработчики нечасто выбирают его для изучения, а многие опытные специалисты уже на пенсии.
COBOL – один из первых языков программирования в мире. В 60-е годы он использовался для разработки бизнес-приложений. Несмотря на свой возраст, многие из тех систем работают до сих пор, и их модернизация – довольно большая проблема.
На иллюстрации слева – Грейс Хоппер, американский учёный и контр-адмирал флота США, одна из разработчиков Кобола и вообще создателей концепции машинно-независимых языков программирования. Её называют «бабушкой Кобола».
Возвращаясь к комиссии по пенсионному обеспечению железных дорог, по последним финансовым отчётам, в их распоряжении находится 200 основных приложений, которые работают на COBOL и специализированных мейнфреймах. В общей сложности это богатство содержит 4200 компьютерных программ и около 7 млн строк кода. Можно примерно оценить объём работы.
По документам, RBB собирается выделить на обновление ИТ-инфраструктуры чуть более $12 млн до окончания 2017 финансового года (то есть на два ближайших года). Вероятно, это только начало. Проект рассчитан на две фазы и может затянуться на несколько лет. RBB рассчитывает перейти на распределённую инфраструктуру с открытыми стандартами. План также предполагает «фундаментальную смену парадигмы с batch-ориентированных процессов на непрерывные транзакционные процессы. Желательно, чтобы в результате приложения работали более эффективно, имели простую, более понятную логику и были лучше задокументированы». Из этой фразы можно предположить, что в нынешнем состоянии программный код неэффективен, непонятен и плохо задокументирован.
Встреча с потенциальными подрядчиками состоится 21 в чикагской штаб-квартире RBB.
Проблема модернизации древних ИТ-систем особенно актуальна для США, где информатизация началась раньше других стран. Но такие ситуации, как у RBB, наверняка возникают и в наших краях.
Комментарии (39)
justaguest
11.05.2015 15:56+2Давайте я буду первым, кто обратит внимание на этот совершенно заурядный факт: один из разработчиков языка программирования (!) — человек с очень высоким званием «контр-адмирал флота США»(!!), и этот военный человек еще является и учёным(!!!). Ну, и, что бы окончательно добить — это женщина.
SerJook
11.05.2015 16:08-1Ну покрыть юнит тестами, да переписать
bormotov
11.05.2015 22:16+3люди хотят уйти от пакетной обработки, какими юнит-тестами, простите, этот уход нужно подкреплять?
По сути, задача — разработка новой системы, с новыми требованиями и тд, для части которой, можно будет некий данные (вход/выход) взять из текущей. Задача, кстати, может быть интересной, но без знания прикладной области, вот эти 200 приложений не заменить. Второй необходимое условие успеха всего процесса — наличие у заказчика в высшем руководстве реально заинтересованного лица, с правом голоса, и наличие «яиц» у этого лица. В такого рода замены непременно попадают разные «непопулярные меры», типа, сейчас какую-то задачу решает 10 приложений и отдел из 20-ти человек, а в новой системе это будет «получатся само», и этих людей нужно уволить (перевести на другую работу, которая им может не понравиться итд), предварительно выяснив, ключевые моменты их работы.
andy128k
11.05.2015 21:43-2«4200 компьютерных программ и около 7 млн строк кода»
Не так уж и страшно. Если это отдельные программы и они логически отделены, то каждая по-отдельности (в среднем) не так уж и велика. Переписывать, конечно, много, но не так уж и неподъёмно.Alexeyslav
12.05.2015 09:03+3По одной программе в день(фантастика!) нужно будет минимум 11 человеко-лет труда без болезней, выходных и отдыха.
Типичный программист(где-то были исследования на эту тему) выдает в день 14 строк кода с написанием, отладкой и всем прочим. Сколько для этого нужно человеко-лет, сами посчитаете? А на это дело выделили всего 12млн$, т.е. немногим меньше чем 2$ за строчку кода который надо будет переписать. Большая часть из которых уйдет на орг.меры, т.е. не достанется конечным исполнителям.
Я бы сказал, на первый взгляд это вообще нищенский бюджет под такую задачу.areht
15.05.2015 10:54> Типичный программист(где-то были исследования на эту тему) выдает в день 14 строк кода с написанием, отладкой и всем прочим.
Это для 50-ти летней проги на коболе.
На новом коде всё оптимистичнее
Pinsky
15.05.2015 12:19+1>Типичный программист(где-то были исследования на эту тему) выдает в день 14 строк кода с написанием, отладкой и всем прочим.
И 200 ответов на хабре.Alexeyslav
15.05.2015 14:40Это 14 готовых строк, а пишет за день гораздо больше. Да и среднее это по больнице. Кто-то больше кто-то меньше, наверняка есть такие маги которые сразу пишут без ошибок как автомат и выдают по 1000 строк в день при этом не нуждаясь в отладке.
degs
11.05.2015 23:40+4Даю пессимистический прогноз: когда систему заменят на новую, все пользователи дружно взвоют и потребуют возвращения старой системы. Потому что она привычнее, надежнее, не падает каждые десять минут и вообще быстрее, а с этой работать ну никак невозможно. Потом со временем конечно привыкнут, но вначале взвоют обязательно.
Mixim333
12.05.2015 19:08Я бы сказал по другому: «Даю реалистичный прогноз:...». Сам еще в начале года делал по ТЗ одну систему для замены старой (небольшой корпоративный сайт, на котором обрабатывается до черта и больше информации); проходит месяц после релиза, смотрю появилось ли что-то новое в БД от моего сайта — две новых записи в самый первый день — «Ну ладно, Вам не надо — мне не надо», подумал я; затем проходит совещание, всем уже начальство объявило, что есть такой сервис, какой он хороший и т.д. — на следующий день: «Да, все удобно, но хотелось бы еще вот это, вон то, а также нам нужна эта фича и эта...» (в старой версии этого ничего не было); сейчас сижу реализую эти фичи и наконец-то старая система действительно сдохла (перестали пользоваться)
Rumlin
Не представляю у нас, где у нас может возникнуть такое. Может, где в медучреждениях foxpro живет. Даже Фортран я встречал лет 15 назад и тогда это уже выглядело как экзотика (доценты на физфаке писали программы).
EndUser
Может быть и поныне пишут. Им удобнее пакетный ввод-вывод. В экранную форму-то, небось, сложновато ввести 70000 чисел.
shpaker
Ну например на моей работе, кем-то странным, было принято решение писать основную программу с которой работают на рабочих местах, в Delphi в связке с Firebird, в котором нужно хранить очень много данных. А время идёт, и обновления необходимы регулярно, а делфи уже совсем не торт.
Rumlin
Если решение было принято лет 10 назад, то вполне оправдано т.к. C++ существенно сложнее, а Delphi многие изучали в университете и найти разработчиков было проще.
shpaker
Не хочется в детали вдаваться, но срок гораздо меньше чем 10 лет. Да и не важно, вы же писали что не представляете где у нас такое возникнуть может, вот я вам и отвечаю что может, и ещё как ))
Tonna
Не вижу проблем с Delphi. На многих предприятиях до сих пор пишут на нем ПО.
У меня сын на первом курсе ведущего московского ВУЗа еще паскаль изучает.
idiv
Для изучения программирования с нуля Паскаль самое оно (подготовка может быть у всех разная, а общая база нужна). Главное дальше развиваться, чего зачастую в наших ВУЗах не наблюдается.
lubezniy
А что, в рамках Delphi после вуза развиться нельзя?
idiv
Мое мнение, что для нулевых знаний Паскаль — самое оно, он несколько проще Делфи.
Я имел ввиду, что в ВУЗах неплохо бы еще что-то серьезное давать, С, С++, Java (это то, что используется в моей специальности) С#, а не останавливаться на Паскале и ставить в диплом «программирование». Расширять кругозор, так как потом многим инженерным специальностям они понадобятся в той или иной мере (по крайней мере в западной классификации инженер должен иметь представление об этих языках).
Impuls
Скажу Вам больше. У меня на работе рабочие места писаны на: Delphi+Fortran+Firebird. Вот это умат. Правда сейчас проблемка с Fortran для win7 x64. Оттого потиху пилят под что-то другое. Ах да. Еще и с документацией проблемы, точнее ее вообще нет
rtzra
А чем «Делфи не торт»? Сложно найти разработчиков или «понаписано и недокументировано»?
fundorin
Возможно, на ГЭС, атомных электростанциях и в других режимных учреждениях.
Spetros
Недавно было сообщение о том, что 30-летний сервер HP используется библиотекой института научной информации по общественным наукам. И вроде как его и терминалы обновлять пока не собираются.
geektimes.ru/post/248132
vxsw
Библиотекой ИНИОН? А этот сервер не сгорел?
vsapronov
Когда я учился в универе, то в одной конторе при факультете писали автоматический компилятор из кобола в джаву. Вроде бы проект был востребован — много мейнфреймов было, которые очень хотелось обновить. Но по-моему эти мейнфреймы были как раз в США…
stalinets
Недавний пример — сгоревшая библиотека, которая просила у народа компы на процессорах Intel от 80286 до 80486, потому что у них под такие компы заточен древний сервер…
Rumlin
Там больше от «денег нет», чем от древнего сервера.
Crazybot
Нет, т.к. они специально уточняли, что нужны именно такие машины и более новое приносить не нужно.
wiz
Бред какой-то. Процессоры такого класса сейчас чуть ли не в браузерах эмулируются.
Rumlin
Судя по публикациям — у них вопрос в софт и базе книг. Лет 30 наверное наполняли базу.
AmberSP
COBOL не знаю, а фортран очень активно используется в некоторых НИИ. Некоторые приложения для моделирования физических процессов написаны на нём, работают и выдают данные, которые хорошо соотносятся с экспериментальными. Так что никто это переписывать не собирается. Да и цена бага будет слишком высокая.
kefirfromperm
PowerBuilder
Pinsky
фортран и ныне жив)