Электронная библиотека Веда
Цели библиотеки
Скачать бесплатно
Доставка литературы
Доставка диссертаций
Размещение литературы
Контактные данные
Я ищу:
Библиотечный каталог российских и украинских диссертаций

Вы находитесь:
Диссертационные работы России
Технические науки
Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

Диссертационная работа:

Евстифеев Андрей Александрович. Методы и средства формирования промежуточного языка при разработке программного обеспечения информационно-аналитических систем газовой отрасли : дис. ... канд. техн. наук : 05.13.11 Москва, 2006 135 с. РГБ ОД, 61:07-5/985

смотреть содержание
смотреть введение
Содержание к работе:

СОДЕРЖАНИЕ

Определения 5

Список сокращений 8

ВВЕДЕНИЕ 9

1. Подходы к оценке эффективности программного обеспечения с промежуточным языком 16

1.1. Анализ принципов выбора языков программирования, определение области их использования и основные показатели языков высокого уровня 16

1.2. Существующие подходы к компиляции программного кода написанного на ЯВУ при разработке программного обеспечения 30

1.3. Анализ языков программирования представленных на рынке информационных технологий 33

1.4. Пути повышения эффективности проектирования программных систем с промежуточным языком 36

1.5. Основные требования и стандарты разработки программных систем 38

1.6. Выводы 41

2. Технология построения промежуточного языка 43

2.1. Принцип разработки программного обеспечения 43

2.1.1 Выделение целевого класса и базового набора унифицируемых языков высокого уровня 47

2.1.2 Унификация языков высокого уровня, включенных в базовый набор 47

2.1.3 Разработка унифицированного единого транслятора программ 48

2.2. Критерий полноты и оперативной проверки правильности ведения глоссария операторов 54

2.3. Критерий требуемой разрядности операндов 56

2.4. Методика формирования промежуточного языка 57

2.5. Построение промежуточного языка 61

2.6. Выводы 63

3. Сравнительное определение затрат на разработку программного обеспечения для транслятора промежуточного языка и классического транслятора 65

3.1. Характеристики языков программирования 65

3.2. Анализ существующих подходов к оценке затрат на программное обеспечение

3.3. Характеристики промежуточных языков и определение их структуры 72

3.4. Анализ связи характеристик промежуточного языка с затратами на разработку и эксплуатацию 75

3.5. Оценка затрат на разработку, отладку и эксплуатацию программного обеспечения с применением компилирующего транслятора 77

3.5.1 .Оценка затрат на разработку программного обеспечения с применением компилирующего транслятора 77

3.5.2. Оценка затрат на отладку программного обеспечения с применением компилирующего транслятора 82

З.5.З.Оценка затрат на эксплуатацию программного обеспечения с применением компилирующего транслятора 86

3.6.Оценка затрат на разработку, отладку и эксплуатацию программного обеспечения с применением промежуточного языка 87

3.6.1.Оценка затрат на разработку программного обеспечения с применением промежуточного языка 87

3.6.2.Оценка затрат на отладку программного обеспечения с применением промежуточного языка 88

3.6.3.Оценка затрат на эксплуатацию программного обеспечения с применением промежуточного языка 89

3.7.Оценки затрат на разработку программной системы с учетом различных технологий трансляторов 89

3.7.1 .Определение основных коэффициентов для проведения расчетов 90

3.7.2.0ценка затрат на разработку программной системы 92

3.8.Выводы 96

4. Применение созданного промежуточного языка для реализации проектов газовой отрасли 97

4.1. Результаты экспериментальных исследований внедрения Технологии диссертационной работы 97

4.2.Сравнение характеристик программных систем разработанных с применением компилирующей технологии построения транслятора и транслятора построенного по предлагаемой Технологии 108

4.3.Определение границы применимости предлагаемой Технологии 108

4.4.Выводы 108

ЗАКЛЮЧЕНИЕ 110

Список использованных источников 1  

Введение к работе:

Актуальность темы. Область информационных технологий является одной из самых динамично развивающихся в настоящее время. На рынке информационных технологий появляются новые средства проектирования программного обеспечения и системы программирования. Для каждой новой системы программирования проводится разработка компиляторов, средств отладки, средств поддержки проектов в актуальном состоянии, средств документирования и т.д. Фирмы-производители программного обеспечения вынуждены тратить средства на приобретение и изучение сотрудниками фирм этих систем программирования для поддержания современного уровня развития компании.

