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

кандидата технических наук
Шахин Вади Ханна
город
Ереван
год
1994
специальность ВАК РФ
05.13.11
Автореферат по информатике, вычислительной технике и управлению на тему «Разработка методов оптимального проектирования программных средств»

Автореферат диссертации по теме "Разработка методов оптимального проектирования программных средств"

ГОСУДАРСТВЕННЫЙ ИНЖЕНЕРНЫЙ УНИВЕРСИТЕТ АРМЕНИИ

Ргв

На правах рукописи

Од

4 ""у Шахин Вадиа Ханна

^ / Гражданин САР, аспирант

РАЗРАБОТКА МЕТОДОВ ОПТИМАЛЬНОГО ПРОЕКТИРОВАНИЯ ПРОГРАММНЫХ СРЕДСТВ

05.13.11 - Математическое и программное

обеспечение вычислительных машин, комплексов систем и сетей

05.13.12- Системы автоматизации

проектирования (промышленность)

АВТОРЕФЕРАТ

диссертации на соискание ученой степени кандидата технических наук

Ереван - 1994

Работа выполнена в Государственном Инженерном Университете Армении

Научный руководитель - д.т.н. , профессор

член корр. Инженерной Академии Армении АРАКЕЛЯН A.A.

Научный консультант - к.т.н. БАГДАСАРЯН В.В.

Официальные оппоненты - доктор технических наук

САРКИСЯН P.E.

кандидат техничеедсих наук, с.н.с. АЛАВЕРДЯНСБ.

Ведущая организация - Ереванский научно-исследовательский институт средств связи.

Защита диссертации состоится ----- 1994г. в

часов на заседании специализированного совета 13.055.03.01 в Государственном Инженерном Университете Армении по адресу: г. Ереван 9, ул. Теряна 105.

С диеертацией можно ознакомит^ в библиотеке Государственного Инженерного Университета Армении .

Автореферат разослан — 1994г.

Ученый секретарь специализированного совета АДЖЕМЯНЭ.Х.

1. ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

Актуальность темы исследования для развитая методов проектирования комплексов программ состоит в следующем:

1. Проблема решения задач проектирования комплексов программ связана с разработкой математической модели процесса проектирования и описанием целей функционирования и области применения проектируемого программного обеспечения

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

а) система показателей качества определяет цели и области применения программ;

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

в) количественные показатели должны допускать возможность измерения трудоемкости, сложности, надежности, корректности сложных комплексов программ.

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

В работе получены результаты для решения задач принятая решений, в которых целевая функция и функции, определяющие систему ограничений не являются линейными. Применение этих результатов в задачах оптимизации программного обеспечения диалоговых информационных систем контроля (ДИСК) объясняет актуальность исследований, проведенных в работе для развития теории синтеза ДИСК. Полученные в работе результаты являются актуальными также и дня теории полезности.

2. Проблемы оптимального проектирования программного обеспечения ДИСК тесно связаны с оптимизацией характеристик и процессов

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

а) разработки математических моделей и методов работы с ними для решения задач диагностического обеспечения комплексов программ;

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

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

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

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

Объект исследования Объектом исследования является комплекс программ ДИСК.

Цель работы. Целью работы является разработка методов: а) оптимального проектирования комплекса программ ДИСК;

б) решения задач оптимизации качества программного обеспечения;

в) решения задач обеспечения надежности комплексов программ;

г) программной реализации алгоритмов оптимального проектирования комплексов программ в виде диалоговой системы.

Методы исследования. Исследование методов проектирования комплек сов программ ДИСК производится с помощью аппарата теории исследования операций.

Научная новизна. Научная новизна работы состоит в разработке принципов оптимальности в задачах проектирования комплексов программ ДИСК в условиях многокритериальности.

1. Разработана модель оптимального проектирования комплексов программ ДИСК на основе задачи математического программирования

2. Разработаны алгоритмы оптимизации состава модулей, характеристик (качества, функционирования и надежности) комплексов программ.

3. Разработаны алгоритмы синтеза тестов для тестирования комплексов программ.

4. Методы оптимального проектирования комплексов программ реализованы в виде подсистемы проектирования ДИСК.

Практическая ценность. Решение поставленных в работе проблем обеспечило возможность:

а) проведения оптимизации качества программного обеспечения ДИСК;

б) оптимизации характеристик надежности комплексов программ;

в) автоматизации процесса синтеза тестов для верификации комплексов программ;

