Оценка структурной сложности программных средств в промышленности на ранних стадиях жизненного цикла

Вид материалаАвтореферат

Содержание


Общая характеристика работы
Цель и задачи исследования
Методы исследований
Научная новизна.
Практическая значимость
Реализация результатов
Структура и объемы работы.
Содержание работы
В первой главе
Методы определения размера ПС
Вторая глава
Рис. 1. Обобщенный алгоритм построения нечеткой модели для оценки структурной сложности объектов ПС
В третьей главе
В четвертой главе
Рис. 2. Архитектура ИС для поддержки управленческих решений при планировании разработки ПС
Размер по моделям
Основные результаты
Публикации по теме диссертации
Подобный материал:

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


Демирский Александр Анатольевич


ОЦЕНКА СТРУКТУРНОЙ СЛОЖНОСТИ ПРОГРАММНЫХ СРЕДСТВ

В ПРОМЫШЛЕННОСТИ

НА РАННИХ СТАДИЯХ ЖИЗНЕННОГО ЦИКЛА



Специальность: 05.13.01



Системный анализ, управление и обработка информации (в промышленности)



АВТОРЕФЕРАТ

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

кандидата технических наук


Тверь 2009

Работа выполнена в Тверском государственном техническом университете.


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

доктор технических наук, профессор

Палюх Борис Васильевич


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

доктор физ.-мат. наук, профессор

Михно Владимир Николаевич

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

Пильщиков Дмитрий Евгеньевич


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

Московский государственный технологический университет «СТАНКИН»


Защита состоится 19 июня 2009 г. в 16.00 часов на заседании диссертационного совета Д212.262.04 в Тверском государственном техническом университете по адресу: 170026, г.Тверь, наб. Афанасия Никитина, 22, комн. 212.


С диссертацией можно ознакомиться в библиотеке Тверского государственного технического университета по адресу г.Тверь, пр. Ленина, 25, зональная научная библиотека, ком.101.


Автореферат размещен на сайте ТГТУ tver.ru/new_struct/phd/


Автореферат разослан «___» мая 2009 г.



Ученый секретарь

диссертационного совета

доктор технических наук, профессор

Филатова Наталья Николаевна

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


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

Согласно стандарту ГОСТ Р ИСО/МЭК 12207-99 «Информационные технологии – Процессы жизненного цикла программ» начальным этапом процесса «Разработка» является этап анализа, цель которого - выявление, классификация и формализация информации обо всех аспектах предметной области, влияющих на свойства конечного продукта, и именно этот этап оказывает определяющее влияние на качество результатов всего проекта. На данном этапе разработчику создаваемого ПС необходимо провести оценку реализуемости проекта в условиях и ресурсах, предлагаемых заказчиком. Именно на этом этапе сторонами, участвующими в разработке ПС, принимаются договорные обязательства. Следствием недостатков или отсутствия технико-экономического обоснования проектов разработки ПС является неверная оценка выгод новой программной разработки, недооценка роли других конкурирующих предложений, неизбежный перерасход средств и снижение качества ПС.

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

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

Цель и задачи исследования. Целью диссертационной работы является повышение оперативности и точности планирования процесса разработки ПС АСУП.

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

Объектом настоящего исследования являются ПС входящие в состав АСУП промышленных предприятий.

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

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

Научная новизна. К наиболее существенным научным результатам относятся следующие.
  1. Разработан гибридный нейро-нечеткий метод обработки информации для создания моделей оценки структурной сложности ПС АСУП промышленных предприятий.
  2. Разработаны модели с использованием предложенного метода для оценки структурной сложности ПС.
  3. Разработана методика оценки размера ПС на основе использования данных эскизного проектирования интерфейса пользователя ПС и разработанных моделей.
  4. Разработана архитектура ИС, реализующая разработанные методы оценки структурной сложности ПС.

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

Реализация результатов. Разработанные в диссертации модели и методики реализованы в составе программного средства «Планирование проектов ПС», внедренным в ОАО «Государственный испытательный центр программных средств и вычислительной техники». Разработанное ПС применяется на начальных этапах процесса разработки заказных ПС, входящих в состав АСУП промышленных предприятий.

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

