Е.М.Лаврищева
ТЕХНОЛОГИИ ЭВМ И СИСТЕМ. КОНЦЕПТУАЛЬНЫЕ
ИДЕИ В.М. ГЛУШКОВА И НАПРАВЛЕНИЯ ИХ РАЗВИТИЯ
Е.М.Лаврищева
Институт программных систем НАН Украины, Киев
Посвящается 90-летию 23.08.2013. со дня
рождения академика В.М. Глушкова
Аннотация. В работе описаны идеи академика Глушкова, внесшие значительный вклад в постановку задач технологии программирования и путей их развития. Такими технологиями являются: технологии ЭВМ, автоматизированных систем и семейств программных систем. Базис технологий – сборочный конвейер академика Глушкова, который реализован в студенческой фабрики программ в рамках лекционных курсов – технология программирования и SoftwareEngineering (SE) в КНУ имени Тараса Шевченко и филиала МФТИ при институтути Кибернетики имени Глушкова..
Академик В.М.Глушкова является автором семи парадигм [1]: математическая теория проектирования ЭВМ и компьютерных систем; теория алгебраического преобразования математических задач и доказательства теорем; принципы и методы построения информационных систем, АСУ и АСУ ТП; идея внутреннего интеллекта ЭВМ и принципов взаимодействия человека с компьютерной средой; экономические модели и путь совершенствования систем. Ксписку этих парадигм необходимо отнести и технологию программирования (ТП), которую В.М.Глушков сформулировал в 60–х годах прошлого столетия, как перспективный способ постепенного перехода от ремесленного к промышленному производству компьютеров и программ. В.М.Глушков считал технологию двигателем прогрессивного развитиялюбой науки, в том числе теории создания ЭВМ, программного обеспечения ЭВМ и автоматизированных систем (АСУ, АСУ ТП, САПРи др.). Он внес существенный вклад в технологию разработки отечественных универсальных,управляющих ЭВМ, машининженерных расчетов (серия «Мир») и машин со схемной интерпретацией языков высокого уровня (проект «Украина») и др.
Первая статья Глушкова в области ТП посвящена автоматизации программирующих программ (ПП) (Об одном методе автоматизации программирования, ж. Программирование, 1957), алгоритм которой промоделировалл его аспирант А.А. Стогний на примере схемы автоматизации решения систем дифференциальных уыравнений. Идея автоматизации ТП развивалась им для АС предприятий и организаций СССР. Им были сформулированы принципы и методы разработки ТП для АСУ, АСУ ТП, САПР [2] в рамках проектной программы ОГАС [3].
Автору данной статьи посчастливилось работать с академиком Глушковым над проектом создания управляющей машины УВК «Днепр–2», ПП с языков программирования (Автокод, Алгол, Кобол) и ОС управления технологическими процессами промышленных объектов. Первый вариант УВК «Днепр–2» (ВДНХ Москва, 1969) был внедрен в АСУ металлургического комбината ГДР (Берлин–Лейпциг) по межправительственному соглашению ГДР и СССР (1971–1974) с участием В.М.Глушкова. Группа разработчиков от Института Кибернетики Украины, включая автора, принимали участие в разработке АСУ ТП на площадке ВЦ комбината ГДР. В.М. Глушков. принимал участие в процессе разработки и приемки этой системы. Группа разработчиков была награждена орденом дружбы ГДР. Данная АСУ ТП проработала в ГДР вплоть до развала германской стены (1991).
Технологии ЭВМ и автоматизированных систем
Технология – это совокупность методов, способов, приемов, средств автоматизации и порядка их использования при производстве продуктов.
Технология ЭВМ. При изготовлении первой ЭВМ под руководством академика С.А.Лебедева сформирована технология проектирования и изготовления универсальных ЭВМ. Она совершенствовалась в плане унификации элементной базы и методов их сборки в отдельные структурные компоненты ЭВМ. Известны работы Глушкова В.М., Мясников В.А. и др., в которых предлагались новые виды рекурсивных, микро и макро конвейерных ЭВМ с новой элементной базой для организации высокоэффективных вычислений сложных математических и народнохозяйственных задач, а так же для управления оборудованием с приоритетным прерыванием объектов в системах АСУ и АСУ ТП. В.М.Глушков считал, что структурные элементы ЭВМ и систем будут постоянно модернизироваться и стандартизироваться. Процесс изготовления компьютерных систем будет приближаться к автоматизированной сборки, как на конвейере Форда. Сборочный конвейер – это технологические линии (ТЛ) сборки отдельных частей компьютерных систем и систем в целом. Это предвидение сбылось. И сегодня мы видим, что компьютеры разных вариантов и типов собираются массово по принципу сборочного конвейера Форда.
В этот же период времени за рубежом формировалась компьютерная наука (Computer Sciences – СS), включающая теорию и технология создания аппаратных и прикладных вычислительных систем. Основные технологические направления СS: Computer Engineering (компьютерная инженерия или технология), System Engineering (системная технология), Software Engineering (программная инженерия или в нашем толковании – технология программирования.
Компьютерная технология– это теория, принципы и методы построения компьютеров (frameworks, микропроцессов, суперкомпьютеров и т.п.), а также системного обеспечения ЭВМ (ОС, трансляторов, компиляторов, загрузчиков и т.д.). Системная технология– это теория, методы и принципы построения, автоматизированных и информационных систем, систем управления и компьютерных систем (Computer Systems). Программная технология – это система методов, способов и дисциплин планирования, разработки, эксплуатации и сопровождения ПО, обеспечивающих промышленное производство ПП (www.swebok.com).
Позже сформировались наука информатика, включающая теорию построения информационных систем и технологий обработки данных на ЭВМ. Именно принципам и методам построения информационных систем В.М.Глушков посвятил свой последний научный труд «Безбумажная информатика» (1982) [4]. Информационные системы он рассматривал как компьютерные системы обработки информации на предприятиях, в органах управления и в деловой деятельности. Базис таких систем – документы, не бумажные, а электронные и система документооборота на всех уровнях управления государства. Информационные поисковые системы Интернет стали инструментом накопления, поиска и отбора различных информационных ресурсов, необходимых для массового применения. Информационные технологии стали базисом компьютерной инфраструктуры современных корпораций, предприятий и государственных органов управления, на которых решаются различные задачи обработки информации локального и глобального характера.
Технология АС, АСУ и АСУ ТП
Теория построения АСУ была изложена Глушковым в его монографиях [2–4], которыми руководствуются многие специалисты и сегодня. В 70–х годах 20 столетия В.М.Глушков уделял огромное внимание созданию первых АСУ в Украине. По его методологии создавались АСУ и информационные системы (например, АС ТП для Лисичанского химкомбината, Донецкого горно-обогатительного комбината, Львовского телевизионного завода, немецкого металлургического комбината и др.). Предложенная им ОГАС для объединения разных АС и АСУ в единую систему организационного управления, доступную всем предприятиям страны, не была поддержана ЦК КПСС из-за огромных финансовых ресурсов на его реализацию.
Данная теория Глушкова постоянно развивается учеными и практиками. По его теории построена информационная система документооборота в сфере образования Украины (Задорожная Н.Т.). Она предоставляет систему поддержки и обмена документами в Академии педагогических наук (http://lib.iitta.gov.ua/view/creators) и учебниик подготовки ИТ–специалистов по информатики, который пользуется спросом в образовательной и управленческой сфере.
Идея сборочной технологии программирования
Анализируя работу В.М.Глушкова «Фундаментальные исследования и технология программирования» (1980) [3], приведем три выделенные им направления развития ТП:
модульная система автоматизации программирования« АПРОП (Лаврищева Е.М.) [5];
метод формализованных технических заданий, реализованный в системе «ПРОЕКТ» (Капитонова Ю.В., Летичевский А.А.) [6];
технология программирования для автоматизации проектирования технических и программных систем (РТК – комплекс И.В. Вельбицкого) [7].
Актуальной задачей перспективного развития ТП В.М.Глушков считал «технологии комплексного проектирования вычислительных систем, когда проектирование технических средств системы объединено в единый процесс проектирования базисного математического обеспечения». Эта идея реализована в системе ПРОЕКТ с использованием формализованных технических зданий и средств языка Аналитик «Мир–2».
В этот период сформировалась идея повторного использования готовых программных ресурсов для развития индустрии программ на государственном уровне. В СССР были созданы фонды алгоритмов и программ во всех республиках. С участием Глушкова сформирована концепция сборки программ (в системе АПРОП) [8], как путь к индустрии программ. Впервые dрамках системы возникла идея интерфейса разнородных модулей, как механизм передачи данных между ними. В результате сформировались понятия –готовые модули (reuses), интерфейс и метод сборки. Они – основа сборочного программирования и поддержки сборочного конвейера Глушкова. После смерти Глушкова (1982) сборочное программирование, как новый стиль программирования, поддерживал академик А.П. Ершов и профессор В.В.Липаев. Система АПРОП [8] разрабатывалась при финансовой поддержке министерства радиопромышленности СССР более 10 лет. Она стала составной частью системы «Протва». Технология сборки вошла в состав системы «Протва», была представлена государственной премии СССР (1987) и внедрена в 52 организации СССР.
Интерфейс интересовал всех программистов. Ему была посвящена международная конференция «Интерфейс СЭВ» (1987). Нами была представлена концепция межъязыкового, межмодульного и технологического интерфейса. Организатор этой конференции ГКНТ СССР наградил (Коваль Г.И., Коротун Т.М., Лаврищеву Е.М.) почетной грамотой. Идея интерфейса – связник разноязычных модулей опередил зарубежные разработки. Интерфейс сохраняет свою актуальность. ЯзыкMIL (Мodule Interface Language) появилсяв1984г. Значительнопозже созданы: API (Application programs Interface), IDL (Interface Definition Language), SIDL (Scientifical IDL) идр.
Главный элемент сборочного конвейера – технологическая линия (ТЛ). Подход к разработки ТЛ предложен нами в 1987г. и апробирован в проекте Института Кибернетики АИС «Юпитер–470» для военно-морского флота СССР (1983–1991). В рамках данного проекта создано шесть ТЛ. С их помощью было создано около 500 программ обработки данных для разных объектов данной АИС. В 2004г. появилась альтернатива ТЛ – продуктовые линии (Product Lines) института SE США http://sei.cmu.edu/productlines/frame_report/) 2004г. Эти линии предлагают сборку семейства ПП из разработанных программных продуктов. Данный подход используется на коммерческой основе. Аналогично используется сборочный конвейер М.Фаулера в проекте ЕПАМ (Белоруссия) и др.
Индустриальная технология программирования
Вопросу индустрии ПО большое внимание уделило правительство Украины, которое провело международный научный конгресс 17–18 ноября 2011 и 25–27 октября 2012 по инфраструктуре электронного правительства и индустрии ПП. Отмечено, что индустрия развивается в основном за счет зарубежных фирм, которых в Украине более 1000. В основном они создают продукты силами наших студентов и результаты этих работ стране, как правило, не предоставляются. Известная комерческая фирмой «Миротех» (Н.В.Роенко) успешно развернула программисткие работы, необходимые украинским органзациям и стране в целом.
Данный период развития индустрии программ в мире характеризуется дальнейшим усовершенствованием объектов сборки и линий сборочного конвейера на фабриках программ. Анализ, проведенный в работе (Андон П.И., Лаврищева Е.М., Весник НАНУ, 2010), показал, что в мировой практике существует спектр индустриальных технологий. Это – мульти-технология К. Чернецки и К. Айзенекера с лейтмотивом «от ручного труда к конвейерной сборке»; технология И. Бея с автоматизированным взаимодействием разноязычных программ; потоковая сборка – use case фабрик программ Дж. Гринфильда и Г.Ленца и многие другие. Общее, что их объединяет – линии сборки различных видов программ для массового использования. Каждая линия повышает производительность, сокращает число сборок снижает себестоимость выпуска ПП. О таком конвейере мечтал академик Глушков (1975).
Фабрика программ к 90-летию академика Глушкова
Концепция сборочного конвейера Глушкова реализована с участием студентов 4 курса факультета кибернетики КНУ и МФТИ под руководством проф. Лаврищевой Е.М. в виде фабрики программ (веб-сайт http://programsfactjry.univ.kiev.ua). Фабрика – составная часть инструментально-технологичного комплекса ИТК ИПС [9] (http://sestudy.edu-ua.net). Она оборудована простыми линиями, созданными студентами. Это ТЛ: программирование в языках. С# VS.Net, Java, DSL; построение артефактов для информационных и программных систем с их сохранением в репозитории; сборка программных компонентов в сложные структуры ПС; трансформация передаваемых типов данных; метрический анализ и оценка качества ПС; обучение теоретическим и прикладным аспектам SE по е-учебнику. Основу этой фабрики составляют готовые компоненты повторного использования. Фабрика практически работает в Интернете с декабря 2011г. К ней обратилось более 10 000 пользователей из разных стран. Фабрика пополняется новыми линиями: генерация прикладных систем в языке DSL (Domain Specific Language); трансформация общих типов данных GDT стандарта ISO/IEC GDT к фундаментальным FDT; построение распределенных ПС из сервисов и др. Идея сборочного конвейера определила ход развития индустрии ПП и фактически студентами сделан подарок к 90–летию Глушкова.
Вывод. Технология сборки, предложенная Глушковым, реализована на сайтах. Они многоязычные (укр., рус., англ.), уникальны, так как реализуют идею сборочного конвейера Глушкова. Сайт фабрики ориентирован на обучение студентов современным фундаментальным основам ТП, SE и получения знаний в области индустрии программных продуктов. Как показывает GOOLE статистика, их используют вузы Украины, стран СНГ, а также других стран по специальностям: информатика, ТП, SEи Computer Sciences.
Список литературы
1. Капитонова Ю.В., Летичевский А.А. Парадигмы и идеи академика В.М. Глушкова.– Киев, Наук. Думка.– 2003.–355 С.
2. Глушков В.М. Кибернетика, ВТ, информатика (АСУ).–Избр. труды в 3–х томах. –Киев, Наук. думка, 1990, 262 С, 267 С., 281 С.
3. Глушков В.М. Фундаментальные основы и технология программирования //Программирование, 1980.–№2.–С. 3–13.
4. Глушков В.М. Основы безбумажной информатики.– Москва, Наука, 1982. – 552 С.
5. Глушков В.М., Лаврищева Е.М., Стогний А.А., Моренцов Е.И. и др. Системаавтоматизации производства программ (АПРОП). – Киев: Ин – т кибернетики АН УССР, 1976. – 134 С.
6. Глушков В.М., Капитонова Ю.В., Летичевский А.А. О применении метода формализованных технических заданий к проектированию программ обработки структур данных.– Программирование, 1978, №6, С.31–40.
7. Вельбицкий И.В., Ходаковский В.Н., Шолмов Л.И. Технологический комплекс автоматизации программ на машинах ЕС ЭВМ и БЭСМ–6. М.: Финансы и статистика.–1980.–253 С.
8. Лаврищева Е.М., Грищенко В.Н. Cвязь разноязыковых модулей в ОС ЕС.–Москва, Финансы и статистика, 1982. – 127 С.
9. Лаврищева Е.М., Зинькович В.М., Колесник А.Л. и др. Инструментально-технологический комплекс разработки и обучения приемам производства программных систем, (укр.).– Государственная служба интеллектуальной собственности Украины.– Свидетельство о регистрации авторского права.– № 45292, от 27.08.2012.–103 C.
Technologies of computer and systems. Conceptual ideas of V.M.Gluchkov and
Directions oftheir development
Е.М.Lavrischeva
lavrischeva@gmail.com, Institute of the program systems of Ukraine NAN, Kiev
Annotation.Gluchkov’s academic ideas, bringing in the considerable deposit in raising tasks of technology of programming and ways of their development are described in work. Such technologies are: Computer technology, automated systems and families of the program systems. Base of technologies – assembly line of the Gluchkov academic, which is realized in student factories of the programs within the framework of lecture courses – technology of programming and Software Engineering (SE).
Technology of computers, automated systems, families of software products, assembling programming, interface, assembling conveyer, lines, factories of the programs, web-site of factory.