г) алгоритмической и программной реализации задач оптимального проектирования комплексов программ ДИСК.

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

Аппробация работы. Результаты диссертации докладывались: в семинаре отдела "Распознавания образов" Института проблем информатики и автоматизации Национальной Академии Наук Армении; Международной конференции по моделированию и управлению. Ченгду, Китай (1993). Результаты отражены в [1]

Структура работы

Работа состоит из пяти глав. Глава 1 является вспомогательной к последующим главам. В главе 2 рассматривается методология проектирования комплексов программ ДИСК. Глава 3 посвящена изучению задач оптимального синтеза программного обеспечения ДИСК. В главе 4 приводятся численные методы решения задач оптимального проектирования программного обеспечения ДИСК. Глава 5 посвящена решению проблемы синтеза тестов для тестирования программных модулей.

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

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

Глава 2 ("Общие принципы проектирования программных средств диалоговых информационных систем контроля") посвящена исследованию основных особенностей проблемы оптимального проектирования комплексов программ.

В этой главе приводятся основные определения и поншия, а именно: определение ДИСК, содержание задачи проектирования ДИСК с точки зрения оптимизации ее программного обеспечения.

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

Изучаются задачи, решаемые ДИСК и связанные с ними уровни программных средств, что позволяет сформулировать требования к проектированию программного обеспечения.

Рассматриваются проблемы проектирования программных средств посредством их разделения на два этапа: внешнего проектирования и внутреннего проектирования

приводится постановка задач оптимального проектирования Программных средств, а именно:

а) рассматривается постановка задачи оптимизации программного обеспечения ДИСК как задачи многокритериальной оптимизации;

б) определяется задача выбора оптимального языка программирования и задача выбора оптимальной интерпретирующей системы.

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

Глава 3. ("Задачи оптимального синтеза программных средств ДИСК") посвящена изучению численных оценок количественных характеристик программного обеспсния.

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

Далее рассмотрены характеристики типов ошибок и приведена зависимость реального числа обнаруженных ошибок от времени отладки.

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

Глава 4 ("Численные методы решения задач оптимальней: проектирования программного обеспечения") посвящена алгоритмал решения задач оптимального проектирования программных средсл ДИСК. Разработаны и применены численные методы для решения зада1 оптимального проектирования комплекса программ, а именно:

а) алгоритму решения задачи выбора оптимального языка программирова ния;

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

Исследованию и разработке методов решения задачи оптимизации характеристик программного обеспечения, основанной на метода: аппроксимации целевой функции и функций, определяющих граничени посвящен п.4, а именно: приводится метод решения задач! математического программирования, основанный на сплайн аппроксимации целевой функции и функций, определяющи ограничения

Глава 5 ("Синтез тестов для тестирования программных модулей") посвящена решению проблемы обеспечения надежносп функционирования комплекса программ ДИСК.

Изложены основные определения и обозначения

Рассмотрены методы повышения надежности программ и приведен их сравнительный анализ.

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

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

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

Основныс результаты и выводы

1. Рассмотрены свойства программных комплексов с точки зрения проблемы автоматизированного проектирования, характеризующие программное обеспечение и отличающие их от других систем.

2. Приведена схема оптимального проектирования комплексов программ, разработаны требования, которым должен отвечать комплекс программ.

3. Исследованы состав и структура программных средств ДИСК как совокупность программ тестовой операционной системы и дисковой операционной системы.

4. Изучены задачи, решаемые ДИСК, и проблемы проектирования программного обеспечения посредством их разделений на этапы внешнего и внутреннего проектирования.

5. Приведена постановка задачи оптимального проектирования программных средств.

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

7. Исследованы параметры корректировки программ' и разработаны модели оптимального выбора моментов обнаружения ошибок.

8. Сформулирована модель и решена задача выбора оптимальной стратегии проверок программного обеспечения.

9. Разработаны численные методы для решения задач:

- выбора оптимального языка программирования;

- выбора оптимальной интерпретирующей системы;

- выбора оптимального момента выявления и устранения первичных ошибок.

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

11. Исследована проблема обеспечения надежности комплексов программ и разработаны методы:

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

- сжатия тестовых последовательностей;

- оптимизации тестов для контроля комплексов программ.

По теме диссертационной работы опубликовано:

1. Шахин В.Х. Метод сплайн аппрокцимации в САПР программных средств. //Изв. АН Армении. Сер. ТН. ч 1993 -ТЬУ1, N1.0. 31-34.