Результаты работы использованы в НИОКР «Разработка методического и инструментального обеспечения поддержки планирования материальных и временных затрат на разработку программного обеспечения АИС органов государственной власти, создаваемого в рамках работ по реализации мероприятий федеральной целевой программы «Электронная Россия (2002-2010 годы)». Указанная НИОКР зарегистрирована в едином реестре результатов научно-технической деятельности Роснауки номер 13293.6904003214.07.1.001.2.

Апробация работы. Результаты работы докладывались и обсуждались:

- на международной научно-практической конференции «Управление большими системами - 2007», Институт проблем управления РАН, 2007 г.;

- на международных научно-технических конференциях «Математические методы в химии и технологиях» №9, Тверь 1995г., №10, Новомосковск 1997г., №11, Владимир 1998г.;

- на научных семинарах кафедры «Информационные системны» Тверского государственного технического университета;

- на экспертном совете Федерального агентства по информационным технологиям (Росинформтехнологии) Минкомсвязи России с участием ведущих специалистов. По итогам обсуждения было принято решение об использовании результатов работы в практической деятельности Росинформтехнологии (протокол №1/НИОКР от 5 декабря 2007 г.).

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

Структура и объемы работы. Диссертационная работа состоит из введения, четырех глав, заключения, шести приложений и списка литературы. Общий объем диссертации 156 страниц, в том числе 16 рисунков, 7 таблиц, список литературы из 136 наименований.


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

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

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

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

Без должных подходов к управлению проектами разработки ПС, направленных на уменьшение неопределенности, велика вероятность перехода проекта в состояние «стихийности», которое приводит к ухудшению качества ПС, значительному запаздыванию разработок и превышению предполагавшихся затрат. Прогнозирование параметров проекта является ключевой задачей управления проектом. Точность прогнозов позволяет избежать описанных негативных последствий.

Среди наиболее известных работ, посвященных методам оценки ПС, следует отметить работы российских ученых: А.М. Вендрова, Е.З. Зиндера, Г.Н. Калянова, С.Л. Котова, В.В. Липаева, С.А. Орлова, Б.В. Палюха и др. Среди зарубежных можно выделить труды таких авторов как A. Albrecht, B. Boehm, J. Capers, T. DeMarco, R. Futrell, S. McConnell, L. Putnam, R. Stutzke и др.

Как показывают исследования Б. Боэма и Л. Путнэма, характер проектируемой системы и структурная сложность ее программного обеспечения, являются самыми значительными факторами, от которых зависят затраты ресурсов на разработку ПС. Для оценки структурной сложности существует достаточное количество метрик: Холстеда, Маккейба, Майерса, Джилба, Хансена, Вудворда. Однако все они подразумевают обязательное наличие для анализа либо текста самой программы, либо подробного алгоритма ее работы. Этот факт делает неприемлемым использование данных подходов на ранних этапах жизненного цикла ПС, когда у разработчика имеются только концептуальные модели архитектуры будущего ПС и отдельные эскизные проектные решения. Размер ПС является самой распространенной характеристикой для оценки структурной сложности на ранних этапах процесса разработки. Размер ПС в современной практике, среди всех факторов, влияющих на параметры проекта, изменяется в самом широком диапазоне на три - четыре порядка от 104 до 107 строк текста программ. Поэтому методам его оценивания уделяется большое внимание.

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

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

Самой простой и наиболее широко используемой метрикой измерения размера ПС является размер программы в строках кода (Line of code, LOC). В качестве метода оценивания размера ПС с помощью данной метрики используется метод аналогий. При его использовании возникают трудности с определением параметров, по которым определяется подобие проектов. Обычно эти параметры определяются экспертным методом, что вносит определенную долю субъективности в оценку.

Таблица №1. Сравнение методов оценки размера ПС

Методы определения размера ПС


Ед. измерения

Независимость от среды разработки

Легкость применения

Отсутствие влияния субъективности на результат

Калибровка по историческим данным

Универсаль -ность для различных типов проектов

Аналогии

LOC

-

±

-

+

±

Function Points

FP

+

-

±

-

-

Object Points

OP

+

+

±

-

-

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

Метод объектных баллов (object point, OP) является развитием идеи заложенной в методе функциональных баллов. При подсчете используются более крупные программные объекты, чем в предыдущем методе. Это позволяет производить оценку быстрее и проще. Метод еще менее универсальный, чем метод функциональных баллов, так как использует для подсчета ограниченный набор программных объектов – только окна, отчеты и 3GL компоненты. При этом каждый программный объект должен быть отнесен к определенной группе сложности с использованием процедуры экспертной оценки.

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

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

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

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

Сложность экземпляров класса объектов ПС определяется с помощью базы знаний (БЗ), построенной на правилах нечеткого вывода. Роль БЗ – идентификация нелинейной зависимости , где X – вектор значений количественных свойств класса объектов ПС; y – значение размера объекта ПС в условных единицах измерения, отражающее его структурную сложность.

Для построения частных моделей оценки сложности объектов ПС предлагается использовать метод двухэтапной идентификации нелинейных зависимостей с помощью нечетких баз знаний. Первый этап − структурная идентификация − представляет собой формирование нечеткой базы знаний, которая грубо отражает взаимосвязь между входами и выходом с помощью лингвистических правил «ЕСЛИ–ТО». Лингвистические правила генерируются в результате экстракции нечетких знаний из имеющейся статистики. На втором этапе проводится параметрическая идентификация исследуемой зависимости путем нахождения таких параметров нечеткой базы знаний, которые минимизируют отклонение модельных результатов и имеющейся статистики. Данный подход реализуется путем использования нечетких нейронных сетей, способных одновременно формировать нечеткие правила и адаптировать функции принадлежности путем модификации весов связей в процессе обучения.

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

Пi: ЕСЛИ х1 есть Аi1 И … И хj есть Аij И ... И хт есть Аiт,

ТО

Где Aij - нечеткое множество, отражающее значение характеристики программного объекта xj, с функцией принадлежности m(xj); xj - количественная характеристика объекта ПС, определяющая его структурную сложность; y – четкая выходная переменная равная искомому размеру объекта ПС, определяемая четкой функцией от значений характеристик объекта ПС; n – количество правил; m – количество входных переменных.

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

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

(1)

В выражении (1) подразумевается использование функции Гаусса для задания функций принадлежности всех нечетких множеств входных переменных, где a и b – параметры функции Гаусса.

На рис. 1 представлен обобщенный алгоритм построения модели оценки структурной сложности объектов ПС. Описание блоков алгоритма:

1. Построение опорных функций принадлежности для всех входных переменных модели.




Рис. 1. Обобщенный алгоритм построения нечеткой модели для оценки структурной сложности объектов ПС


Определяются минимальные и максимальные значения каждой входной переменной по статистическим данным:

x1 [x1(min), x1 (max)], x2 [x2 (min), x2(max)], …, xm [xm (min), xm(max)].

Каждый, определенный таким образом интервал, делится на M =2N + 1 равных областей (отрезков), причем исходное значение N=1 для каждой входной переменной.

Рассчитываются параметры функций принадлежности следующим образом. Центральные точки ar таких функций разбивают отрезок [xi(min), xi (max)] на равные части. Параметры b характеризующие размах функций, выбираются одинаковыми, исходя из условия перекрытия этих функций – пересечения на уровне 0.5.

;.

2. Определяется количество настраиваемых параметров базы нечетких правил. Настраиваемыми в процессе обучения параметрами являются:
  • нелинейные параметры aij, bij функций принадлежности нечетких множеств предпосылок правил;
  • параметры ci0 и сij линейных функций из заключений правил.

Общее количество настраиваемых параметров для модели 1-порядка:

L=2nm1/n+ п(т + 1).

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

(x1(k), x2(k),…, xm(k), y(k)), k=1,...,К ,

где x1(k), x2(k),…, xm(k), y(k) - соответственно значения входных переменных и выходной переменной в kпримере; К - общее число примеров.

3б. Сортировка всех примеров имеющихся статистических данных по возрастанию выходного значения – размера программного объекта. Резервирование каждого третьего примера для контрольной выборки.

4. Если K<2L то построить базу правил Сугено 0-порядка, в противном случае построить базу правил Сугено 1-порядка.

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

l = l1·l2···lm,

где l1,l2,…,lmчисло функций принадлежности для заданных входных переменных x1, x2, …, xm.

5. Сокращение количества правил. Для исключения мало значащих правил база знаний подвергается процедуре сокращения.

6. Обучение полученной базы нечетких правил. Если обозначить через I вектор параметров функций принадлежностей термов входных переменных и через B вектор коэффициентов линейных функций в заключениях. Тогда параметрическая идентификация сводится к следующей задаче математического программирования:

.

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

7. Расчет оценки средней суммарной погрешности полученной нечеткой продукционной модели на тестовой выборке и сравнение ее с требуемой (ε):

.

8. Если полученная точность модели неудовлетворительна, то переход к этапу 1 для изменения исходных параметров модели (изменение N=N+1). В противном случае сохранение полученной модели в БЗ и завершение работы алгоритма. Если дальнейшее улучшение модели невозможно из-за недостаточного количества данных в обучающей выборке, то также происходит завершение работы алгоритма.

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

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

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

1. Выделение экземпляров программных объектов в разработанном ПС.

2. Определение части исходного кода соответствующего каждому разработанному программному объекту.

3. Задание набора правил для предварительного форматирования исходного текста программ.

При использовании LOC-метрик для измерения размера ПС необходимо предварительно определить набор правил, по которым будут подсчитываться строки кода в завершенном проекте. В работе использовались следующие правила:
  • каждая строка исходного кода должна содержать только один оператор, если один оператор разбит на две «физические» строки, он должен учитываться как один оператор;
  • учитывалось количество строк исходного кода, написанных разработчиком вручную (без учета кода, сгенерированного автоматически, использованного из библиотек, повторно используемого и покупного ПО);
  • строки, относящиеся к тестовым модулям и другому сопутствующему программному обеспечению, исключаются;
  • объявления данных считаются за одну строку кода;
  • комментарии при подсчёте строк не учитываются.

4. Форматирование исходного текста программ согласно заданным правилам.

5. Подсчет строк кода по отформатированному тексту программы.

6. Если текст программы составлен на разных языках, необходимо пересчитать результат к приведенным строкам кода. Значение размера отдельного объекта ПС V, выраженное числом строк исходного текста на базовом языке, определяется исходя из размеров частей программного кода Vui на используемых языках (средствах) разработки по формуле:

,

где i – размер части программного кода объекта ПС на i-ом используемом языке (средстве) разработки; kpiпереводной коэффициент, определяемый в зависимости от используемого средства разработки; количество используемых языков программирования. Обычно в качестве базового языка программирования используется язык С или базовый язык ассемблера.

Полученные на данном этапе данные являются эталонным выходным значением для строящихся моделей оценки размера объектов ПС.

7. Определение значения количественных характеристик объектов, которые определяют их размер по методике приведенной в разделе 3.2.

8. Формирование обучающих выборок. Для каждого выделенного класса программных объектов создается своя обучающая выборка, которая постоянно пополняется за счет новых разработанных проектов.

Исходя из приведенных рекомендаций, предложен набор классов объектов для ПС входящих в состав АСУП. Порядок выбора классов базируется на принципе, что АСУП относятся к типу систем обработки данных.

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

В работе с использованием предложенного метода разработаны модели оценки размера объектов ПС для этапа проектирования интерфейса пользователя. На данном этапе количество типов объектов, которые можно использовать при подсчете размера ПС, увеличивается, что позволяет построить более точные модели для оценки структурной сложности разрабатываемого ПС. В качестве элементов ПС на данном этапе выделялись следующие классы объектов: экранные формы, диалоги, отчеты, файлы данных (таблицы РСУБД), функции импорта/экспорта данных. Оценка размера ПС (S) на этапе проектирования интерфейса пользователя производилась следующим образом:

,

где – оценка размера для n-го клиентского окна ПС в выбранных единицах измерения (SLOC, FP); – оценка размера для n-го диалогового окна ПС в выбранных единицах измерения (SLOC, FP); – оценка размера для n-го отчета ПС в выбранных единицах измерения (SLOC, FP); – оценка размера для n-го файла данных (таблицы РСУБД) ПС в выбранных единицах измерения (SLOC, FP); – оценка размера для n-й функции ПС обмена данными с внешними системами в выбранных единицах измерения (SLOC, FP).

С помощью предложенного метода были построены модели определения сложности объектов ПС, для этапа проектирования интерфейса пользователя ПС, следующего вида:

R1:(e, f) SCW, R2:(e, f) SDW , R3:(r, f) SR, R4:(d) SF, R5:(d, f) SDE,

где eE – количества элементов интерфейса для ввода/редактирования/просмотра данных, fF – количество связанных
файлов данных (таблиц РСУБД), rR – количество реквизитов выходного документа, dD – количество элементов данных в одной записи.

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

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

Разработанные в диссертации модели и методики реализованы в составе программного средства «Планирование проектов ПС», внедренным в ОАО «ГИЦ ПС ВТ». В разработанной ИС блоки построения БЗ и ее настройка реализованы с помощью инструментов пакета расширения FuzzyLogic Toolbox и встроенного командного языка системы Matlab. Интерфейс пользователя представляет собой программную оболочку, созданную средствами Delphi 7, основное назначение которой - интеграция между базой данных и знаний и вычислительным модулем.



Рис. 2. Архитектура ИС для поддержки управленческих решений при планировании разработки ПС

С использованием разработанной ИС была проведена апробация предложенных моделей оценки структурной сложности разрабатываемых ПС. Данные для предварительного обучения моделей были получены исходя из анализа ПС, поступивших на сертификационные испытания в ОАО «ГИЦ ПС ВТ» (более 100 ПС). Для сравнения оценка размера ПС проводилась также по методу функциональных баллов. Все оценки проводились на этапе проектирования интерфейса пользователя ПС. Результаты оценок приведены в таблице 2.

Таблица №2. Результаты оценки структурной сложности ПС



Наименование ПС

Размер факт (LOC)

Размер по методу FP

Размер по моделям

LOC

Δ(%)

LOC

Δ(%)

1

Регистрация и учет движения док.

9825

12150

23.66

10810

10.03

2

Обработка платежных документов

50365

57440

14.05

45670

9.32

3

Электронный обмен данных

74255

61730

16.87

79520

7.09

4

Формирование выходных форм

110874

137300

23.83

104730

5.54

5

Стат. отчетность

154351

125500

18.69

161380

4.55

6

Конфигуратор приложений АСУП

200358

244400

21.98

192310

4.02

7

Управление произв. запасами

234711

265450

13.10

222910

5.03

8

Управление сбытом гот. продукции

344541

310450

9.89

355240

3.11

В выборке представлены 8 завершенных проектов среднего и крупного масштаба с размером ПС от 104 до 106 в строках исходного кода (LOC). По результатам оценки видно, что оценочные данные о размере проекта, полученные с использованием созданных моделей отличаются от фактических на 3-5% для крупных проектов и 5-10% для средних. Данные о размере проекта, которые были получены в результате применения метода функциональных баллов, отличаются от реальных, зафиксированных по завершению проекта, на 10-23%. Это свидетельствует о высокой достоверности оценки размера ПС с помощью предложенных методов.

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

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

1. Разработан метод оценки структурной сложности ПС АСУП, основанный на технологиях искусственного интеллекта.

2. Разработаны модели для оценки размера ПС с использованием макета интерфейса пользователя ПС.

3. Разработана методика и ее программная реализация для оценки размера ПС на ранних этапах жизненного цикла.

4. Разработана архитектура ИС для поддержки управленческих решений при планировании разработки ПС.

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


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

1. Демирский, А.А. Применение нейронных сетей для оценки трудоемкости IT-систем [Текст] / А.А. Демирский, С.Л. Котов // Системы управления и информационные технологии. 2007. №3.2. С. 267-272 (журнал из перечня ВАК).

2. Демирский, А.А. Использование экспертных систем для управления IT-проектами [Текст] / А.А. Демирский, С.Л. Котов // Труды международной научно-практической конференции «Теория активных систем - 2007» / Институт проблем управления РАН. 2007. секция №2. С. 147-150.

3. Демирский, А.А. Использование экспертных систем для предварительной оценки стоимости IT-проектов [Текст] / А.А. Демирский // Вестник ТГТУ / Тверской государственный технический университет. 2007. №12. С. 192-195

4. Демирский, А.А. Информационная система интеллектуальной поддержки управленческих решений по обоснованию затрат на разработку ИТ-систем [Текст] / А.А. Демирский, С.Л. Котов // Вестник ВНИИНМАШ, спецвыпуск посвященный пятидесятилетию ВНИИНМАШ. 2008. С. 63 67.

5. Демирский, А.А. Оптимизация структуры базы данных информационной системы учета и регистрации патентов на право торговли с целью повышения производительности [Текст] / А.А. Демирский, Б.В. Палюх // Программные продукты и системы. 1998. №3. C. 55-60.

6. Демирский, А.А. Автоматизированная информационная система поддержки принятия решения для торгового отдела администрации г.Твери [Текст] / А.А. Демирский, Б.В. Палюх, А.В. Жгутов // Программные продукты и системы. 1997. №3. C. 35-38.