С другой стороны, происходит постоянный рост производительности и состава вычислительных средств. По просьбам отдельных фирм-производителей в аппаратуру включаются дополнительные машинные команды, функциональность которых раньше реализовывалась программными средствами. В ряде случаев система машинных команд дополняется командами, выполняющими операции с расширенной функциональностью, что связано с появлением в аппаратуре специализированных функций. Примером такого расширения является дополнение процессоров фирмы Intel технологиями ММХ и ХММ. Для работы с этими аппаратурными расширениями, введенными в микропроцессор, было добавлено в общей сложности 172 новых машинных команды (66 команд для ММХ и 106 для ХММ)[14]. Существующие трансляторы для языков высокого уровня и средства разработки, как правило, не поддерживают машинные команды с расширенной функциональностью, поскольку на момент разработки транслятора эти команды отсутствовали.

Постоянное развитие аппаратурных средств, появление новых технологий и средств их поддержки, жесткая конкуренция за рынок информационных технологий, изменение персонала, появление новых задач приводят к тому, что фирмы-производители информационно-аналитических систем газовой отрасли вынуждены осваивать и применять в производственной практике достижения в области технологии проектирования программного обеспечения и средств его разработки. С другой стороны, многие информационно-аналитические системы, разработанные более двух десятков лет назад, до сих пор находятся в эксплуатации. Их функциональность удовлетворяет пользователя, однако в процессе эксплуатации и сопровождения возникает необходимость провести доработку или дополнить функциональность систем.

В этом случае фирма-разработчик сталкивается с рядом проблем, обусловленных следующими факторами:

-специалисты, которые разрабатывали систему, уже не работают в данной области;

- система программирования, на базе которой был разработан программный продукт, мало кем используется в настоящее время и специалистов, которые способны выполнить доработку, практически не осталось. Разработка же новой системы приведет к существенным экономическим затратам, а вновь разработанное программное обеспечение потребует затрат на отладку, внедрение и модернизацию. Острота проблемы существенно повышается в тех случаях, когда проект реализован с использованием нескольких систем программирования, что является достаточно типичной ситуацией для информационно-аналитических систем газовой отрасли.

- модернизация или обновление программно-аппаратурных платформ у заказчиков программного обеспечения.

Указанные проблемы существенно упрощаются, а в ряде случаев исключаются, при использовании промежуточного языка высокого уровня, на который предварительно транслируются модули проекта, разработанные на различных языках программирования. Промежуточный язык программирования имеет собственный синтаксис и набор команд, отличный от набора команд аппаратурных средств, Код на промежуточном языке транслируется в машинный код конкретной вычислительной системы.

Трансляция в машинный код может быть проведена как перед поставкой продукта пользователю, так и непосредственно перед исполнением программы на вычислительных средствах пользователя. В первом случае пользователю поставляется программное обеспечение в виде, готовом к исполнению на вычислительных средствах пользователя. Во втором случае программное обеспечение требует компиляции непосредственно на вычислительных средствах пользователя перед исполнением программного кода, при этом пользователю дополнительно потребуется транслятор с внутреннего языка на машинный язык.

Идея использования промежуточного языка в настоящее время реализована в двух основных вариантах: - Независимая трансляция модулей на разных входных языках в промежуточный код с последующим его исполнением на виртуальной машине под фиксированную программно-аппаратурную платформу. Примером данного подхода является платформа MS.NET с интегрированной средой разработки Visual Studio.NET и средой периода исполнения .NET Framework. К недостаткам данной платформы можно отнести ограниченный набор входных языков и реализацию среды периода исполнения только для операционной системы Windows. Платформа не поддерживает широко используемые при разработке информационно-аналитических систем газовой отрасли системы программирования Fortran, Pascal и др.

- Трансляция с одного языка программирования в промежуточный код с последующим его исполнением на виртуальных машинах под различные программно-аппаратурные платформы. Примером данного подхода является система программирования Java. К недостаткам данной среды можно отнести ориентацию на единственный входной язык.

В связи с этим представляется актуальной задача разработки методов и средств формирования промежуточного языка высокого уровня, ориентированного на использование унифицированного транслятора с нескольких языков программирования высокого уровня, инвариантного к программно-аппаратурной платформе исполнения, и методики оценки затрат на разработку, отладку, эксплуатацию и сопровождение информационно-аналитических систем газовой области

