Владимир Липаев - Очерки истории отечественной программной инженерии в 1940-е – 80-е годы
- Название:Очерки истории отечественной программной инженерии в 1940-е – 80-е годы
- Автор:
- Жанр:
- Издательство:Литагент «Директмедиа»1db06f2b-6c1b-11e5-921d-0025905a0812
- Год:2015
- Город:Москва, Берлин
- ISBN:978-5-4475-3299-4
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Владимир Липаев - Очерки истории отечественной программной инженерии в 1940-е – 80-е годы краткое содержание
Монография начинается с истории появления в нашей стране электронных вычислительных машин (ЭВМ) и программирования в 1940-е – 60-е годы. Далее изложена история проектирования и производства отечественных ЭВМ, а также средств и систем автоматизации технологических процессов производства программных продуктов в 1960-е – 80-е годы. Подробно представлена история формирования основных компонентов программной инженерии в 1960-е – 70-е годы. Внимание акцентируется на особенностях решения сложных задач по государственным заказам и на создании программных продуктов для мобильных и бортовых ЭВМ реального времени. Особое внимание уделяется истории разработки методов моделирования динамических объектов и стендов для тестирования и испытаний комплексов программ в реальном времени. Изложены методы оценивания качества программных продуктов, рисков, дефектов и ошибок при их разработке, а также история формирования требований к профессиям и квалификации специалистов программной инженерии в 1970-е – 80-е годы. Рассмотрен анализ сложности программных комплексов реального времени и распределение ресурсов ЭВМ для таких комплексов, характеристики и методы оценивания качества их компонентов. Один из разделов посвящен истории формирования в 1980-годы экономики программной инженерии, созданию средств технико-экономического анализа и экономическому обоснованию планов разработки крупных программных продуктов. Представлены реальные примеры их создания в 1960-е – 80-е годы для оборонных систем на основе методов программной инженерии.
Книга предназначена для специалистов по вычислительной технике и программной инженерии, программистов, студентов и аспирантов, интересующихся историей развития, успехами и проблемами отечественной науки и техники в этой области.
Очерки истории отечественной программной инженерии в 1940-е – 80-е годы - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:
Для специализированных ЭВМ указанные языки должны были образовывать взаимосвязанную систему языков программирования, в которой обеспечивался преемственный вертикальный переход от нижних уровней на более высокий уровень путем ввода новых конструкций в язык и, наоборот, исключением конструкций, не соответствующих задачам уровня. Разработчик функциональной программы или модуля специализированной ЭВМ могли бы выбирать уровень языка в зависимости от требований к эффективности использования ресурсов памяти и производительности. Удовлетворение этих требований зависело от характеристик трансляторов.
Было исследовано расширение текста транслированных программ при программировании на языках высокого уровня. Для специализированных ЭВМ по отношению к программе, записанной на автокоде, трансляторы с макроязыка давали расширения не более 10 %, а с алгоритмического языка около 20 %. Поэтому при жестких требованиях к эффективности программы по занимаемому объему памяти и производительности, программирование рекомендовалось проводить на автокоде. При более слабых требованиях к полноте использования ресурсов специализированных ЭВМ и хороших трансляторах, алгоритмические языки оказывались предпочтительными, поскольку программирование на них удобнее и сопровождается меньшим числом программных ошибок.
Описание базового автокода представляло собой унифицированный документ, который использовался при программировании любой специализированной ЭВМ. Он содержал сведения о принципах построения базового автокода и структуре его документации. В особом разделе приводилась структура программ, правила оформления модулей, записи связей по управлению и кодированию программ. В описание базового автокода вводился специальный раздел, содержащий правила формирования конкретного представления автокода, которые регламентировал действия по обозначению машинно-зависимых элементов автокода. Все функции транслятора с автокода , кроме генерации машинных команд, следовало адаптировать к явным значениям параметров специализированной ЭВМ, автокода и характеристикам проекта прикладной системы – заказа. Программы, реализующие перечисленные функции, следовало проектировать по методу параметризации.
В большинстве проектов макрогенератор не зависел от параметров условий применения. Однако в специальных проектах в него могли быть встроены машинно-зависимые функции распределения памяти и масштабирования. В этом случае подготовка макрогенератора осуществлялась аналогично подготовке компилятора алгоритмического языка.
Компилятор алгоритмического языка необходимо было настраивать на структуру памяти и форматы специализированной ЭВМ, а также на правила программирования операторов алгоритмического языка, учитывающие специфику системы команд специализированной ЭВМ. Настройка на параметры машины могла осуществляться тем же методом, который применялся для настройки транслятора с автокода.
Адаптируемость интерпретатора для отладки программ специализированной ЭВМ с исполнением на универсальной ЭВМ, при выбранных показателях качества по производительности, обеспечивалась совместным применением принципов проектирования адаптируемых программ. Для параметризованной компоненты интерпретатора в базу данных для настройки включались информационные модули, содержащие всю информацию о структуре, специализированной ЭВМ.
В результате проведенных исследований были сформулированы основные особенности реализации системы автоматизации программирования и отладки, которые практически полностью были реализованы в системе ЯУЗА-6, построенной на технологической ЭВМ БЭСМ-6 в середине 1970-х годов. Исключение составляли задачи комплексной отладки управляющих программ в динамике, для реализации которых необходима была организация взаимодействия технологической и реальной управляющей ЭВМ.
Единство системы автоматизации программирования и отладки для всего технологического жизненного цикла комплексов программ обеспечивало разработку высококачественных программных продуктов при комплексной автоматизации всего технологического цикла и минимальных затратах совокупного труда на их создание. Система имела средства общения человека со средствами автоматизации на языках задания и программирования, построенных по единым правилам.
Настраиваемость системы автоматизации программирования и отладки на логику систем команд специализированных, мобильных ЭВМ была унифицирована и сделана независимой от типа и системы команд ЭВМ. Вся специфика, обусловленная системой команд конкретной ЭВМ, была вынесена в сменные или настраиваемые программные и информационные модули. Настройка осуществлялась автоматизировано по формальному описанию логики команд и структуры мобильной ЭВМ, представленному на специальном языке.
Сменная (машинно-ориентированная) часть системы автоматизации программирования и отладки обеспечивала, с одной стороны, машинную ориентацию процесса трансляции с каждого из входных языков на язык системы команд конкретной специализированной ЭВМ, а с другой – позволяла исполнять программы этой ЭВМ на универсальной машине при отладке программ по тестам. При этом входные языки программирования, методы и правила структурного построения управляющих программ, язык отладки, состав и правила оформления документации на алгоритмы и программы являлись едиными для всех систем управления.
Обеспечивалось автоматизированное сопряжение отдельных модулей, компонентов и подпрограмм в большие комплексы управляющих программ. Для управляющих программ характерно мультипрограммное функционирование комплексов взаимодействующих подпрограмм объемом в десятки и сотни тысяч команд, использующих общую память глобальных переменных. Модульное, иерархическое построение позволяло получать обозримое описание решаемых задач и их взаимосвязей в сложном комплексе программ, а также существенно облегчать автоматизацию всех этапов процесса разработки и в первую очередь контроля компонентов и их сопряжения в единый комплекс.
Производился автоматизированный контроль корректности текстов, структуры компонентов программ и сопряжения всего комплекса программ. Во всех задачах контроля следовало иметь эталон – систему правил, которым должна соответствовать программа в целом и каждая ее часть. Структурный контроль построения компонентов выявлял некоторые виды зацикливания, наличие тупиковых и лишних участков в алгоритмах и другие нарушения правил построения топологической структуры подпрограмм.
Читать дальшеИнтервал:
Закладка: