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

кандидата технических наук
Разумовский, Андрей Владимирович
город
Санкт-Петербург
год
2010
специальность ВАК РФ
05.13.19
Диссертация по информатике, вычислительной технике и управлению на тему «Модель и метод эволюции конкурирующих информационных технологий»

Автореферат диссертации по теме "Модель и метод эволюции конкурирующих информационных технологий"

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

004602Ь-^

ЧУ

Разумовский Андрей Владимирович

МОДЕЛЬ И МЕТОД ЭВОЛЮЦИИ КОНКУРИРУЮЩИХ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ

05.13.19 - Информационная безопасность, методы и средства защиты

информации

АВТОРЕФЕРАТ

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

Санкт-Петербург 2010

2 О МД* 20*3

004602539

УДК 004.056

Работа выполнена в Санкт-Петербургском государственном университете информационных технологий, механики и оптики на кафедре "Безопасные информационные технологии"

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

Осовецкий Леонид Георгиевич

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

Воробьев Владимир Иванович кандидат технических наук Птицын Алексей Владимирович

Ведущее предприятие: Санкт-Петербургский государственный

университет аэрокосмического

приборостроения

Защита состоится 2010 г. в ¿Г часов яэ минут на

заседании диссертационного совета Д.212.227.05 в Санкт-Петербургском государственном университете информационных технологий, механики и оптики.

Адрес: 197101, г. Санкт-Петербург, Кронверкский пр., д. 49.

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

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

Учёный секретарь диссертационного совета Д.212.227.05 , к.т.н., доцент Л

В.И.Поляков

Общая характеристика работы

АКТУАЛЬНОСТЬ ТЕМЫ ИССЛЕДОВАНИЯ

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

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

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

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

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

ЦЕЛЬ РАБОТЫ

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

Поставленная цель исследования обусловливает необходимость решения следующих основных задач:

1. Провести обзор существующих моделей конкуренции на основе эволюционных моделей;

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

3.Определить функцию приспособленности, по которой можно оценивать качество программ;

4.Разработать метод оценки программного обеспечения для последующего использования в модели конкуренции;

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

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

7.Провести исследование программного обеспечения с использованием разработанной модели;

В соответствии с целями и задачами диссертационного исследования определены его предмет и объект.

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

ПРЕДМЕТОМ ИССЛЕДОВАНИЯ диссертационной работы является конкуренция информационных технологий на примере программного обеспечения с точки зрения безопасности и защиты информации.

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

МЕТОДОЛОГИЧЕСКОЙ ОСНОВОЙ ИССЛЕДОВАНИЯ являются труды ученых М.Эйгена, П.Шустера, Л.Г. Осовецкого, О.Ф. Немолочнова, В.А. Карасева, В.В. Липаева и других специалистов по проблемам информационной безопасности, разработке программного обеспечения, эволюционным моделям развития.

НАУЧНАЯ НОВИЗНА ИССЛЕДОВАНИЯ обусловлена:

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

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

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

ПРАКТИЧЕСКАЯ ЦЕННОСТЬ

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

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

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

ПУБЛИКАЦИИ

По материалам диссертации опубликовано пять печатных работ. АПРОБАЦИЯ РАБОТЫ

Основные положения и результаты диссертационной работы докладывались на следующих конференциях:

• На IV Межвузовской конференции молодых ученых (Санкт-Петербург, апрель 2007);

• На V Межвузовской конференции молодых ученых (Санкт-Петербург, апрель 2008);

• На VI Межвузовской конференции молодых ученых (Санкт-Петербург, апрель 2009);

• На XIV Научно-практической конференции «Теория и технология программирования и защиты информации» (Санкт-Петербург, май 2009);

• На конференции «Теоретические и прикладные проблемы информационной безопасности в Республике Беларусь» (Беларусь, Минск, март 2010);

• На VII Межвузовской конференции молодых ученых (Санкт-Петербург, апрель 2010).

ВНЕДРЕНИЕ РЕЗУЛЬТАТОВ

Разработанные модель и метод оценки конкуренции информационных технологий использованы при проведении исследований программного обеспечения своих клиентов ООО «Семонккс - ИТ-консалтинг», при разработке программного обеспечения и консалтинге клиентов компании ЗАО «СМ Консапт», в учебном процессе кафедры «Безопасные информационные технологии» СПбГУ ИТМО по специальности 090103 в лекционных и практических курсах «Введение в специальность» и «Комплексные системы защиты информации на предприятии».

ОСНОВНЫЕ ПОЛОЖЕНИЯ ДИССЕРТАЦИИ. ВЫНОСИМЫЕ НА ЗАЩИТУ

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

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

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

СТРУКТУРА И ОБЪЕМ ДИССЕРТАЦИИ Диссертация состоит из введения, четырех глав, заключения, списка литературы и приложения. Материал изложен на 105 страницах машинописного текста, содержит 17 рисунков, список литературы состоит из 90 наименований.

СОДЕРЖАНИЕ РАБОТЫ Во введении обосновывается актуальность темы диссертационного исследования, определяется степень разработанности проблемы, формулируются цель и задачи исследования, излагаются положения, выносимые на защиту и элементы научной новизны.

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

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

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

• работают в основном не с параметрами задачи, а с множеством параметров;

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

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

• применяют не детерминированные, а вероятностные правила анализа оптимизационных задач.

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

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

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

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

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

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

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

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

Во втором разделе описана модель, в основе которой лежат следующие положения:

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

2. Существует оптимальные значения параметров, к которым стремится каждый экземпляр.

3. Существует функция приспособленности экземпляра, которая показывает насколько значения параметров конкретного экземпляра близки к оптимальным значениям параметров.

4. Экземпляры программ х с одинаковыми значениями параметров объединяются в группы Л}. Численность каждой группы Х^ изменяется во времени по определенному алгоритму.

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

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

Набор параметров образует матрицу параметров. Количество параметров обозначим за N. После определения параметров и составления из них матрицы необходимо оценить каждую программу по этим параметрам. В данной модели оценка производится по формальным критериям. Каждый экземпляр программы Хк определяется последовательностью параметров где:

*"=1,2.....N

к— 1,2,...^с;

N— количество параметров;

х - количество экземпляров КНИГ.

Дополнительным условием является большое количество экземпляров программ и количество параметров. Обозначим это условие следующим образом:

Н,х»1.

Параметры оценивают качество программы1. Шкала может быть произвольной. В данной работе значение каждого параметра может принимать значения от 0 до 9,О<9. Если параметр отсутствует, то ставится 0.

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

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

Количество параметров N в течение отдельного процесса развития не изменяются и велико N»1.

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

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

В дальнейшем эта последовательность используется в функции приспособленности:

/(5) = ехрНЧ(Я,&)], (1)

где:

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

¿4-метрика Ли.

В общем виде график функции приспособленности выглядит следующим образом:

Рис. 1. График функции приспособленности.

Далее рассматривается множество программ А} которое разделяется на подмножества X). Значение функции приспособленности используется в расчете популяции каждой группы Х}, состоящей из множества близких по характеристикам экземпляров программ х„ изменяющихся во времени. Динамика развития каждой группы X} определяется следующим образом:

X, = (Ад, - +1 + Ф.

' ^ Аи;

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

программ не должно превышать А'„ ^Л) < Ж.

1

А; - описывает создание новых копий программы. Зависит от функции приспособленности С^) конкретного экземпляра программы. Создание новых копий программы происходит в соответствии с приспособленностью каждой группы к сумме всех приспособленностей. Прирост новых экземпляров происходит по следующей формуле:

Ел' '

/

где:

/[.*>,) - функция приспособленности (1),

п

I /, - сумма всех приспособленностей.

Q¡ - фактор качества. Зависит от качества программы. Показывает влияние качества программы на ее распространение. Более качественные программы распространяются с большей скоростью. Данная величина основывается на количестве экземпляров х в группе Х}. В модели качество измеряется через расстояние Ли. Метрика Ли показывает относительное качество, поэтому этот фактор отражает относительную величину качества программы, в нем не учитывается удельный вес параметра и его влияние на конечный результат. Под удельным весом понимается важность параметра, например безопасности. Таким образом, качество всей группы можно обозначить как сумму качеств программ, входящих в группу X/.

где <4 - расстояние по Ли (1).

Б, - удаление из группы (запланированное удаление). Зависит от функции приспособленности Г(Б) конкретного экземпляра программы и является обратно пропорциональным ей. Функция приспособленности, как было показано выше (рис. 1), является убывающей экспоненциально с ростом метрики Ли, поэтому коэффициент удаления возрастает также по экспоненте. Таким образом, чем выше приспособленность, тем больше экземпляров добавляется в группу (А) и тем меньше экземпляров отмирает (Б). В данном случае параметр Б отражает желание людей пользоваться программой, несмотря на ее недостатки.

Параметр рассчитается по формуле:

со - коэффициент угроз. Данный коэффициент отражает воздействия угроз с определенной частотой и определенными изменениями. Любое воздействие приводит к изменениям в программе. В настоящее время очень много возможных уязвимостей и типов атак на ПО. Даная работа не ставит перед собой анализ всех этих угроз и их описание. Тем не менее, такие угрозы необходимо учитывать. Для этого целесообразно обратиться к исследованиям специалистов в области ИТ безопасности - антивирусным компашим. Вирусные атаки не единственный тип угроз, которым подвергается ПО. Но учитывать воздействие всех угроз достаточно трудно и нецелесообразно. Статистика заражений говорит о том, что процент зараженных программ колеблется на уровне от 0,01 до 0,25 % от всего количества программ. В данной работе мы предполагаем, что заражение экземпляров будет совпадать со статистическим. Также в этот параметр входят те экземпляры программ, которые незначительно отличаются от основной группы.

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

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

Ф рассчитывается по формуле:

® — l^max ~ •

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

Параметры A,Q, D, ш рассчитываются из популяции.

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

Метод состоит из нескольких шагов.

1. Определить какие качественные характеристики будут участвовать в отборе. Этот шаг выполняет эксперт. На данном этапе необходимо определить какой аспект КНИТ будет подвергаться тестированию. Этот шаг важен, так как от него во многом зависят конечные результаты. В качестве параметров могут выступать любые параметризуемые характеристики системы или свойства, например, количество функций, объем строк кода, и так далее. Целесообразно воспользоваться категориями международного стандарта ISO 9126:

- полнота. Все необходимые части программы должны быть представлены и полностью реализованы;

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

- портируемость. Лёгкость в адаптации программы к другому окружению: другой архитектуре, платформе, операционной системе или её версии;

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

- сопровождаемое™. Насколько сложно изменить программу для удовлетворения новых требований. Это требование также указывает, что программа должна быть хорошо документирована, алгоритм не слишком запутан, и иметь резерв роста по использованию ресурсов (память, процессор);

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

- практичность (применимость). Простота и удобство использования программы. Это требование относится, прежде всего, к интерфейсу пользователя;

- надёжность, отсутствие отказов и сбоев в работе программ, а также простота исправления дефектов и ошибок;

- эффективность. Насколько рационально программа относится к ресурсам (память, процессор) при выполнении своих задач;

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

2. После того как мы отобрали качественнее характеристики, необходимо проанализировать КНИТ, участвующих в исследовании на предмет наличия или отсутствия у них исходных параметров.

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

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

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

£

К =-

X

Далее получившееся среднее значение г, делиться на максимальное возможное значение параметра гшах и умножается на 100 и сравнивается с

пороговым значением: / \

г

*Ю0<>/ ;„

Если значение меньше порогового, значит значением параметра можно пренебречь.

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

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

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

Таблица 1. Оценки эффективности методов поиска.

Метод поиска Matal .; хtotal при^У = 100

Последовательный (14*2)-1 200

Эволюционный ~103

Случайный ~2N ~10I5Ü

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

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

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

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

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

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

-iolxj

Г C:\WIND0WS\system32\cmd.cKe

............

D:\documentation\Perl\scrxpts\kn it >kn it _0.2.5.p1 /? KNIT. Uersion:0.2.4

Author: ftndrey Razumouskiy <xvewPyandex.ru>

The following switches may be used in the command line:

/d debug information

/r real random <50x>

/? this message

/m manual element changes

Sf [file name!!

D:\doeumentation\Perl\scripts\knit>„,

Рис. 2. Справка по программе

На рис. 3. изображены снимки экрана работы комплекса в режиме эмуляции.

шс-'Ми ттт

KNIT. Uersion:Ш.2„4

Author:Andrey Razumovskiy <xrewPyandex.ru> Enter number of knit: 7

GENERATION Ö

inter initial level of populaiton: 4!

iSB

ciEÖ] = 38

ci [1 J = 236

ci Е21 = 329

ci f 3 ] = 307

ci [41 = 77

cilS J = 13

:ii61 = 418

enter 0ОИ high level of populaiton: 1QQ0

1 [ 1 1 4 Ш 1 8 1 2 111,

t 1 1 1 i S 1 1 1 5 6 1.

: [ 1 17 11111 Ill,

1 r 1 12 113 8 1 111.

L t 1 11118 11 18],

£ 1 11116 11 11],

- [ 4 112 112 1 111,

Рис. 3. Работа программного комплекса.

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

В первом разделе описывается процесс оценки известных браузеров. Сначала отбираются браузеры, которые будут использоваться в модели конкуренции. Далее происходит оценка каждого браузера по критериям стандарта ISO 9126. Составляется оптимальная последовательность. На основе результатов исследования популярности проставляются количественные начальные значения параметров для каждой группы. Далее запускается программный комплекс.

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

Рис. 4. Результаты конкуренции браузеров, участвующих в исследовании

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

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

ОСНОВНЫЕ ВЫВОДЫ И РЕЗУЛЬТАТЫ РАБОТЫ . 1. Разработан метод оценки параметров оценки программного обеспечения на основе статистических и математических показателей;

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

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

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

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

СПИСОК РАБОТ. ОПУ Б ЛИКОВ АННЫХ ПО ТЕМЕ ДИССЕРТАЦИИ:

1. Разумовский A.B. Модель безопасности организации // Труды 14-й международной научно-технической конференции «Теория и технология программирования и защиты информации» (2009г., Санкт-Петербург). - Санкт-Петербург,2009. - С. 44-45.

2. Разумовский A.B. Модель оценки уровня безопасности организации в общем поле угроз // Информационные технологии: сб. трудов VI всерос. межвуз. конф. молодых ученых (Санкт-Петербург, 14-17 апр. 2009 г.). - Санкт-Петербург, 2009. - №6. - С. 93-98.

3. Осовецкий Л.Г., Разумовский A.B. Конкуренция программного обеспечения // В мире научных открытий. - 2010. - № 3. - С. 57-61.

4. Разумовский A.B. Мертвый код // Научно-технический вестник СПбГУ ИТМО. - 2008. - № 52. - С. 201-206.

5. Разумовский A.B. Модель конкуренции программного обеспечения // Научно-технический вестник СПбГУ ИТМО. - 2010. - № 67. - С. 92-95.

Тиражирование и брошюровка выполнены в Центре «Университетские Телекоммуникации». Санкт-Петербург, Кронверкский пр., 46. Тел. (812) 233-46-69. Лицензия ПДЛ №б9-182 от 26.11.96 Тираж 100 экз.

Оглавление автор диссертации — кандидата технических наук Разумовский, Андрей Владимирович

Введение.

Глава 1. Обзор технологий обеспечения безопасности программного обеспечения.

L.I Конкуренция как новый подход к обеспечению безопасности.

1.2 Эволюционные модели.

1.3 Основные метрики для оценки надежности систем.

Выводы по главе 1.

Глава 2. Модель и метод эволюции конкурирующих информационных технологий.

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

2.2 Модель КНИ Г.

2.3 Формальное описание схемы эволюции KHI1T.

2.4 Метод КНИ Г.

2.5 Аналитическая оценка алгоритма.

2.6 Выводы по главе 2.

Глава 3. Инструментально - технологический комплекс КНИТ.

3.1 Описание требований к комплексу и функционалу.

3.2 Описание работы комплекса.

Выводы по главе 3.

Глава 4. Исследование современных технологий.

4.1 Выбор программного обеспечения для моделирования.

4.2 Результаты моделирования.

4.3 Рекомендации по результатам моделирования.

Выводы по главе 4.

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

АКТУАЛЬНОСТЬ ТЕМЫ ИССЛЕДОВАН11Я

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

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

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

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

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

ЦЕЛЬ РАБОТЫ

Целыо диссертационной работы является разработка модели и метода эволюции конкурирующих информационных технологий.

Поставленная цель исследования обусловливает необходимость решения следующих основных задач:

1.Провести обзор существующих моделей конкуренции на основе э вол ю ци он иых мо;lc:iсй;

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

3.Определить функцию приспособленности, по которой можно оценивать ^ качество программ;

4.Разработать метод оценки программного обеспечения для последующего использования в модели конкуренции;

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

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

7.Провести исследование программного обеспечения с использованием разработанной модели;

В соответствии с целями и задачами диссертационного исследования определены его предмет и объект.

ОБЪЕКТОМ ИССЛЕДОВАНИЯ является функциональное программное обеспечение, создаваемое при помощи инструментально-технологических

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

ПРЕДМЕТОМ ИССЛЕДОВАНИЯ диссертационном работы является конкуренция информационных технологий на примере программного обеспечения с точки зрения безопасности и защиты информации.

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

МЕТОДОЛОГИЧЕСКОЙ ОСНОВОЙ ИССЛЕДОВАНИЯ являются труды ученых М.Эйгена, П.Шустера, Л.Г. Осовецкого. О.Ф. Немолочпова, В.А. Карасева, В.В. Липаева и других специалистов по проблемам информационной безопасности, разработке программного обеспечения, эволюционным моделям развития.

НАУЧНАЯ НОВИЗНА ИССЛЕДОВАНИЯ обусловлена:

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

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

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

ПРАКТИЧЕСКАЯ ЦЕННОС ТЬ

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

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

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

ПУБЛИКАЦИИ

По материалам диссертации опубликовано пять печатных pa6oi.

АПРОБАЦИЯ РАБОТЫ

Основные положения и результаты диссертационной работы докладывались на следующих конференциях:

• На IV Межвузовской конференции молодых ученых (Санкт-* Петербург, апрель 2007);

• На V Межвузовской конференции молодых ученых (Санкт-Петербург, апрель 2008);

• На VI Межвузовской конференции молодых \чепых (Санкт-Петербург, апрель 2009);

• На XIV Научно-практической конференции «Теория и технология программирования и защиты информации» (Санкт-Петербург, май 2009);

• На конференции «Теоретические и прикладные проблемы информационной безопасности в Республике Беларусь» (Беларусь, Минск, март 2010);

• На VH Межвузовской конференции молодых ученых (Санкт-Петербург, апрель 2010).

В НЕДР EI I ME РЕЗУЛЬТАТОВ

Разработанные модель и метод оценки конкуренции информационных технологий использованы при проведении исследований программного обеспечения своих клиентов ООО «Семоникс - ИТ-копсал пшг», при разработке программного обеспечения и консалтинге клиентов компании ЗАО «СМ Консалт». в учебном процессе кафедры «Безопасные информационные технологии» СПбГУ ПТМО по специальности 090103 в лекционных и практических курсах «Введение в специальность» и «Комплексные системы? защиты информации на предприятии».

ОСНОВНЫЕ ПОЛОЖЕНИЯ ДИССЕРТАЦИИ, ВЫНОСИМЫЕ НА ЗАЩИТУ

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

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

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

СТРУКТУРА И ОБЪЕМ ДИССЕРТАЦИИ 1

Диссертация состоит из введения, четырех глав, заключения, списка литераторы и приложения. Материал изложен на 105 страницах машинописного текста, содержи! 17 рисунков, список литературы состоит из 90 наименований.

Заключение диссертация на тему "Модель и метод эволюции конкурирующих информационных технологий"

Выводы по главе 4

Результаты моделирования, показывают, что первоначальная численность группы не играет решающей роли. Намного важнее является способность приспосабливаться. Также можно видеть, что в результате моделирования как правило выигрывает одна группа, что согласуется с результатами, которые получили М. Эйген и П. Шустер в своей работе. Анализ этой ситуации" подробно рассмотрен в главе 2, в разделе 2.5. В силу экспоненциального роста, даже небольшая группа начинает расти весьма быстро при достижении оптимальных параметров.

95

Заключение

В данной работе предложена модель конкурирующих информационных технологий (КНИТ) на основе модели эволюции М.Эйгена и П.Шустера.

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

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

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

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

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

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

1. Blaldey B. The Emperor's Old Armor // Proceedings of the 1996 New Security Paradigms Workshop, Lake Arrowhead, California, September 17-20, 1996, Association for Computing Machinery, 1997.

2. Касты Дж. Большие системы. Связность, сложность и катастрофы /11ер. с англ. — М.: Мир, 1982

3. Эшби У. Р. Введение в кибернетику.— М.: ИЛ, 1959.

4. Доброчеев О. В. Неустойчивое равновесие коллективных систем физико-химической, биологической и социальной природы // Российский химический журнал.—1995.—Т. 39.—№2.—С. 48-54.

5. Гумилев Л. Н. Этносфера: История людей и история природы.— М.: Экопрос, 1993.

6. Пригожий И., Стенгерс И. Порядок из хаоса.— М.: Прогресс, 1986.

7. Дарвин Ч. Происхождение видов путем естественного отбора. Соч., т. 3.— М.-Л.: Академия, 1939.

8. Варшавский В. Ж, Поспелов Д. А. Оркестр играет- без дирижера: размышления об эволюции некоторых технических систем и управлении ими.— М.: Наука, 1984.

9. Ebert С. Dealing with Nonfunctional Requirements in Large Software Systems // Annals of Software Engineering, Volume 3, September 1997, p. 367-395.

10. Heather M. Hinton. Under-Specification, Composition and Emergent Properties. // Proceedings of the 1997 New Security Paradigms Workshop, Langdale, Cumbria UK, September 23-26, 1997, Association for Computing Machinery, 1998.

11. Conficker. Wikipedia, http://en.wikipedia.org/wiki/Conficker, 2010

12. Con ticker не дремлет. http://www.spvcamim.ru/conflcker-ne-dremlet-7819.php, 2010

13. Proceedings of the 1997 Information Survivability Workshop, San Diego, California, February 12-13, 1997, Software Engineering Institute and IEEE Computer Society, 1997.

14. Proceedings of the 1998 Information Survivability Workshop, Orlando, Florida, October 28-30, 1998, Software Engineering Institute and IEEE Computer Society, 1998.

15. Reuters. Pager Glitch Cause Lost in Space. Wired News, Wired Digital Inc., August 11, 1998. http://www.wired.com/news/news/technology/ story/ 14355.html

16. Касперский E. Касперский предсказывает глобальные кибервойны в будущем, 15.04.2010. http://www.sccuntylab.ru/news/393013.php

17. Большая советская энциклопедия. Т. 29. — М.: Изд-во Сов. энцикл., 1978.21 .Дарвин Ч. Происхождение видов путем естественного очбора. Соч., г.3,— М.-Л.: Академия, 1939.

18. Шмальгаузен И. П. Проблемы дарвинизма.— Л.: Наука, 1969.

19. Ауэрбах UL Генетика.— М.: Атомиздат, 1966.

20. Дубинин II. Г1. Избранные труды. Т. I. Проблемы гена и эволюции.— М.: Наука, 2000.

21. Курейчик В. В. Эволюционные меюды решения оптимизационных задач.— Таганрог: Изд-во ТРТУ, 1999.

22. Курейчик В. В. Эволюционные, синергетические и гомеостатические методы принятия решений.— Таганрог: Изд-во ТРТУ, 2001.

23. Курейчик В. Л/. Генетические алгоритмы.— Таганрог: Изд-во ТРТУ, 1998.

24. Курейчик В. М. Генетические алгоритмы и их применение.— Таганрог: Изд-во ТРТУ, 2002.

25. Practical Handbook of Genetic Algorithms. Editor I. Chambers. V. 1.— Washington, USA: CRC Press, 1995.

26. Practical Handbook of Genetic Algorithms. Editor I. Chambers. V. 2.— Washington, USA: CRC Press, 1995.

27. Practical Handbook of Genetic Algorithms. Editor 1. Chambers. V. 3.— Washington, USA: CRC Press, 1999. "

28. Holland John H. Adaptation in Natural and Artificial Systems: An Introductory Analysis with Application to Biology, Control, and Artificial Intelligence.— USA: University of Michigan, 1975.

29. Goldberg David E. Genetic Algorithms In Search, Optimization, and Machine Learning.— USA: Addison-Wesley Publishing Company, Inc., 1989.

30. Handbook of Genetic Algorithms / Edited by Lawrence Davis.— USA, New York: Van Nostrand Reinhold, 1991.

31. Эволюционные вычисления и генетические алгоритмы / Составители: Э. Д. Гудман, А. П. Коваленко // Обозрение прикладной и промышленной математики.— М.: Изд-во ТВГ1, 1996.

32. Батишев Д. А. Генетические алгоритмы решения экстремальных задач.— Воронеж: Изд-во ВГТУ, 1995.

33. Букатова И. JI. Эволюционное моделирование и его приложения.— М.: Наука, 1991.

34. Букатова И. Л. Эволюционные технологии — средства интенсивной информатизации. — М: РАН, ИРЭ, 1994.

35. Растригин Л. А. Статистические методы поиска.— М.: Наука, 1968.

36. Rastrigin L. A. Random Search in Evolutionary Computations // Proceedings 1 st International conf., Evolutionary Computation and Its Application, EvCA, 96,—Moscow, 1996.—P. 135-143.

37. KozaJ.R. Genetic Programming. Cambridge/MA:MIT Press, 1992.

38. KozaJ. R. Genetic Programming, 2.— Cambrldge/MA:MIT Press, 1994.

39. Genetics Algorithms / Editor Lawrence Elbaum // Proceedings of the I st International conf.— New Jersey, USA: Associates Publishers, 1985.

40. Genetics Algorithms / Editor J. Grefenstette // Proceedings of the 2nd International conf.— New Jersey, USA: Associates Publishers, 1987.

41. Genetic Algorithm / Editor D. Schaffer // Proceedings 3d International conf. San Mateo.— USA: Morgan Kaufman Publishers, 1989.

42. Genetics Algorithms / Editors R. Belew, L. Booker // Proceedings of the 4th International conf., San Mateo.— USA: Morgan Kaufman Publishers, 1991.

43. Genetics Algorithms / Editor R. Forrest // Proceedings of 5th International conf., San Mateo.— USA: Morgan Kaufman Publishers, 1993.

44. Genetics Algorithms / Editor R. Forrest // Proceedings of 6th International conf., San Mateo.— USA: Morgan Kaufman Publishers, 1995.

45. Genetics Algorithms / Editor T. Back // Proceedings of the 7th International conf.,San Francisco.— USA: Morgan Kaufman Publishers, Inc, 1997.

46. ГОСТ 13377-75 Надежность в технике. Термины и определения. hitp://w\vw. normacs.ru/Doclist/doc/V6C6.html

47. Иванова Г.С. Технология программирования: Учебник для вузов. М.: Изд-во МГТУ им. Н.Э. Баумана, 2002.

48. Майкл Ховард, Дэвид Лебланк, Джон Виега. 19 смертных грехов, угрожающих безопасности программ. Как не допустить типичных ошибок. М.: Издательский Дом ДМК-пресс, 2006.

49. Разумовский А.В. Мертвый код // Научно-технический вестник СПбГУ ИТМО. 2008. - № 52. - С. 201-206.

50. Липаев В.В. Надежность программного обеспечения АСУ. -М.: Энергоиздат, 1981.

51. Майерс Г. Надежность программного обеспечения: Пер. с англ. /Под ред. B.LLI. Кауфмана.М.:Мир, 1980.

52. Тейер Т., Липов М., Нельсон Э. Надежность программного обеспечения. Пер. с англ. М.:Мир, 1981.

53. Шураков В.В. Надежность программного обеспечения систем обработки данных. М.:Статистика, 1981.61. 1SO/1EC 9126-1. http://4vebstore.iec.ch/pre\ iew/info isoiec9126-l%7Bedl.0%7Dcn.pdr

54. ГОСТ 28195-89. Оценка качества программных средств. Общие положения. М.: ИПК Издательство стандартов, 2001. http://protect.aost.m/v.aspx?control=8&baseC=-1 &page==0&month=-1 &vear--l&search=&ReaNum= l&DocOnPageCounl= 15&id= 131065

55. ГОСТ 28806-90. Качество программных средств. Термины и определения, 1992. http://protect.gost.ru/v.aspx?control=:8&bascC=-1 &pai>c=Q&month--1 &vear=1 &search=&ReaNum= 1 &DocOnPaaeCount= 15&id= 129393&рацсК=09А9А8 AD-E86B-432A-A06E-70DD480C881D

56. Элфрид Дастпн, Джефф Рэшка, Джон Пол. Автоматизированное тестирование программного обеспечения. М.Лори, 2003.

57. Сэм Канер, Джек Фолк, Епг Кек Нгуен. Тестирование программного обеспечения. Фундаментальные концепции менеджмента бизнес-приложений. СПб. : ООО «ДиаСофгЮП», 2001.

58. Brian Brvson. Rational Robot tips and techniques: Rebooting your system, 28.06.2004. http://\vw\v.ibm.com/developervvorks/rational/librarv/959.html

59. Michael Kelly. Getting started with automated testing: Road map to success, 24.11.2003. http://4vwvv.ibm.com/developerworks/ratiotiabTibrary/274.html

60. Jlunaee B.B. Отладка сложных программ. М.:Энергоатом-издат, 1993.

61. Безопасность информации. Сб. материалов международной конференции. М.: Изд.РИА. 1997.

62. Ю.Липаев, В.В. Программно-технологическая безопасностьинф-ормацпонных систем. М.: Изд.МИФИ. 1997.

63. Musa J.D., lannino A., Okumoto 1С. Software Reliability: Measurement, Prediction, Application. N.Y. McGraw Hill, 1990.

64. Shooman M.L. Software Engineering: Reliability, Development and Management. N.Y. McGraw-Hill. 1983.

65. Герасименко В.А. Защита информации в авгоматизирован-ных системах обработки данных. Книга 1 и 2. М.: Энергоат-омиздат. 1994.

66. Гласе Р. Руководство по надежному программированию: Пер. с англ. М.: Финансы и статистика, 1982.

67. Лонгботтом Р. Надежность вычислительных систем: Пер. с англ. /Иод ред. Г1.П. Пархоменко. М.: Энергоатомиздат, 1985.

68. Howden W.E. Functional program testing and analysis. N.Y.: McGraw-Hill, 1987.

69. Chad Dougherty, Kirk Sayre, Robert C. Seacord, David Svoboda, Kazuya Togashi. Secure Design Patterns. 2009. http:/Avww.cert.om/archivc/pdf/09tr010.pdf

70. Robert C. Seacord. Secure Coding Initiative. Carnegie Mellon University, 2010. hup:Vwww.cert.org/archive/pcH7SecureCodiniilnitiativc 01 10.pelf

71. Калянов Г.Н. CASE структурный системный анализ (автома-гизация и применение). М: Изд.ЛОРИ. 1996.

72. Котляров В.П. CASE-технология и возможности современных CASE-средств в поддержке этапов проектирования програм-много продукта // Системная информатика. Новосибирск. ВО "Наука". Сибирская издательская фирма. Вып 4.1995.

73. Fisher A.S. CASE: using the newest tools in software development. N.Y.: John Wiley & Sons, 1988.

74. Ng P.A., Yeh R.T. ed. Modern software engineering. Foundations and current perspectives. N.Y.: Van Nostrand Reinhokl, 1990.

75. Sommerville I. Software engineering. Addison Wesley. Lancaster University. 1992.

76. Jlimace B.B., Филинов E.H. Мобильность программ и данных в открытых информационных системах. М.: РФФИ, 1997.

77. Эйген М, Шустер П. Гиперцикл. Принципы самоорганизации макромолекул. М.: Мир, 1982.

78. Ушаков А.В., Хабапов В.В., Дударенко И.А. Математические основы теории систем: элементы теории и практикум./ Под ред. Ушакова А.В.-СГ16: СПбГУИТМО, 2007.

79. Windows ХР, Windows Vista и Windows 7 ответы на самые популярные вопросы, 2010. http://vvww.microsoft.eom/rus/w indows/windowsxpFAO/default.mspx

80. Обзор вирусной обстановки от компании «Доктор Веб» за первое полугодие 2009 года. электронный ресурс., режим доступа: htlp://news.drweb.com/show/?i=399&c= 10&р=0, свободный

81. Редько В. Г. Эволюционная кибернетика.— М.: Наука, 2001.

82. Рейтинг самых популярных браузеров в России, электронный ресурс., режим доступа: http:/;dbprogs.ru/ncws/read/pop brauser russia.html.