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

кандидата технических наук
Помовцева, Галина Георгиевна
город
Москва
год
1991
специальность ВАК РФ
05.13.11
Автореферат по информатике, вычислительной технике и управлению на тему «Методы оценки характеристик программного обеспечения для микро-ЭВМ»

Автореферат диссертации по теме "Методы оценки характеристик программного обеспечения для микро-ЭВМ"

« Ь а Я ь

АКАДЕМИЯ НАУК СССР ИНСТИТУТ ПРОБЛЕМ ИНФОРМАТИКИ

На правах рукописи УДК 681.3.06

ЛОМОВЦЕВА ГАЛИНА ГЕОРГИЕВНА

МЕТОДЫ ОЦЕНКИ ХАРАКТЕРИСТИК ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ДЛЯ МИКРО-ЭВМ

Специальность 05.13.11 - математическое и программное обеспечение вычислительных машин, комплексов, систем и сетей

Автореферат

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

МОСКВА-1991

"V/

С-

¿.//.О Г Г

г О 4 / 4 д

Работа выполнена в Институте электронных управляющих машин.

Научный руководитель:

доктор технических наук Е. В. Гливенко

Официальные оппоненты:

доктор технических наук Э. А. Трахтенгерц

кандидат технических наук А. В. Гиглавы!

Ведущая организация:

Научно—исследовательский институт вычислительных комплексов

ЛО Зачета диссертации состоится /X 1991 г.

в часов на заседании специализированного совета

Д 003.56.01 Института проблем информатики АН СССР по адресу: 117900 ГСЦ-1 Москва, В-334, ул. Вавилова, 30/6, тел, 13 5-98-14.

С диссертацией мохно ознакомиться в библиотеке Института проблем информатики АН СССР.

Автореферат разослан "УвС- "_—^ 1991 г.

Ученый секретарь специализированного совета, доктор технических наук

.Н. Гринченко

Актуальность темы. Одной из важнейших проблем современного этапа исполь-_ Г'4говаш1я вычислительной техники является существенное улучшение методов пла-' '"Чт^озания и проектирования программного обеспечения (ПО). Решение этой проблемы невозможно без применения научно обоснованных подходов к оценке затрат труда и сроков проведения работ. Располагая такими данными, можно управлять процессом создания ПО, добиваться требуемого уровня качества ПО. Исследования, выполненные в 70-ые и 80-ые годы Холстедом, Боэмом, Липаевым показали, что трудоемкость разработки ПО определяется в основном его объемом. Однако прогнозирование объема ПО до настоящего времени представляет собой нерешенную задачу. Экспертные оценки оказываются слишком грубыми, а существующие аналитические модели оценки объема ПО опираются на точные характеристики программ, которые становятся известными лишь на стадиях детального проектирования, либо даже кодирования программ.

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

Основными задачами, решаемыми в диссертации, являются:

• построение аналитических моделей сложности ПО;

• проверка полученных моделей на реальных программах разных классов;

• разработка автоматических средств оценки сложности ПО на этапе его проектирования ( по спецификациям ПО );

• разработка методики оценки трудоемкости создания ПО по его спецификациям.

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

Научная новизна работы заключается в дальнейшем развитии метрической теории качества программ, выразившемся в том, что:

• проведено исследование и установлена пригодность использования метрической теории Холстеда к программам различных классов, написанных на стандартном языке программирования Си;

• сформулирована и подтверждена гипотеза о возможности оценки сложности ПО на основании его спецификаций;

• получены и исследованы аналитические модели для оценки сложности ПО на основании его спецификаций;

• исследованы вопросы применения аналитических моделей сложности ПО для прогнозирования трудоемкости разработки ПО на этапе его проектирования.

Практическая значимость работы состоит в том, что:

• разработан пакет программ для автоматического вычисления характеристик программ, написанных на языке Си;

• создан пакет программ для построения аналитических моделей сложности ПО;

« предложена методика расчета трудоемкости ПО на основании его спецификаций

С использованием полученных аналитических моделей; « разработана инструментальная система для прогнозирования объема и трудоемкости разработки ПО по его спецификациям, реализующая указанную методику.

Реализация результатов исследования

Разработана инструментальная система прогнозирования техника-экономических показателей разработки ПО (ТЭПРП).

Работа ТЭПРП иллюстрирована результатами оценки реальной программной разработки - системы учета материальных затрат , предназначенной для функционирования на Омском ЗСК.

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

Во введении отмечается возрастание требований к качеству ПО. определяется возникшая в связи с этим необходимость измерения и прогнозирования характеристик программного обеспечения (ПО) и процесса его создания.

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

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

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

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

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

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

Далее раздел 1 содержит обзор существующих метрик сложности программ. Обсуждаются работы Маккейба, Джилба, Стивенса, Сои, Хансена в других авторов. Основное внимание уделяется аналитическим метрикам, количественно выражаю-

щим тот или иной показатель качества. Предпочтение аналитическим метрикам отдается еще и потому, что это позволит автоматизировать процесс оценки качества программ.

Предлагаемые в указанных работах метрики сложности ПО расцениваются с точки зрения возможности расчета параметров программы, в том числе ее объема и трудоемкости разработки, на стадии проектирования.

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

Излагаются основные положения науки о программах Холстеда, служащей теоретической базой в развиваемом в диссертации подходе к прогнозированию характеристик качества программ. Ключевым моментом при определении метрических характеристик в теории Холстеда является концепция, согласно которой алгоритм состоит только из операторов и операндов. Метод Холстеда основывается на возможности вычисления для любой программы числа различных операторов (таких, как IF, PRINT) (nl), числа различных операндов (таких, как переменные или константы) (п2), общего числа всех операторов (N1), общего числа всех операндов (N2).