Целью работы является разработка технологии построения универсального транслятора на промежуточный язык программирования и методики оценки затрат на разработку, отладку, эксплуатацию и сопровождение программного обеспечения информационно-аналитических систем газовой области.

Для достижения поставленной цели в диссертационной работе решены следующие основные задачи:

- Проведен анализ функциональности языков высокого уровня и областей их применения;

- Определены требования к промежуточному языку программирования:

- Разработан метод построения глоссария операторов промежуточного языка;

- Определены критерии полноты глоссария операторов промежуточного языка и глубины детализации операндов; - Разработана процедура формализованных подстановок генератора кода для промежуточного языка;

- На основе предложенного метода разработан промежуточный язык и прототип универсального компилятора для систем программирования C++ и Java;

- Определены показатели затрат на разработку программного обеспечения информационно-аналитических систем газовой отрасли и разработана методика их пред проектной оценки;

- Выполнен сравнительный анализ оценок затрат на разработку программного обеспечения информационно-аналитических систем газовой отрасли на примере реальных проектов по разработанной методике и фактических затрат.

Методы исследования. При разработке использовались элементы комбинаторики и методы математической статистики.

Научная новизна. Научную новизну представляют следующие результаты диссертационной работы:

- Технология построения единого универсального транслятора множества входных языков высокого уровня, применяемых в промышленном программировании на промежуточный язык программирования;

- Метод построения глоссария операторов промежуточного языка;

- Критерии полноты глоссария операторов промежуточного языка и глубины детализации операндов;

- Методика предпроектной оценки затрат на разработку, отладку, эксплуатацию и сопровождение программного обеспечения информационно-аналитических систем газовой отрасли.

Основные положения, выносимые на защиту:

- Технология построения единого универсального транслятора множества входных языков высокого уровня, применяемых в промышленном программировании на промежуточный язык программирования;

- Результаты экспериментальных исследований функциональности операторов языков высокого уровня;

- Метод построения глоссария операторов промежуточного языка;

- Критерии полноты глоссария операторов промежуточного языка и глубины детализации операндов;

- Методика предпроектной оценки затрат на разработку, отладку, эксплуатацию и сопровождение программного обеспечения информационно-аналитических систем газовой отрасли. - Результаты теоретической и экспериментальной оценок затрат на разработку, отладку, эксплуатацию и сопровождение программного обеспечения информационно-аналитических систем газовой отрасли.

Достоверность полученных результатов подтверждается применением предложенного метода при разработке прототипа универсального компилятора для систем программирования C++ и Java и его внедрения при разработке ПК «Разрешения» и сравнением оценок затрат на разработку, отладку и сопровождение проектов по разработанной методике и реальных затрат. Разность между предварительными оценками и реальными затратами не превышают 5%.

Реализация результатов и практическая ценность работы, Результаты работы применяются в ВНИИПромгаз ОАО «Промгаз» на этапах реализации, тестирования, модификации и эксплуатации программных систем. Результаты работы по теме диссертации использовались при выполнении научно-исследовательских работ по следующим темам;

- Договор с ОАО «Газпром» № 0300-02-2 от 03.01.2002 г, «Совершенствование системы ценообразования при проектировании, строительстве объектов газовой промышленности и научное сопровождение перехода отрасли на новую смет но-нормативную базу»;

- Договор с ОАО «Газпром» № 0304-02-2 от 03.01.2002 г, «Создание системы управления распределением и поставками газа потребителям регионов РФ, информационное обеспечение принятия управленческих решений по совершенствованию внутреннего рынка газа»;

- Договор с ОАО «Газпром» № 0307-02-2 от 03.01.2002 г, «Разработка и внедрение научно-методических основ, нормативов и регламентов по проектированию, строительству и эксплуатации систем распределения и использования газа». Работа по данному договору удостоена отраслевой премии по науке ОАО «Газпром» за 2003 год. 

Апробация работы. Основные результаты работы докладывались и получили одобрение на научной сессии МИФИ, проходившей в Московском Инженерно-физическом Институте (Государственном Университете) в феврале 2004 года.

Публикации. Основные положения диссертационного исследования опубликованы в монографии, 3 статьях и 3-х отчетах о научно-исследовательских работах.

1. Евстифеев А.А., Хетагуров Я.А. "Анализ затрат при создании вычислительных систем, связанных с выбором языка программирования". Научная сессия МИФИ 2004. Направление - Информатика. Секция -3, Информатика и процессы управления. Москва, МИФИ январь 2004,

2. Евстифеев А.А., "Предложения по оснащению котельных ОАО "Газпром" приборами учета, газоанализаторами и сигнализаторами горючих и токсичных газов". Научно-технический сборник « Отраслевая энергетика и проблемы энергоснабжения» приложение к журналу "Наука и техника в газовой промышленности", Москва 2004 апрель 2004

3. Евстифеев А.А., "Программный комплекс для анализа систем теплоснабжения предприятий ОАО "Газпром". Ежемесячный научно-технический и производственный журнал "Газовая промышленность", Москва ноябрь 2004 года.

4. Сторонский Н.М., Евстифеев А.А. Отчет о научно-исследовательской работе № 0300-02-2, «Развитие программного комплекса по результатам опытной эксплуатации и актуализация базы данных по вновь разработанным ГЭСН», Москва, ВНИИПромгаз, 2004.

5. Кисленко Н.А., Магдеев Р.А., Евстифеев А.А.Отчет о научно-исследовательской работе № 0304-02-2 этап №1 «Разработка информационной системы (ИС) анализа и прогноза использования топливно-энергетических ресурсов (ТЭР) по регионам РФ и по отраслям промышленности», Москва, ВНИИПромгаз, 2002.

6. Ярыгин Ю.Н., Магдеев Р.А., Евстифеев А.А. Отчет о научно-исследовательской работе № 0304-02-2 этап №3 «Научно-методическое и программное обеспечение разработки и внедрения отраслевой системы мониторинга, диагностики и управления газовым хозяйством ОАО «Газпром», Москва, ВНИИПромгаз, 2003.

Структура работы. Диссертация состоит из введения, четырех глав, заключения, списка использованных источников из 87 наименований и 2-х приложений и содержит 115 страниц машинописного текста без учета приложений.

СОДЕРЖАНИЕ РАБОТЫ

Во Введении обосновывается актуальность проблемы, сформулирована цель работы, показана научная новизна, практическая ценность, апробация работы и достоверность полученных результатов, приведено краткое изложение структуры диссертационной работы.

В первой главе рассматриваются вопросы анализа функциональности языков высокого уровня, областей их применения и пути повышения эффективности проектирования программных систем. Во второй главе рассматривается предлагаемая технология построения единого универсального транслятора множества входных языков высокого уровня, применяемых в промышленном программировании на промежуточный язык программирования, метод построения глоссария операторов промежуточного языка, критерии полноты глоссария операторов промежуточного языка и глубины детализации операндов.

В третьей главе изложена методика предпроектной оценки затрат на разработку, отладку, эксплуатацию и сопровождение программного обеспечения информационно-аналитических систем газовой отрасли.

В четвертой главе приведены результаты теоретической и экспериментальной оценок затрат на разработку, отладку, эксплуатацию и сопровождение программного обеспечения информационно-аналитических систем на основе материалов программных проектов, выполненных в газовой отрасли.

В заключении изложены основные результаты, полученные при выполнении диссертационной работы. 

Подобные работы
Таран Евгений Андреевич
Методы построения инструментальных средств разработки программного обеспечения систем реального времени
Мальчуков Андрей Николаевич
Алгоритмическое и программное обеспечение системы для разработки кодеков помехоустойчивых кодов
Малинаускас Костас Костович
Разработка математического и программного обеспечения систем топологического проектирования СБИС с использованием диаграмм Вороного
Володько Александр Владиславович
Разработка математического обеспечения автоматизированной измерительной системы лазерного оптико-акустического газового анализатора
Диденко Сергей Владимирович
Разработка алгоритмического и программного обеспечения системы сопровождения подвижных объектов
Воробьев Александр Владимирович
Разработка методов обеспечения надежности цифровых систем управления современными авиационными комплексами
Натансон Игорь Ярославович
Разработка и исследование программного обеспечения систем визуализации морских тренажерных комплексов
Меламед Александр Яковлевич
Методы оценки трудоемкости разработки программного обеспечения корпоративных информационных систем
Рубанов Владимир Васильевич
Автоматизация построения инструментария кросс-разработки программного обеспечения для расширяемых встраиваемых систем
Выборнов Андрей Олегович
Анализ и разработка алгоритмов и программного обеспечения для компьютерных систем управления транспортными техническими устройствами в изменяющихся условиях

© Научная электронная библиотека «Веда», 2003-2013.
info@lib.ua-ru.net