На этой основе Холстед определяет словарь п=п1+п2, и длину реализации N=N1+N2. Основное метрическое соотношение Холстеда - уравнение длины программы, измеряющей длину реализации в операторах и операндах: N = nllog2nl +n21og2n2 (I.О

В науке о программах Холстеда уравнение (1.1) рассматривается с точки зрения упрощения подсчета длины программы и автоматизации этого процесса. Длина программы является ключевым параметром в соотношениях Холстеда, определяющих объем программы, работу и время программирования, нормы первоначальных ошибок.

Объем V= Nlo£2n (1.2)

Потенциальныйобъем V* =(2+п2* )log2(2+n2*) (1.3)

п2* - минимальное число различных операций

Уровень программы l?»V*/V (1.4)

Интеллектуальное содержание ?=LV (1.5)

Работа по программированию E=V/L (1.6)

Уравнение времени T=E/S;S - число Страуда(от 5 до 20) (1.7)

Уравнение ошибок В=Е/ Е (0) (1.8)

Е(0) - среднее число элементарных различений между возможными ошибками в программировании; В - число переданных ошибок.

Аналитическая модель длины программы Холстеда справедлива для потенциально корректных программ, свободных от избыточности или несовершенств (стилистических ошибок). Несовершенствами считаются следующие ситуации:

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

2. присутствуют тождественные выражения, решающие одинаковые задачи;

3. одной и той же переменной называются различные имена и т.п.

Обеспечить выполнение этих условий практически невозможно. Кроме аналитических выкладок, Холстед приводит экспериментальное обоснование перечисленных соотношений.

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

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

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

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

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

Недостатком метрической теории Холстеда для практического применения является то, что в ней отсутствует четкая методика расчленения конструкций языка программирования на простые операторы и операнды. Для уточнения методики расчленения конструкций языка на операторы и операнды было использовано уравнение длины программы Холстеда.

Проверка показала совпадение теоретических оценок с практическими с точностью 0.25.

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

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

! — число функций (вызываемых модулей);

V — число переменных (локальных и глобальных);

с — число глобальных констант.

Число переменных и констант составляет словарь операндов, определенный по Холстеду. Для определения словаря операторов, кроме числа функций, необходимо знать число типов операторов языка, которые Т5удут_использоваться в программе. Это требует детальной проработки алгоритма, не предусмотренной на этапе создания функциональной спецификации.

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

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

иО + (и 1V + и2Г + иЗс) (и 1V + + иЗс) (2.1)

N=110+ (и1уаг +и20к^2 (и1\-аг + и2П (2.2)

N = иО + и1у(10Я2У)и2 + иЗШое20и4 + и5с(10Я2С)иб (2.3)

N = иО + ц1у(^2у) и2 + 1Ш(к^20и4 (2.4)

Для исследования выбраны группы программных продуктов (классы), имеющие следующие типы применения:

1. библиотеки программ, используемые при разработке и сопровождении ПС ВТ;

2. пакеты программ, реализующие функции графического интерфейса с пользователем;

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

4. программы создания и ведения баз данных;

5. программы операционных систем реального времени.

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

Оптимальной считается та формула, для которой минимальна величина

м - а .

квадратической невязки •1=Х(Л' - Л') , где N — реальная длина программы, N — ¿=1

вычисленная длина программы, М — число модулей в исследуемом наборе. Невязка

рассчитывается с учетом 10%-ного коридора,т.е. значения, не выходящие за пределы (К ±0.05№, не учитываются при суммировании.

Для определения коэффициентов формулы используется метод случайного поиска с адаптацией, так как он позволяет выбрать коэффициенты, соответствующие минимуму функции вида, заданного одной из формул (2.1—2.4).

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

N = (1,69У + 1,81О1О02(1,69У +1,810 (3)

Использование общей формулы (3) целесообразно в случаях, когда трудно определить тип разрабатываемого программного изделия. Оценки по общей формуле отличаются от фактических данных не более чем на 20 % в 43 % всех рассмотренных случаев, т.е. являются достаточно точными для большинства практически важных целей.

Вььгвляется также, что для каждого класса программ может быть получена модель, дающая лучшее приближение к фактическим данным: в пределах 20% в 60% рассмотренных случаев. Для выделенных пяти классов ПО оптимальными являются следующие формулы:

N = 3.29у(^2\')0'51 +2.32!Ч1о£20 -Ю.82с(к^2с)1,31 (3.1)

(библиотеки программ, используемые при разработке и сопровождении ПС ВТ)

Ы = 1.19у(1о£2У)°'23+1.Ш(^20и9-Ю.78с(к^2с)и9 (3.2)

(пакеты программ, реализующие функции графического интерфейса с пользователем)

К = 1.33у(1ОЯ2У)1-34+1.33Г(^201'33+0.67С(^2С)1-35 (3.3)

(программы операционной системы, работающей вне ре ального масштаба времени)

1.32у(^2У)1-32+1.31Г(Юе201-31 -Ю.69С(^2С)'-33 (3.4)

(программы создания и ведения баз данных)

К= (1.74У+1.7И+1.7СС)1О£2(1.74У+1.7И+1.76С) (3.5)

(программы операционных систем реального времени). Проведена проверка полученных формул на реальных программах разных классов.

Оценки, полученные с помощью указанных моделей, являются достаточно точными для большинства практически важных целей. "Достаточная точность" моделей определяется в соответствии с критерием Боэма: современная модель оценки конкретною показателя считается хорошей, если с ее помощью можно оценить показатель с точностью 20% в 68—70% случаев, причем при условии использования модели в классе проектов, на которые она настроена.

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

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

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

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

Автором другого способа определения разработки программ является Холстед. Процесс создания программ по Холстеду условно можно представить как ряд операций: 1. осмысление предложения алгоритма; 2. запись предложения алгоритма в терминах используемого языка программирования, т.е. поиск в словаре языка соответствующей инструкции, ее смысловое наполнение и запись. Уравнение затрат по Холстеду выглядит следующим образом:

T = nlN2V/(2Sn2)

или (4)

Т = п 1 N2 (п llogín 1 + n21og2n2) log2n/ (2n2S)

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

Выражение (4) показывает, что время разработки возрастает квадратично при увеличении длины или объема программы.

Оценка объема программы V представляет интерес как абсолютное значение. Обосновывается использование оригинальной формулы Холстеда (1.2) для определения объемов программ, написанных на языке программирования Си, по их длинам, полученным по уравнениям (3,3.1—3.4).

Величина п из (1.2) равна сумме ni ип2. На основе статистического анализа 150 программ па языке Си (ядро ОС UNIX, база данных INGRESS, библиотека С

Function Library) было выявлено следующее соотношение, связывающее параметры уравнения длины программы Холстеда с метрическими характеристиками v, f, с: n=l,7* (v + f + c) (5)

Это позволяет окончательно избавиться от величин nl и п2:

V (1.69 v+1.7 If) log2 (1.69v+1.71f) log2 (1.7 (v+f+c)) (6)

V =(3.29 v (log2 v)0,5' +2.32f(log2f)1'21 +0.82c(log2c)U1)log2(1.7(v+f+c)) (6.1) V=(1.19v(Iog2v)a23+11Sf4og201-19+0.78c(log2c)1-19)log2(1.7(v+f-H:)) (6.2)

V =(1.33v(log2v)L34 +1'33f(log2D '-33 + 0.67c (log2c) ''35)log2(1.7(v+f+c)) (6.3)

V -(1.32v (log2v) '-32 +1-31f(log2f)1,31 +0.69c (log2c)1 '33)log2 (1.7 (v+f+c)) (6.4)

V=((1.74v+1.71f+1.76c)log2(1.74v+1.71f+1.76c))log2(1.7(v+f+c)) (6.5)

Приводятся результаты оценки реальных программных изделий, которые позволяют сделать вывод, что предложенные в диссертационной работе формулы (6,6.1—6.5):

• дают более точную оценку объема программ, чем Каталог аналогов;

• близки к реальным объемам, занимаемым программами в памяти ЭВМ;

• являются более предпочтительными, чем формула Холстеда (1.2), с точки зрения возможности предсказания объема программы на этапе ее проектирования, так как величины, с которыми они оперируют, можно определить из функциональной спецификации на разрабатываемую программу.

Далее в разделе 3 рассматриваются комбинированные модели оценки трудоемкости создания ПО: иерархическая Конструктивная МОдель Стоимости (КО-МОСТ) Б. Боэма и модель В.В. Липаева .

Базовая КОМОСТ — верхний уровень иерархии — определяется простым уравнением оценки затрат в человеко-месяцах на разработку ПО самого общего типа:

4M = 2.4 КЧИ&1-05 (7)

где КЧИК — размер программы в тысячах машинных команд (команды определяются как кодовые строки).

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

Точность оценок по промежуточной КОМОСТ составляет 20 % в 68 % рассмотренных случаев.

-Ю-

В дальнейшей работе по исследованию зависимости типа (7) Липаев анализирует три группы ПО:

• программы, работающие в системах реального времени (СРВ);

• информационно-поисковые системы (ИПС);

• пакеты прикладных программ (ППП). Полученные им зависимости имеют следующий вид:

С=0.012У0-87 для СРВ С=О.О22У0ЛЗ для ИПС С=0.007У0'87 для ППП

Преимуществом классификации Липаева является конкретизация типа применения ПО.

Сравнение оценок трудоемкости, полученное по уравнениям Липаева, с фактическими данными по завершенным разработкам показало, что точность расчетной оценки составляет только 50% в 50% рассмотренных случаев.

В дальнейшей работе по реализации результатов исследований, полученных в диссертации, для прогнозирования трудоемкости разрабатываемого ПО использовалась модель КОМОСТ.

Предпочтение КОМОСТ обусловлено следующими причинами:

• достаточной точностью;

• простотой применения;

возможностью настройки параметров на конкретные условия разработки ПО;

• возможностью уточнения основных уравнений модели на основании полученных при работе статистических данных;

• возможностью интерполяции коэффициентов.

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

В практической работе по реализации инструментальных средств, позволяющих прогнозировать объем и трудоемкость разработки ПО, использовалась предложенная в разделе 3 методика, предполагающая для определения объемов ПО использование аналитических моделей (б), полученных в диссертации, а для вычисления трудоемкости его разработки — применение промежуточной версии КОМОСТ.

Четвертый раздел содержит описание инструментальной системы для прогнозирования технико-экономических показателей разработки (ТЭПРП), в том числе, объема и трудоемкости разработки программ, при создании которой была реализована предложенная методика.

Созданные инструментальные средства: 1) позволяют объективно прогнозировать объем и трудоемкость разработки ПО, т.е. обеспечивают возможность "промышленного" их использования;

2) обеспечивают возможность проведения дальнейших исследований в этой области, т.е. сбор соответствующих статистических материалов ("исследовательское применение").

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

В структуре системы ТЭПРП выделено три программы, реализующие следующие основные функции:

1) прогнозирование объема ПО и трудоемкости его разработки по классу (типу применения) ПО и метрическим характеристикам входящих в него модулей, которые определяются по функциональной спецификации на конкретный модуль;

2) сбор статистических данных о характеристиках программ, написанных на языке программирования Си;

3) выбор оптимальной формулы для определения объемов модулей, входящих в ПО, на основании их метрических характеристик и типа применения.

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

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

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

Это разработка СП "Интерквадро" — система учета материальных затрат (СА-УМЗ) , предназначенная для функционирования на Омском ЗСК. Приводится краткое описание САУМЗ, являющейся весьма типичной с точки зрения класса разработки.

Показывается, что оптимальной для вычисления объемов программ САУМЗ является формула (6.5):

V=((1.74v4l.71f+1.76c)Iog2(1.74v+I.71f+l.76c))Iog2(1.7(v+f4c))

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

Расчетные оценки отличаются от фактических данных не более чем на 15%. Предусмотрено развитие ТЭПРП по следующим направлениям: 1) на основании файлов статистики формировать базу данных с использованием какой-либо готовой СУБД;

) дифференцировать типы разработок ПО, выделенные в КОМОСТ, подобно разбиению на классы при оценке объема и организовать для них сбор и занесение данных о статистической трудоемкости;

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

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

акже рассматриваются направления дальнейших исследований.

)СНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ

. Проведен ацглиз существующих методов оценки сложности ГЮ с точки зрения возможности их использования для предсказания сложности ПО на этапе его проектирования,

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

I. Сформулирована л подтверждена гипотеза об оценке сложности ПО по его спецификациям. Предложена методика построения аналитических моделей сложности ПО на основании спецификаций на его разработку.

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

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

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

1. Проведен сравнительный анализ методов расчета трудоемкости ПО на основании сведений о его объеме и типе применения. Обосновано дальнейшее использование промежуточной версии КОМОСТ.

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

9. Методика, предполагающая для определения объемов использование аналитических моделей, полученных в диссертации, а для вычисления трудоемкости -применение промежуточной модели КОМОСТ, реализована при создании инструментальной системы для прогнозирования ТЭП разработки (ТЭПРП).

10. Работа ТЭПРП иллюстрирована результатами оценки реальной программной разработки. Это разработка СП "Интерквадрэ" — Система Учета Материальных Затрат (САУМЗ), предназначенная для функционирования на Омском ЗСК. Сравнение полученных оценок с фактическими данными показало достаточную точность прогнозов.

11. Предусмотрено "исследовательское применение" системы ТЭПРП, основанное на сборе соответствующих статистических материалов о завершенных разработках, что, в свою очередь, определяет направления дальнейшего развития сисге-мы.

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

ПУБЛИКАЦИИ ПО ТЕМЕ ДИССЕРТАЦИИ

1. Кольнер Г.Г. Об оценках качества программ // М., БИТ, 1991, №3

2. Кольнер Г.Г. Об оценке сложности программ // М., Сб. трудов ИНЭУМ

" Технические и программные средства комплексного ввода и цифровой обработки информации изображения", 1989, стр.109-118

3. Кольнер Г.Г., Кравченко B.C. Уравнение длины программы // М., Интеркомпьютер, 1990, №6

4. Кольнер Г.Г. Прогнозирование объема программ // М., Автоматика и телемеханика, 1991, №8

5. Кольнер Г.Г. Grep и awk - опыт сравнения // М., Интеркомпьютер, N92,1990

БНТИЦентр Зак.156 T.I00