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

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

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

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССШЮКОЙ ФЕДЕРАЦИИ

ЕРМЫКИН АЛЕКСЕЙ ЛЛЕКСАНДГОВИЧ

РАЗРАБОТКА МЕТОДА ПОСТРОЕНИЯ КОМПЛЕКСА НАГРУЗОЧНОГО ТЕСТИРОВАНИЯ РАСПРЕДЕЛЕННОЙ ИНФОРМАЦИОННОЙ СИСТЕМЫ

Специальность 05.13.13 - Телекоммуникационные системы и компьютерные сети

АВТОРЕФЕРАТ

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

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

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

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

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

доктор технических наук, профессор Алиев Тауфик Измаилович

доктор технических наук, профессор Богатырев Владимир Анатольевич

кандидат технических наук, доцент Безруков Вячеслав Алексеевич

Санкт-Петербургский государственный политехнический университет

Защита состоится «.2л » июня 2005 года, в заседании

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

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

Автореферат диссертации разослан «_;

» мая_2005 г.

Ученый секретарь диссертационного совета

А, / , Поляков Владимир Иванович

iAtbui

пг

3

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

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

Актуальность темы диссертационного исследования. В современных условиях остро необходимо разрешение проблемы практического проведения на1рузочного тестирования (НТ) РИС с использованием или имитацией большого количества (сотен, тысяч и десятков тысяч) пользователей и с максимальной возможной эффективностью НТ. Это обусловлено тем, что:

1)в данное время остается актуальным вопрос о быстрой и качественной разработке РИС, на которую сильно влияет эффективность НТ как одного из этапов процесса разработки;

2) желательно, чтобы РИС соответствовала аналитическим спецификациям и нефункциональным требованиям уже на ранних этапах процесса разработки (ПР) РИС, что целесообразно подтвердить с помощью НТ;

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

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

1) количество требуемых при НТ виртуальных пользователей (ВП) достаточно велико (несколько десятков и выше); целесообразность и эффективность применения нового метода не должны падать при увеличении количества ВП.

2) протокол уровня приложения между клиентской частью (КЧ) и серверной частью (СЧ) РИС (сервером приложений - СП; или кластером СП - КСП) является

достаточно сложным и/или неизвестным и/или закрытым для сторонних разработчиков (например, ТЗ, T3S, RMWIOP, DCOM);

3)клиентская часть РИС имеет графический пользовательский интерфейс (GUI; например, Java Swing API или Windows Forms и Web Forms);

4) в качестве клиентской части РИС используется "толстый" клиент (например, Java или Win32 приложение);

5) имитация реальных условий работы путем использования ВП при НТ является приемлемой или сводимой к удовлетворительной ситуации;

6) желательно проведение НТ на ранних этапах процесса разработки РИС.

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

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

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

1) проанализировать современное состояние и проблемы предметной области рассматриваемого вопроса и известных подходов к НТ, а также выполнить сравнительный анализ современных ТРК, с помощью которых может быть разработан объект исследования;

2) разработать и описать новый метод построения КНТРИС;

3) предложить критерий эффективности процесса НТ РИС по выбранным показателям эффективности и качества;

4) выполнить сравнительный анализ подхода к НТ с применением нового метода и других известных подходов к НТ с использованием предложенного критерия эффективности;

5) предложить модель ВП, позволяющую провести НТ РИС;

6) экспериментально доказать практическую применимость разработанного нового метода построения КНТРИС и модели ВП для реальной РИС, разработанной с помощью ТРК; проиллюстрировать анализ экспериментальных данных, полученных с помощью реализованного КНТРИС;

7) исследовать и экспериментально проверить правомерность подмены определенных реальных условий работы РИС условиями процесса НТ РИС.

Объектом исследования данной работы является РИС, разработанная по технологии распределенных компонент J2EE и включающая в себя в качестве серверной части - кластер серверов приложений WebLogic и СУБД Oracle, а в качестве клиентской части - Java Swing приложение.

Предмет исследования - процесс разработки КНТРИС.

Рабочей гипотезой было принято положение о том, что если выявить и учесть особенности типичных современных РИС и часто встречающиеся условия НТ, то можно разработать, описать, обосновать и использовать на практике новый

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

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

1) метод объектно-ориентированного (00) анализа и проектирования программного обеспечения (ПО);

2) методы теории вычислительных систем (ВС), теории вероятностей, математической статистики;

3) метод разработки сложных ИС (Rational Unified Process - RUP).

В работе были также использованы общие методы научного познания:

1) методы эмпирического исследования: наблюдение, сравнение, измерение, эксперимент;

2) методы, используемые как на эмпирическом, так и на теоретическом уровне исследования: абстрагирование, анализ, синтез;

3) методы теоретического исследования: переход от абстрактного к конкретному, моделирование.

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

1) новый метод построения КНТРИС;

2) предложенные критерии эффективности процесса НТ РИС и результаты проведенного по ним сравнительного анализа подхода, использующего новый метод построения КНТРИС и других подходов к НТ;

3) классификация первичных и вторичных показателей и артефактов РИС, используемых при НТ;

4) модель ВП для НТ РИС.

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

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

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

Внедрение результатов. Результаты диссертационной работы были внедрены в учебный процесс и были использованы компанией ООО "Нева" (Санкт-Петербург) в проекте РИС для организации торговли на Иогех, при проведении НТ в следующем виде:

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

2) метода и процесса построения программной части КНТРИС;

3) высокоуровневого проектирования программной части КНТРИС;

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

5) экспериментальных данных по исследованию РИС.

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

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

1) Четвертая Международная конференция "Приборостроение в экологии и безопасности человека" в СПб ГУАП (Санкт-Петербург, 2004 г.);

2) Первая конференция молодых учёных в СПбГУ ИТМО (Санкт-Петербург, 2004 г.);

3) Первая всероссийская научно-практическая конференция "Опыт практического применения языков и программных систем имитационного моделирования в промышленности и прикладных разработках" (ИММОД 2003) в ФГУП ЦНИИ технологии судостроения (Санкт-Петербург, 2003 г.);

4) XXXIV научная и учебно-методическая конференция в СПбГУ ИТМО (Санкт-Петербург, 2005 г.);

5) постоянно действующий семинар кафедры вычислительной техники (ВТ) "Модели и методы исследования вычислительных систем п сетей" в СПбГУ ИТМО (Санкт-Петербург, 2002,2003,2004 и 2005 гг.).

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

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

Благодарности. Выражается глубокая и искренняя благодарность:

• научному руководителю, заведующему кафедрой ВТ СПбГУ ИТМО, доктору технических наук, профессору Алиеву Тауфику Измайловичу за огромную помощь в работе;

• доцешу кафедры ВТ СПбГУ ИТМО, кандидату технических наук Тимченко Борису Дмитриевичу за ряд полезных критических замечаний;

• старшему преподавателю кафедры ВТ СПбГУ ИТМО Муравьевой-Витковской Людмиле Александровне за советы и рекомендации;

• аспирантам и другим сотрудникам кафедры ВТ СПбГУ ИТМО за внимание и конструктивную критику диссертационной работы на регулярных семинарах кафедры ВТ.

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

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

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

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

СУБД-система правления Ь, базами данных; DBMS-dalabase management system.

СП - сервер приложений; Application Servar.

Сервер приложений

Рис.1. Основные сущности и понятия системы

[узлошо] [кластерные ] ¡Распродо/шнныоро | 11"—;-' ■ I и виошних'си'яомах_|

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

РИС и, в то же время, будет функционировать, не используя GUI КЧ РИС и на любой платформе, где работает РИС. Новый метод базируется на не столь очевидном способе - использовании или создании внутри КЧ РИС подсистемы доступа ко всей необходимой функциональности, минуя уровень GUI. Эта подсистема предоставляет все необходимые функции для имитации КЧ РИС и действий ВП. Далее описывается архитектура и размещение КНТРИС (рис.б). КНТРИС помогает в достижении целей НТ: данные со всех гфитических участков РИС снимаются с помощью специальных наблюдателей (рис.б).

Рис.6. Диаграмма размещения КНТРИС

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

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

Подсистема обработки конфигурационной информации

1 Подсистема стартового меню

Подсистема удаленного управления КНТРИС

Подсистема управления КНТРИС

Подсистема управления КНТРИС через консоль или GUI

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

Подсистема сбора и первичной обработки статистической информации

Подсистема управления в иртуа ль ны м и по ль зо в ателя и и Подсистема упраоления потоками

Подсистема улроолонпя запуском /

завершением / приостановкой работы виртуальных пользователей

Модели виртуальных пользователей

| Подсистема регистрации событий 1—

Подсистема синхронизации мезду различными экземплярами КНТРИС

X

Сервисы

Рис.7. Схема каркаса для ПР КЧ КНТРИС

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

В работе рассматривается формирование метода построения КНТРИС. Метод построения КНТРИС описывается с использованием элементов RUP, диаграмм UML и последовательного описания всех необходимых шагов. На рис.7 представлена главная диаграмма ПР КНТРИС со всеми основными переходами.

Ац,1п _ _______________[нотсиысла продолжать Н^

_ - 1 '■""*----------"'"'ЛНТЗаиаР1ШН°

Анализ

[нужны из ленсния

а рте фактор

анализа]

[все необходимый арто.фэкты полу-юны J

[нужны изменения

^ anmrhaimti aunnms

^ артефактов анализа J

[ все кеобн^шмые артефакты получоны & Новая итерация жизненного циклайНТРИС ]

Проектирований \ _l"YKiï:

V ___________ . --- ... по

[нужнь! необходимые

I нужны

........-I п««ил/мимми изменения

изменения артефакты артафашл

артефактов проектирования

полнены ) проектирован «я 1

Разработка

Л.

[ всэ нбобуодю.шо | артефактьк^^ '—. получены ] (ошибки проокти'рооания j

[ошибки разработхи

(Меиения артефактой юкшровония Г

[нужны изменения артефактов анализа ]

Л

[ цела HT достигнуты )

>

' ( ошибки разработки ] ^

£ыйлиз

[[нужны [ с :е эксперименты

нооОгс дииио а другими арта< шкты значениями полу юны ] параметров ]

I у

Ьегр^зочноо г ' л тестирование РИС }

тестирование

[ нужны измонония артефактов анализа j

■ [все нообходииыо ) артефакты получоны 1

Рис.8. Главная диаграмма деятельностей ПР КНТРИС со всеми переходами Далее каждая из базовых деятельностей ПР представляется в виде составной диаграммы деятельностей, примеры которых приведены на рис.9,10 и 11.

А Начало Тщхгопь~|7рМз^Гдыт ^ ач'аптичвской'Ч —^>йтоли1ичэс.и|1,а>ацифа<оц1<и РИС •?-»* елоцифиищип КНТРИС_

/ ДотольМбоиз^ниои огализ проектной \ Детальное,коркосо, ^ ^ ._слоцяф^к одии Р1ЛСУ ^_ 'Jj се р о и со р н родсиgTpы КНТРИС , j

SiïîfiÔWQ лредмрИГОЛЬНОГО WpMflf(fo4 V .прорктооЯ спецификации КНТРИб /

Изменрнио проектной саоци^ка^ии^ИС;^

.4-

1*фо6>ютсЙ игменаиия Bnpoovmoft

■L спецификации РИС ) __ _ i _

_ ^pÛ^oWMAinHyi^oÎWÔMOflOÏiÛflBn^N ^, с^рцификоЦии'сийгомйКСТРИй-у-Г" " \ -■■ -...... • -, ;,')'^-у'^,

^Ъадагъ приорототыдпя \ достоадх MpMOjiTOO НГ v. '

'' Со'ДО н^п^октКЙ" 1

спецификации КНТРИС

""Т^Соэдамйа-ратооой мТдетГдпя^ -

ч :: HT ■ О'

роботе

С ОЗД 0 ни О' P)t о содаад ' \ J ТрОб^ТСЯ \ пользомтел'я КН7РИС ^измеи'енио

•[(трсбуотся ишенонио_ проектных рощйикй}

~ Раз PîiSStk q пр оцссса, программных ___

*. ербдс^оратастичосхрй обработки донных /

' тестовой модели]

переход х следующей стадии разработки КНТРИС

Рис.9. Диаграмма деятельностей этапа проектирования ПР КНТРИС

и

ЬНЬ*ЧЬ7>~£*----\ I иоттоетовихвармактоо и

__-иаг.он«о он а внтмц»СТОЙ ° —р X ••,

' слоцифямции РИС --—---— -4» вариантов ряс длп НТ

———- . от иодорз Сотое ] "' —--'

|сст* то сто ей о , {всп>

обиЬргкомо| ____¿г-----

} } тиснение аиапнтпчоскояN

споцифиюции РИС у

! "1

иодерароии] шш

изучение оеноохых

" V ТВСТ&СМХ еЭРИбНТОа РИС 7'

и ¿полы Оба ни яТ * споци^&цииРИС _

(повторное ^рпопьаоеокио ] """'"" научение"~

цифихацм

—;

Предварительное изучение шаблона' аналитической спецификации КбТРИС

| / Предварительное изучение «орюев,

1 сервисов » пвдеистон КНТРЙС )

—.. ______ _/^Пропмри*ольиоо изучение шаблона " ч

¿ГСо|домивАР0яеаритольнОго варианта л проектной спецификацИи'КМТРИС ) Г" проокгиор «нотификации КМТРИС ^ --, ---„_ _ ___

1нукны проектнио 1нухны л. Г /И »уч а и но ша'впо н о р>*о в од отёа м}мо90нйй 1 проокт«и<| ____^И^РИО.....

/' Ссидонио яарричноЛ ьйрсии \ | ^ *п!"*". Соадаино оиаяитической ""Ч \ _рл*ваодства пользователя М^ТРИС. ау—. ■ — ■—'--- -сгЮЦифЩйции КНТРИ<5

Ъкяавдв^Г".......

' сПГзНонио лвроокачзяьмей" ""Ч, •*Т»"р/о"к и 9 а ц и о нмо-цЬ лоооо пароход с следующей стадии

\аорсии пп он о гарантии начаствау у. распределение Рвботьг^^^'Ж'раараОотщ КНТРИС

С___________,____ТГ..-1___Т

Рис.10. Диаграмма деятельностей второй стадии этапа анализа ПР КНТРИС

/"YfГyчoкиo проц'осса и'пр^гром¿*»ыхсро-дето

Ч, статистичосоОдйбятки донк^.....

Ч. • НРОбХОДМиЫкДСННЫ* /

/ ©ОроСЯко

, « пояучоН'ныхд(1 ннь!х ___—•*'■' ■- 1 —■ —'■'■—

/' ' Получелмо отчетов

-Г!-— 1 1

Ино л и зГпо'дуч а'н в о ы под о о .

и рокдйондаций- ' У 1®еть мо°бходим оеть о

''Олреяолвнив нообх?Х«ио^П(*''Х ... зквпорииектах) Г ДОЛЬНв.ЙШ11*911СПврИиОЧТОО ' '__...-51/,

^ "1|<1|*..| I*.. I I .1.1........./■ Опплил

ДОЛЬНОЙ ШИХ

(НОТ {но нужно

>бхедли ости О и онять ола

юль нойших ра»иощони сперииоитах]

"Опроаияониа иоьаТ

таетовоЯ посопи

I (план раГм"о1чо^'ня*должон бить изменен ]

'' _"" м "о дй~ф и кочня п лаУо N

_ ро-аыощонмя^ ^

(Щ^ зваорионо Пороход к предыдущей стадии

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

Автором также были разработаны, сформулированы и описаны аддитивный и мультипликативный критерии эффективности для процесса проведения НТ, включающие следующие показатели эффективности: себестоимость проведения НТ (С); время проведения НТ (Т); 3) количество рабочих мест (РМ; К^); 4) количество тестировщиков (Кт).

Аддитивный критерий эффективности с весовыми коэффициентами:

Л *

кт Т + кс С(Т,Ку;Р,Кт) + кццр Кг,т + /:лт Кт ' ^

где кт, кс,к1ХТ,к1:1 - весовые коэффициенты для времени и себестоимости проведения НТ, количества рабочих мест и количества тестировщиков; нужна экспертная оценка для определения их значений; кт, кс, кКГ/Т,к[:г > 0. Мультипликативный критерий эффективности:

я =_1_

Т С (Т, Кпт, Кт ) К]ур Кт ' Формализованная цель - выбор такого подхода к НТ, когда Яг:,>К.и!~>так-Для известных подходов к НТ и для подхода, использующего новый метод КНТРИС, (подход КНТРИС) сформулированы себестоимость и затраты времени.

Подход КНТРИС. Полная себестоимость проведения НТ выражена так (в условных денежных единицах = у.е.):

Сз1ЛГ = Сзи' + К\7г(Тр\уП + + Тцг %/р) +

+ тах(Кт, КРет/)ТиУь + КтТьт V,. + Сдиу где Угеда,Ут - скорость затрат 1) при подготовке РМ (например, з/п

администратора), 2) при подготовке и настройке КНТРИС (например, з/п тестировщика) и 3) при проведении НТ - з/п тестировщика (у.е./месяц = у.е./мес.); эти скорости затрат включают в себя затраты, связанные с заработной платой, с отчислениями на социальное страхование, налоги и т.д.;

Труда - время подготовки одного РМ, инсталляции всего необходимого ПО, кроме КНТРИС, настройка оборудования (мес.);

- количество имитируемых пользователей (ВП), требуемых рабочих мест и необходимое количество тестировщиков при этом (ед.); трзул - время подготовки и настройки КНТРИС на одном РМ (мес.); V, _ скорость затрат при обучении тестировщиков (у.е./мес.); Ти - время обучения работе с КНТРИС одного тестировщика (мес.); Ти - время непосредственного НТ (мес.);

- скорость затрат на использование одного РМ и установленного на нем ПО (аренда аппаратного обеспечения (АО), обслуживание, электричество, ремонт РМит.д.);

Дет/- полная себестоимость и время разработки КНТРИС для конкретной РИС (у.е., мес.);

КРТ/Р, Крет/ - количество человек, занятых 1) при подготовке РМ (например, администраторы), 2) при подготовке и настройке КНТРИС (например, тестировщики, но не обязательно Крда = Кт; ед.);

С^ - дополнительные расходы (у.е.), включающие в себя расходы по содержанию и эксплуатации оборудования, административно-управленческие, по содержанию и эксплуатации помещений и т.д.

Полное время при использовании подхода КНТРИС принимает вид (в мес.):

г

КфЛ

Т^т=тах Тот +ТЦ, рок

^^^о^ЬЕ-^а+Т^+Т^, (4)

где Тдпу - дополнительные временные расходы, не относящиеся к деятельно-стям, осуществляемым одновременно с основными деятельностями (мес.);

- функция, округляющая число N до ближайшего большего целого числа; ее можно выразить через стандартную функцию округления следующим образом: ром(М)==гоипс1(М+0,4(9)), тр,е А'- число.

Подход РНТ. Полная себестоимость проведения НТ выражена так (в у.е.):

'МЬТ - + КвдДТрщр, »Ру/Р Т 1РД1 Урд -г 11Д- тчте;

+ шах (Кт, КГА)ТиУь + КтТ где СгмДтм - себестоимость и время разработки тестовой модели (ТМ) НТ с тестовыми вариантами (ТВ) (у.е);

Т,,А1, УРЛ - время и скорость затрат (например з/и тестировщика) при инсталляции (установке и настройке) КЧ РИС (мес.; у.е./мес.);

К рЛ- количество человек, занятых при инсталляции (установке, настройке) КЧ РИС; например, количество тестировщиков, но не обязательно КРЛ = Кр (ед.).

Полное время при использовании подхода РНТ (в мес.):

тч ^рдар

+ ТРЛ1Урд

(5)

Тми.=тах

+Т1ЯГ+ТА1)у.

(6)

Подход АНТ. Полная себестоимость проведения НТ выражается (в у.е.):

Сдсг — Сц^у + Кул> (Тради ^ру/р + Трьтл1 УрЬТЛ + Т,

+ шах(Кг, Крид )тиу1. + Кт Т„ Ут + Ста + СА

(7)

где , - себестоимость и время приобретения средства НТ стороннего

разработчика (у.е);

ТРЬТЛ1, УР[_ТА - время и скорость затрат (например, з/п тестировщика) при инсталляции (установке и настройке) средства НТ стороннего разработчика и КЧ РИС (мес.; у.е./мес.);

КриГА - количество человек, занятых при инсталляции (установке и настройке) средства НТ стороннего разработчика и КЧ РИС; например, количество тестировщиков, но не обязательно КГ1ТА = Кт (ед.).

Полное время при использовании подхода АНТ (в мес.):

/N

ТЛЬТ=тах|

Т^уЛ+Т^ои'

+ром>

(8)

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

Далее в работе определены основные достоинства и недостатки подхода КНТРИС (табл.1), а также осуществлено сравнение этого подхода, с другими подходами к НТ. Для сравнения разных подходов к НТ были использованы предложенные критерии эффективности и разные наборы весовых коэффициентов для аддитивного критерия эффективности. Для были использованы весовые коэффициенты, заданные экспертным путем. Для остальных случаев были использованы такие наборы весовых коэффициентов, где значимость одного из

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

Таблица 1

_Основные достоинства и кедостатш подхода КНТРИС_

Недостатки Достоинства

1. Нужна разработка специальной, имитирующей пользовательскую нагрузку КЧ системы - КНТРИС -1) большое время подготовки НТ (от полугода) и 2) при небольшом и среднем количестве (до 50) пользователей - высокая себестоимость. 2. Нужно настроить и подготовить КНТРИС перед запуском НТ. 3. Невысокая степень приближенности к реальным условиям -нужно беспокоиться о правомерности подмены реальных условий работы РИС условиями НТ. 4. При задании моделей ВП за гибкость иногда приходится платить сложностью. 1. Принадлежность к операционным система;.! (платформам), под которыми работает КЧ РИС, поскольку КНТРИС расширяет РИС. 2. Сравнительно низкая себестоимость при большом (от 100) и очень большом (свыше 500) количестве пользователей. 3. Сравнительно невысокие требования к количеству тестировщиков, тестовых компьютеров и АО. 4. Эксперимент можно воспроизвести и повторить. 5. Можно управлять НГ, количеством и работой пользователей, временем и сроками НТ; можно использовать ТМ, ТВ и модели ВН. 6. Работающий GUI КЧ РИС не обязателен - можно провести НГ на ранних итерациях цикла ПР РИС. 7. Сложность и закрытость протокола между КЧ и СЧ РИС не влияет на сложность процесса НТ КНТРИС. S. Возможно разрабатывать КНТРИС одновременно с РИС к проводить НТ на первых итерациях цикла ПР РИС. 9. Максимальная гибкость задания моделей ВП; модель ВП задается в терминах языка программирования РИС, не нужно изучать какой-либо дополнительный скрипт или язык программирования.

Таблица 2

Критерий KrrH R-crrS

Показатель К ктр кре *Г ^•¡агр ккг kr *<? ^KWP ккг кг кг. ^KWP ккт кг кщур

% 15 50 5 15 85 5 5 5 5 85 5 5 5 5 85 5 5 5 5 85

Произведены расчеты, показателей и критериев эффективности для множества Куи. В результате построены графики зависимостей критериев эффективности и Лозр4 (рис.12) от показателя Кто . Для лучшей наглядности при построении графиков для и К^з использовано логарифмическое масштабирование для осей Лп„г и Анализируя из графика на рис.12 видно, что уже при КУи & 10 эффективность подхода КНТРИС однозначно выше, чем у других подходов к НТ и монотонно растет с увеличением Кто.

Анализируя из графика на рис.12 видно, что при Кто > 50 эффективность подхода КНТРИС выше, чем у других подходов к НТ и с увеличением Куи тоже монотонно растет. Анализируя 1рафики для критериев эффективности К^г и на рис.12 наблюдается аналогичная ситуация. Только график для на рис.12 несколько выбивается из общей тенденции. Это объясняется тем, что весовые коэффициенты заданы так, что показатель времени проведения НТ в этом случае в 17 раз приоритетнее, чем любой другой из показателей эффективности (табл.2). В то время как подход с использованием КНТРИС даже для К№ = 1000 более требователен к затратам временных ресурсов по сравнению с другими существующими подходами к НТ.

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

строения КНТРИС не является исключением - его применение в рамках подхода к НТ также актуально и эффективно только при определенных основных условиях и 01раничениях, а именно:

• условия НТ предполагают, что количество требуемых ВП (Kw) достаточно велико; и чем больше Кто - тем выше эффективность подхода КНТРИС; при использовании аддитивного критерия эффективности с заданными экспертным путем весовыми коэффициентами, подход КНТРИС при 500 ВП эффективнее подхода РНТ в 4,8 раза и подхода АНТ - в 1,8 раза, а при использовании мультипликативного критерия эффективности, подход КНТРИС уже при 10 ВП эффективнее подхода РНТ в 64 раза и подхода АНТ - в 3 раза, причем с ростом количества ВП эффективность подхода с использованием КНТРИС еще выше.

• протокол уровня приложения между клиентской и серверцой частью РИС является достаточно сложным и/или неизвестным и/или закрытым для сторонних разработчиков (например, ТЗ, T3S, RMI/IIOP, DCOM);

• клиентская часть РИС имеет графический пользовательский интерфейс (GUI; например, Java Swing API или Windows Forms и Web Forms);

• в качестве клиентской части РИС используется "толстый" клиент (например, Java или Win32 приложение);

• имитация реальных условий работы путем использования ВП при НТ является приемлемой или сводимой к удовлетворительной; необходимо проверять степень приближенности условий НТ к условиям реальной работы РИС (7) и анализировать результаты экспериментов;

• желательно проведение НТ на самых ранних этапах IIP РИС;

• себестоимость НТ является критичным и важным показателем и/или на нее наложены жесткие ограничения, в то время, как количество требуемых ВП большое (от нескольких десятков и выше) или планируется быть большим в будущем.

В работе также разработана и описана модель ВП для НТ, которая учитывает запросы нескольких типов. Рассмотрим, как можно задать запросы одного типа. Перечисленные ниже параметры используются для задания связанной с отдачей запросовк-го типа части модели поведения ВП {Мк - модель /с-го запроса или другого действия ВП).

1) Вероятностный параметр периодичности запросов /с-го типа (времени принятия решения в мс): t J>k е [0; м), участвующий в конечном расчете вместе с вероятностным коэффициентом: Rk = Random у [0;l), где Randomк - функция случайной величины, возвращающая случайное число из указанного диапазона; зависит от к, так как для каждого к может быть, например, свое распределение случайной величины (в данном случае рассматривается равномерное распределение случайной величины).

2) Вероятностный параметр времени начала работы каждого ВГ1 для отдачи запросов к-го типа: tM .

3) Постоянный параметр периодичности запросов к-го типа (времени принятия решения в мс): б [0; оо). Здесь учитывается постоянная составляющая времени, которое пользователь тратит на принятие решения до посылки нового запроса текущего к-го типа. Возможны вариации, когда этот параметр используется и для учета других действий клиента (в том числе автоматических).

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

К«

->- ПЗДХОД РНТ •о-, пздсодАНТ '

«адхад сгая&лкссу/см КН1РНС

- гс^-сдРМТ

ММ '

1.4&Э

WS® • 1.ЭД -I.1C0 -МОТ

1,050

1Лсо ;

•о- подход РНТ •о подход АНТ

->> подход с йспольговакисм КНТРИС

14.CW

1.014

- подход РНТ

• ПОДХОД АНТ

• подход с штопьюагяйси КНТРИС

у

W.C00

«со вхоз >,ссо

О,ООО МОО 4X00

/"--^

/ ' ■ , i

. .у. /

-о* подходРКТ- ПОДХОД АНТ подход о испопьзо&окиоы КНТРИС

1 . ! ■/ ;

10.000 подход РКТ..........

О- ПОДХОД АНТ

подход с ислольгосзккси КНТРИС

R.

to.ow

14,003 12.000

moco ао»

С.ОЯ 4.003

1.014

Ь&з Куц 1000

У

\ ID С5 ICO t-Vi K-.-j 1ССО 1 10 И K j КО t<VJ tOCO

Рис.12. Графики зависимостей критериев , Ra.Tl, R,,r2, Ray3, и RKroт Кто

Во время НТ отдается множество запросов к-го типа. Каждый запрос в этой серии обозначим как 7*-й запрос, тогда: jt= 1 —f к, где Jk - общее количество приказов к-го типа за все время НТ. Тогда рабочая формула периода отдачи запросов текущего типа (времени обдумывания и принятия решения до вызова следующей транзакции путем обращения к СП):

(9)

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

С(л)=^,к+^(л)хЧк. _ (10)

Тогда время отдачи следующего 7-го приказа к-го типа, с учетом рабочих формул (9) и (10), определяется следующей рабочей формулой:

(И)

1-1

Как было упомянуто ранее, запросы ВП могут быть нескольких типов: к = 1... К, где К- количество всех типов запросов для текущей модели ВП.

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

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

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

Выводы по третьей главе перечислены ниже.

1)На примере конкретной РИС, разработанной с помощью ТРК12ЕЕ и предназначенной для Богех рынка, экспериментально доказана практическая применимость разработанного оригинального метода построения КНТРИС и предложенной модели ВП. Таким образом, такой подход может быть рекомендован для дальнейшего использования на практике.

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

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

(12)

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

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

2. Разработан и описан новый метод построения КНТРИС, который:

• учитывает состояние и проблемы предметной области и существующих подходов к НТ, особенности и различия в характеристиках современных РИС и ТРК, а также часто встречающиеся условия НТ;

• включает процесс разработки КНТРИС;

• определяет условия применения и ограничения, при которых он актуален и эффективен.

3. Для оценки и сравнения эффективности разных подходов к НТ РИС предложены критерии эффективности для процесса НТ РИС по выбранным показателям эффективности и качества: мультипликативный критерий эффективности и аддитивный критерий эффективности с заданными экспертным путем весовыми коэффициентами.

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

5. Предложен подход к построению модели виртуального пользователя, позволяющей провести эксперимент НТ РИС.

6. На примере конкретной РИС, разработанной с помощью ТРК 12ЕЕ и предназначенной для Рогех рынка, экспериментально доказана практическая применимость разработанного метода построения КНТРИС и предложенной модели виртуального пользователя, в ходе чего:

• разработана аналитическая и проектная спецификация, реализован и протестирован исходный код, а также произведено множество экспериментальных запусков КНТРИС;

• получены опытные данные, выполнен и проиллюстрирован анализ экспериментальных данных, полученных с помощью разработанной и реализованной КНТРИС; выявлены нефункциональные свойства системы.

7. Исследована и экспериментально проверена правомерность подмены определенных реальных условий работы РИС условиями процесса НТ РИС.

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

1. Ермыкин A.A. Имитация стрессовой нагрузки для распределенных информационных систем, разработанных с помощью технологии J2EE // Первая всероссийская научно-практическая конференция "Опыт практического применения языков и программных систем имитационного моделирования в промышленности и прикладных разработках": Сб. докл. - СПб: ФГУП ЦНИИТС, 2003. - С. 95-99. - Режим доступа: http://gpss.rn/immod W019.html. -Загл. с экрана.

2. Ермыкин A.A. Метод анализа и тестирования распределенных информационных систем, построенных с использованием серверов приложений // Современные технологии: Сборник научных статей / Под ред. С.А. Козлова и В.О. Никифорова. СПб: СПбГИТМО (ТУ), 2002. - С. 186-197.

3. Ермыкин A.A. Design of program part of load testing system of distributed information system (Проектирование программной части системы нагрузочного тестирования распределенной информационной системы) // Труды Четвертой Международной конференции "Приборостроение в экологии и безопасности человека" (ПЭБЧ'04) / Под редакцией проф. Сольницева Р.И. - СПб.: СПбГУ ИТМО, 2004.-С. 152-155.

4. Ермыкин A.A., Дергунов А.О. Основные принципы разработки системы стресс-тестирования распределенных информационных систем // Материалы двенадцатой Всероссийской научно-технической конференции (Computer-Based Conference). - Н. Новгород: Межрегиональное Верхне-Волжское отделение Академии технологических наук Российской Федерации (МВВО АТН РФ), 2004.-С. 22.

5'. Ермыкин A.A., Алиев Т.И. Тестирование и анализ распределенных информационных систем, разработанных по технологии J2EE // Научно-технический вестник СПбГИТМО (ТУ). Подготовка научных кадров: методики, технологии, результаты. - СПб: СПбГИТМО (ТУ), 2003. - вып. 10. - С. 62-66.

РНБ Русский фонд

2007-4 9745

Тиражирование и брошюровка выполнены в Центре «Университетские телекоммуникации». Санкт-Петербург, Саблинская ул., 14. Тел. (812)233-46-69 Объем 1 п.л. Тираж 130 экз.

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

ВВЕДЕНИЕ

ГЛАВА 1. АНАЛИЗ СОСТОЯНИЯ ПРЕДМЕТНОЙ ОБЛАСТИ И ПРОБЛЕМЫ НАГРУЗОЧНОГО ТЕСТИРОВАНИЯ РАСПРЕДЕЛЕННЫХ ИНФОРМАЦИОННЫХ СИСТЕМ.

1.1. Принципы технологий распределенных компонент.

1.2. Краткий обзор технологии объекта исследования.

1.3. Сравнительный анализ технологий J2EE и .NET.

1.4. Концепции нагрузочного тестирования.

1.5. Классификация подходов к нагрузочному тестированию.

1.6. Основные достоинства и недостатки известных подходов к нагрузочному тестированию.

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

ГЛАВА 2. РАЗРАБОТКА И ОПИСАНИЕ МЕТОДА ПОСТРОЕНИЯ КОМПЛЕКСА НАГРУЗОЧНОГО ТЕСТИРОВАНИЯ * РАСПРЕДЕЛЕННЫХ ИНФОРМАЦИОННЫХ СИСТЕМ.

2.1. Определение концепций и описание нового метода.

2.2. Формирование архитектуры КНТРИС.

2.3. Формирование метода построения КНТРИС.

2.4. Выбор и обоснование критериев эффективности для процесса проведения НТ.

2.5 Актуальность применения и сравнительный анализ подхода КНТРИС с известными подходами к нагрузочному тестированию.

2.6. Формулировка и описание модели виртуального пользователя для нагрузочного тестирования.

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

ГЛАВА 3. ПРАКТИЧЕСКАЯ РЕАЛИЗАЦИЯ И РЕЗУЛЬТАТЫ ЭКСПЕРИМЕНТАЛЬНОГО ПРИМЕНЕНИЯ МЕТОДА ПОСТРОЕНИЯ КОМПЛЕКСА НАГРУЗОЧНОГО ТЕСТИРОВАНИЯ РАСПРЕДЕЛЕННОЙ ИНФОРМАЦИОННОЙ СИСТЕМЫ

3.1. Экспериментальное ПО и аппаратное обеспечение нагрузочного тестирования.

3.2. Пример описания проектной архитектуры клиентской части КНТРИС.

3.3. Анализ и результаты обработки данных нагрузочного тестирования.

3.4. Эксперимент на правомерность подмены условий.

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

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

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

В настоящее время совершается переход от статичной централизованной структуры информационных систем (ИС) к динамичной гибкой структуре, основанной на системах получения и обработки информации, построенных с помощью современных технологий и распределенных в вычислительных сетях компонент (РК) [2, 104]. К таким технологиям РК (ТРК) относятся, например, J2EE [24], .NET [48, 80, 123] и CORBA [58, 154, 155]. ИС - это система, получающая входные данные, осуществляющая обработку этих данных и/или изменение собственного внутреннего состояния/связей/отношений; выдачу результата, либо изменение своего внешнего состояния/связей/отношений) [45, 46, 63, 79]. Под распределенными ИС (РИС) будем понимать программные комплексы, составные части которых функционируют на разных компьютерах в вычислительной сети. На практике РИС используются все чаще и чаще [27]. Отличительной чертой большинства современных РИС является необходимость обслуживать большое количество клиентов (часто здесь речь идет уже не о сотнях, а о тысячах и десятках тысяч пользователей) [13,124,148].

Актуальность темы диссертационного исследования. В современных условиях остро необходимо разрешение проблемы практического проведения нагрузочного тестирования (НТ) РИС с использованием или имитацией большого количества (сотен, тысяч и десятков тысяч) пользователей и с максимальной возможной эффективностью НТ. Это обусловлено тем, что:

1) сейчас остается актуальным вопрос о быстрой и качественной разработке РИС [48], на которую сильно влияет эффективность НТ как одного из этапов процесса разработки;

2) желательно, чтобы РИС соответствовала аналитическим спецификациям и нефункциональным требованиям уже на ранних этапах процесса разработки (ПР) РИС, что целесообразно подтвердить с помощью НТ [94];

3)учет особенностей и основных различий в характеристиках типичных современных РИС и ТРК, а также часто встречающихся условий НТ позволяет достичь более высокой эффективности процесса НТ [104].

Ценность НТ в процессе разработки любой современной РИС сложно переоценить. НТ должно выявить и доказать конкретные значения нефункциональных свойств, которые отражаются в аналитических спецификациях и требованиях заказчика. В конечном счете, НТ ускоряет достижение конечных целей проектов разработки РИС. Поэтому исследование новых подходов к НТ для решения этой проблемы также чрезвычайно важно и актуально. Это и послужило толчком к разработке нового метода построения комплекса НТ РИС (КНТРИС). Этот оригинальный метод призван эффективно помочь в разрешении поставленной и очень актуальной проблемы. Ко всему прочему, необходимо, чтобы при применении нового метода имитация реальных условий работы была удовлетворительной [95, 97]. При использовании нового метода имеют место следующие ограничения и адекватные условия практического применения:

1) количество требуемых при НТ виртуальных пользователей (ВП) достаточно велико (несколько десятков и выше); целесообразность и эффективность применения нового метода не должны падать при увеличении количества ВП.

2) протокол уровня приложения между клиентской частью (КЧ) и серверной частью (СЧ) РИС (сервером приложений - СП; или кластером СП -КСП) является достаточно сложным и/или неизвестным и/или закрытым для сторонних разработчиков (например, ТЗ, T3S, RMIAIOP, DCOM);

3) клиентская часть РИС имеет графический пользовательский интерфейс (GUI; например, Java Swing API [148] или Windows Forms и Web Forms [124]);

4) в качестве клиентской части РИС используется "толстый" клиент [104] (например, Java или Win32 приложение);

5) имитация реальных условий работы путем использования ВП при НТ является приемлемой или сводимой к удовлетворительной ситуации;

6) желательно проведение НТ на ранних этапах процесса разработки РИС.

Такие ограничения и условия проведения НТ часто встречаются для современных РИС [13, 96, 104], что лишний раз подтверждает необходимость скорейшего решения для практики поставленных в работе задач.

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

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

1) проанализировать современное состояние и проблемы предметной области рассматриваемого вопроса и известных подходов к НТ, а также выполнить сравнительный анализ современных ТРК, с помощью которых может быть разработан объект исследования;

2) разработать и описать новый метод построения КНТРИС;

3) предложить критерий эффективности процесса НТ РИС по выбранным показателям эффективности и качества;

4) выполнить сравнительный анализ подхода к НТ с применением нового метода и других известных подходов к НТ с использованием предложенного критерия эффективности;

5) предложить модель ВП, позволяющую провести НТ РИС;

6) экспериментально доказать практическую применимость разработанного нового метода построения КНТРИС и модели ВП для реальной РИС, разработанной с помощью ТРК; проиллюстрировать анализ экспериментальных данных, полученных с помощью реализованного КНТРИС;

7) исследовать и экспериментально проверить правомерность подмены определенных реальных условий работы РИС условиями процесса НТ РИС.

Объектом исследования данной работы является РИС, разработанная по технологии распределенных компонент J2EE [14, 24, 148] и включающая в себя в качестве серверной части - кластер серверов приложений WebLogic [17, 23] и СУБД Oracle, а в качестве клиентской части - Java Swing [148] приложение.

Предмет исследования — процесс разработки КНТРИС.

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

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

1) метод объектно-ориентированного (ОО) анализа и проектирования программного обеспечения (ПО);

2) методы теории вычислительных систем (ВС), теории вероятностей, математической статистики;

3) метод разработки сложных ИС (RUP [35,115,133]).

В работе были также использованы общие методы научного познания:

1) методы эмпирического исследования: наблюдение, сравнение, измерение, эксперимент;

2) методы, используемые как на эмпирическом, так и на теоретическом уровне исследования: абстрагирование, анализ, синтез;

3) методы теоретического исследования: переход от абстрактного к конкретному, моделирование.

Научная новизна исследования заключаются в следующих основных положениях, которые выносятся на защиту:

1) новый метод построения КНТРИС;

2) предложенные критерии эффективности процесса НТ РИС и результаты проведенного по ним сравнительного анализа подхода, использующего новый метод построения КНТРИС и других подходов к НТ;

3) классификация первичных и вторичных показателей и артефактов РИС, используемых при НТ;

4) модель ВП для НТ РИС.

Методы и средства тестирования РИС нужно разрабатывать с учетом специфики тех ТРК, которые лежат в основе этих систем [104]. Существующее разнообразие типов таких систем настолько велико, что разработать и применить для них универсальный метод проектирования, реализации или НТ даже в рамках одной ТРК является не простой задачей [94, 104]. К настоящему времени создано много различных подходов к тестированию, в том числе использующихся при НТ РИС и их составляющих [40-42, 74, 83, 91, 94, 104, 129, 132, 151]. В то же время, сейчас существует немного подходов к НТ РИС, разработанных для ТРК [12, 41, 61, 98, 151]. В отличие от известных подходов к НТ, в данной диссертационной работе предложен уникальный метод построения специального комплекса НТ. До настоящего времени не было предпринято попыток научно обосновать и описать такой подход к НТ РИС, который удовлетворяет перечисленным выше ограничениям, условиям применения и базируется на методе построения специальной системы, расширяющей исходную РИС и функционирующей, не используя GUI клиентской части РИС и на любой платформе, где работает РИС. В диссертационной работе сделан акцент преимущественно на разработке программной части КНТРИС.

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

Внедрение результатов. Результаты диссертационной работы были использованы компанией ООО "Нева" (Санкт-Петербург) в проекте РИС для организации торговли на Forex, при проведении НТ в следующем виде:

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

2) метода и процесса построения программной части КНТРИС;

3) высокоуровневого проектирования программной части КНТРИС;

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

5) экспериментальных данных по исследованию РИС.

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

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

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

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

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

2. Разработан и описан новый метод построения КНТРИС, который:

• учитывает состояние и проблемы предметной области и существующих подходов к НТ, особенности и различия в характеристиках современных РИС и ТРК, а также часто встречающиеся условия НТ;

• включает процесс разработки КНТРИС;

• определяет условия применения и ограничения, при которых он актуален и эффективен.

3. Для оценки и сравнения эффективности разных подходов к НТ РИС предложены критерии эффективности для процесса НТ РИС по выбранным показателям эффективности и качества: мультипликативный критерий эффективности и аддитивный критерий эффективности с заданными экспертным путем весовыми коэффициентами.

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

5. Предложен подход к построению модели виртуального пользователя, позволяющей провести эксперимент НТ РИС.

6. На примере конкретной РИС, разработанной с помощью ТРК J2EE и предназначенной для Forex рынка, экспериментально доказана практическая применимость разработанного метода построения КНТРИС и предложенной модели виртуального пользователя, в ходе чего:

• разработана аналитическая и проектная спецификация, реализован и протестирован исходный код, а также произведено множество экспериментальных запусков КНТРИС;

• получены опытные данные, выполнен и проиллюстрирован анализ экспериментальных данных, полученных с помощью разработанной и реализованной КНТРИС; выявлены нефункциональные свойства системы.

7. Исследована и экспериментально проверена правомерность подмены определенных реальных условий работы РИС условиями процесса НТ РИС.

Библиография Ермыкин, Алексей Александрович, диссертация по теме Телекоммуникационные системы и компьютерные сети

1. Аарон И. Волш. Основы программирования на Java для Word Wide Web. — Киев: Диалектика, 1996. - 512 с.

2. Ахтырченко К. В. Применение технологии CORBA при построении распределенных информационных систем // СУБД. -1998. — № 1-2.

3. Ахтырченко К. В., Леонтьев В. В. Распределенные объектные технологии в информационных системах // СУБД. 1997. - № 5-6.

4. Боб Тротт. Инструментарий .NET-программиста // Computerworld. 2001. — №5.

5. Богатырев Р. Гадание на кофейной гуще // Мир ПК. 1998. - N° 2.

6. Богатырев P. Java против .NET // Мир ПК. 2001. - № 12.

7. Брукс Ф.П. Как проектируются и создаются программные комплексы. Мифический человеко-месяц. М.: "Наука", 1979. - 150 с.

8. Буч Г. Объектно-ориентированное проектирование с примерами применения.- М.: Конкорд, 1992. 519 с.

9. Васкевич Д. Стратегии Клиент/Сервер. Киев: Диалектика, 1996. — 384 с. Ю.Вендров A.M. CASE-технологии: современные методы и средствапроектирования информационных систем. М: Финансы и статистика, 1998.- 175 с.

10. Boac Дж. Сопровождение компонентных систем // Открытые системы. -1998.- №6.

11. Волков А.А. Тесты ТРС // СУБД. 1995. - № 2.

12. Волков А.А. Про тесты измерения производительности // Computerworld. — 1996.-№5.

13. Выпущена спецификация J2EE 1.3 // Computerworld. 2001. - № 37.

14. Гейтс Б. Дорога в будущее. М.: Русская редакция, 1996. - 312 с.

15. Гома X. UML. Проектирование систем реального времени, параллельных и распределенных приложений: Пер. с англ. М.: ДМК Пресс, 2002. - 704 с.

16. Гоулд Ст. Введение в платформу Java 2, Enterprise Edition, спецификация WebLogic Server от BEA. Режим доступа: http://www.javable.com. - Загл. с экрана.

17. Дастин Э., Рашка Дж., Пол Дж. Автоматизированное тестирование программного обеспечения: Внедрение, управление и эксплуатация / изд. "Лори" / пер. Е. Молодцова, М. Павлов, 2003. 568 с.

18. Джекобсон И. По кирпичику // Computerworld. 1998. - № 42.

19. Джон Хенинг. SPEC CPU2000: определение производительности в новом тысячелетии // Открытые системы. — 2000. № 7-8.

20. Джуди Демокер. Тест TPC-D для систем поддержки принятия решений // Computerworld. 1996. -№ 28.

21. Документация по JBoss и EJB. Режим доступа: http://www.jboss.org. - Загл. с экрана.

22. Документация по WebLogic и J2EE. — Режим доступа: http://e-docs.bea.com. — Загл. с экрана.

23. Документация по J2EE, FAQ, и руководства разработчика / J2EE homepage. -Режим доступа: http://java.sun.com/j2ee/docs.html. — Загл. с экрана.

24. Дубова Н. СОМ или CORBA? Вот в чем вопрос // Открытые системы. — 1999.3.

25. Дэвид А. Марка, Клемент JI. МакГоуэн. SADT, Методология структурного анализа и проектирования: Пер. с англ. // DBMS. 1997. — № 5-6.

26. Иванова Е. Б., Вершилин М. М. Java 2, Enterprise Edition. Технологии проектирования и разработки. СПб.: БХВ-Петербург, 2003. — 1088 с.

27. Кознов Д. В. Визуальное моделирование компонентного программного обеспечения: Дисс. канд. физ-мат. наук. СПб, 2000.

28. Крачтен Филипп, Введение в Rational Unified Process. 2-е изд. / Пер. с англ. -М.: Изд. дом "Вильяме", 2002. 240 с. .

29. Куцевич Надежда. Компонентные технологии в системах промышленной автоматизации // Открытые системы. 1999. - № 4.

30. Марк Леон, Эд Скэннел. Java идет в Web-службы / Computerworld. 2001. -№25.

31. Материалы III международной конференции. Развитие и применение открытых систем. М., 1996.

32. Мэтт Бергер. JDeveloper: курсом на J2EE // Computerworld. 2001. - № 34.

33. Новые возможности Rational PurifyPlus v2002 for Windows / Interface Ltd. -Режим доступа: http://www.interface.ru. Загл. с экрана.

34. Новичков А. Средства тестирования от компании Rational // Компьютерпресс. 2001. - № 2. — Режим доступа: http://www.interface.ru. - Загл. с экрана.

35. Новичков А. Эффективная разработка программного обеспечения с использованием технологий и инструментов компании RATIONAL. — Interface Ltd. — Режим доступа: http://www.interface.ru. Загл. с экрана.

36. Парфенов В.В. Проектирование и реализация программного обеспечения встроенных систем с использованием объектно-базированного метода: Дисс. канд. физ-мат. наук. СПб, 1995.

37. Поттосин И.В. Программная инженерия: содержание, мнения и тенденции. // Программирование. 1997. -№ 4. - С. 26-37.

38. Расторгуев С. П. Философия информационной войны. — М.: Московский психолого-социальный институт, 2003. 496 с.

39. Расторгуев С. П. Информационная война. — М.: Радио и связь, 1998. — 416 с.

40. Ресурсы Microsoft Windows 2000 Server / Распределенные системы. Книга 1: Пер. с англ. М.: Русская редакция, 2001. - 864 с.

41. Рихтер Д. Программирование на платформе MS .NET Framework. -М.: Русская редакция, 2002. 486 с.

42. Рэмбо Дж. Мир усложняется, приложения тоже // Computerworld. - 1999. -№21.

43. Сайт Совета по производительности обработки транзакций. — Режим доступа: http://www.tpc.org. Загл. с экрана.

44. Сайт ВЕА — application infrastructure software company. — Режим доступа: http://e-docs.bea.com. — Загл. с экрана.

45. Сайт NotesBench Consortium. Режим доступа: http://www.notesbench.org. — Загл. с экрана.

46. Сайт Standard Performance Evaluation Corporation. Режим доступа: http://www.spec.org. - Загл. с экрана.

47. Сайт Volano LLC. Салливан Т. Серверы приложений на базе Java завоевывают рынок // Computerworld. — 2001. — № 5.

48. Салливан Т. Sun создает рынок вокруг J2EE / Computerworld. 2001. — № 4.

49. Семихатов С. Технологии WWW, Corba и Java в построении распределенных объектных систем. 1999. - Режим доступа: http://www.javapower.ru. — Загл. с экрана.

50. Соммервилл И. Инженерия программного обеспечения, 6-е издание. : Пер. с англ. — М. : Издательский дом "Вильяме", 2002. 624 с.

51. Сухомлин В. А. Методологический базис открытых систем // Открытые системы. 1996. - № 4.

52. Тестирование приложений J2EE с помощью Rational PurifyPlus (Часть 1) / Горан Бегик (Goran Begic), Rational Software Переведено БНТП по заказу Interface Ltd. — Режим доступа: http://www.interface.ru. — Загл. с экрана.

53. Технический Аудит Сети. Что такое нагрузочное тестирование? — Режим доступа: http://www.prolan.ru. — Загл. с экрана.

54. Томпсон К. Программные средства защиты информации. М., 1993. — 117 с.

55. Уон У., Рикути М. Microsoft прокладывает новый курс в обход Java. — Режим доступа: http://www.zdnet.ru. Загл. с экрана.

56. Фаулер М. Рефакторинг: улучшение существующего кода. пер. с англ. — СПб: Символ-Плюс, 2003.-432 с.

57. Французов Д. Оценка производительности вычислительных систем // Открытые системы. 1996. — № 2.

58. Хенинг Дж. SPEC CPU2000: определение производительности в новом тысячелетии // Открытые системы. — 2000. — № 7-8.

59. Хэйес Ф. Distributed Component Object Model. — Режим доступа: http://www.infocity.kiev.ua. Загл. с экрана.

60. Бизнес. М.:ЮНИТИ, 2000. - 356 с. 72.Эккерсон В. В поисках лучшей архитектуры клиент-сервер // Сети. - 1995. — №4.

61. Экстремальное тестирование. — Режим доступа: http://www.xprogramming.ru.- Загл. с экрана.

62. Электронный учебник по статистике. — М.: StatSoft, Inc., 2001. — Режим доступа: http://www.statsoft.ru. Загл. с экрана.

63. Яворски Дж., Перроун Пол Дж. Система безопасности Java. Руководство разработчика. : Пер. с англ.: Уч.пос. -М.: Вильяме, 2001. 528 с.

64. Ягер Т. Будущее ОС Windows // Computerworld. 2001. - № 15-16.

65. Ягер Т. Только не называйте это Java // Computerworld. 2002. — № 4.

66. Ярочкин В.И.,Шевцова Т.А. Словарь терминов и определений по безопасности и защите информации. — М.: Ось-98,1996. — 48 с.

67. А great thrashing of .NET. — Режим доступа: http://joel.editthispage.com. — Загл. с экрана.

68. Application Server Comparison Matrix. — Режим доступа: http://www.flashline.com. Загл. с экрана.

69. Application Server Directory. — Режим доступа: http://www.techmetrix.com. — Загл. с экрана.

70. Automated Testing: A Silver Bullet? // Rational Software, 2001. Режим доступа: http://www.therationaledge.com. — Загл. с экрана.

71. Black U. ATM: Foundation for BroadBand Networks // Prentice Hall, 1995. 4261. P

72. Booch G. Object-Oriented Analysis And Design With Application // The Benjamin, Cummings Publishing Company Inc, 2nd edition, 1994. 589 p.

73. Booch G. The Visual Modeling of Softwarte Architecture for the Enterprise. // ROSE architect, 1998. Vol. 1. № 1. P. 18-25.

74. Brett McLaughlin. Building JavaTM Enterprise Applications Volume I: Architecture // O'Reilly, 1st edition, 2002. 318 p.

75. Bruce Eckel. Thinking in Patterns with Java / President, MindView, Inc. — Режим доступа: http://www.topica.com. — Загл. с экрана.

76. Chad Vawter, Ed Roman. J2EE vs. Microsoft.NET. A comparison of building XML-based web services. Sun Microsystems, Inc., 2001. Режим доступа: http://www.theserverside.com. — Загл. с экрана.

77. Coad P., Yourdon E. Object-Oriented Analysis / Englewood Cliffs, NJ : Prentice Hall.-2nd edition, 1991.

78. Compaq строит мост между .Net и Java / Computerworld. — 2002. — № 8.

79. David A. Sykes, John D. McGregor, Practical Guide to Testing Object-Oriented Software / Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 2001. 3931. P

80. DeMarco T. Structured Analysis and System Specification / Englewood Cliffs, NJ : Yourdon Press, 1979.

81. Dimitra Giannakopoulou, Gary T. Leavens, Murali Sitaraman et al. SAVCBS 2001 Proceedings Specification and Verification of Component-Based Systems / Workshop at OOPSLA 2001. Department of Computer Science, October 2001. 136 p.

82. ECperf Specification. — Режим доступа: http://java.sun.com/j2ee/ecperf/. Загл. с экрана.

83. Ed Roman. J2EE Project Management Critical measures when beginning a J2EE project. — Режим доступа: http://www.theserverside.com. — Загл. с экрана.

84. Elfriede Dustin, Jeff Rashka, John Paul, Automated Software Testing: Introduction, Management, and Performance / Addison-Wesley, 1999. 568 p.

85. Enterprise: Java Pet Store Sample Application. — Режим доступа: http://java.sun.com/blueprints/code/. — Загл. с экрана.98.eXtreme Programming (ХР). Режим доступа: http://www.extremeprogramming.org. — Загл. с экрана.

86. Farley J. Picking a Winner: .NET vs. J2EE / Software Development Magazine, March 2001.

87. Flodin A. Full power with SDL and UML. Telelogic Signals, 1998. № 2.

88. For SAS, Java Development to Remain Key, April 2002. Режим доступа: http://www.eweek.com. - Загл. с экрана.

89. Fundamentals of RMI Short Course. Режим доступа: http://developer.java.sun.com. - Загл. с экрана.

90. Gopalan Suresh Raj. Web Cornucopia. An Oasis for the parched Enterprise Component Engineer/Developer. — Режим доступа: http://www.execpc.com/~gopalan/. Загл. с экрана.

91. Guide to Building Client/Server Solutions / Digital Equipment Corporation, January 1993.

92. Jacobson I. Object-Oriented Software Engineering. ASM press, 1992. 528 p.

93. Jeri Edwards. 3-Tier Client/Server At Work / John Wiley&Sons Inc, 1997.1311. P

94. Jim Farley. Microsoft .NET vs. J2EE: How Do They Stack Up? August 2000. -Режим доступа: http://java.oreilly.com. — Загл. с экрана.

95. Jim Farley. Picking a Winner: .NET vs. J2EE, March 2001. Режим доступа: http://www.sdmagazine.com. - Загл. с экрана.

96. Kohler W., Shah, A., Raab, F. Overview of ТРС Benchmark С: The Order-Entry Benchmark, technical report / Transaction Processing Performance Council, 1991.

97. Kruchten P. The Rational Unified Process: An Introduction / Addison-Wesley, 1998. 255 p.

98. Leutenegger, S., Dias, D. A Modelling Study of the TPC-C Benchmark / Proceedings of 1993 ACM SIGMOD International Conference on Management of Data, May 1993.

99. LoadRunner Specification. Режим доступа: http://www-heva.mercuryinteractive.com. - Загл. с экрана.

100. Madhu Siddalingaiah. Perspectives on technology. An Analysis of .NET. -Режим доступа: http://java.sun.com. Загл. с экрана.

101. Mark Cade, Simon Roberts, Sun Certified Enterprise Architect for J2EE Technology Study Guide. — Режим доступа: http://java.sun.com. — Загл. с экрана.

102. Mark Johnson, A beginner's guide to Enterprise JavaBeans // JavaWorld, 1998.

103. Meyer B. .NET is Coming / IEEE Computer. Open Systems, August 2001. № 11.

104. Microsoft пытается вызвать интерес разработчиков Java-приложений к .Net., 2001. Режим доступа: http://www.osp.ru. - Загл. с экрана.

105. Microsoft. .NET / официальный сайт Microsoft. — Режим доступа: http://www.microsoft.com. Загл. с экрана.

106. Microsoft homepage / официальный сайт Microsoft. — Режим доступа: http://www.microsoft.com. Загл. с экрана.

107. Microsoft. .NET Strategy Pushes the Web Application Development Envelope. Network World. January/February 2002. Режим доступа: http://www.mercuryinteractive.ru. — Загл. с экрана.

108. Microsoft. DCOM: A Business Perspective / официальный сайт Microsoft, 1997. Режим доступа: http://www.microsoft.com. - Загл. с экрана.

109. Morgan Kaufmann. The Benchmark Handbook for Database and Transaction Processing Systems / Editor Gray J., 1991.

110. Mumtaz Ahmad, Amit Gore. Comparison between EJB and MTS. — Режим доступа: http://wiki.cs.uiuc.edu. — Загл. с экрана.

111. Nayeem Islam. Distributed Objects Methodologies for Customizing Systems Software / IEEE Computer Society Press, 1996.129.0MG Unified modeling language specification (draft). Version 1.3R, 1999. -Режим доступа: http://www.rational.com. Загл. с экрана.

112. Page-Jones М. The Practical Guide to Structured Systems Design / Englewood Cliffs, NJ : Yourdon Press. 2nd edition, 1988.

113. Philippe Collet. On Contract Monitoring for the Verification of ComponentBased Systems / Objects and Software Components Group.

114. Rational Software Corporation homepage / официальный сайт Rational. -Режим доступа: http://www.rational.com. — Загл. с экрана.

115. Richard Hoffman, Anthony Frey, Mike Lee. Growing Up: Java Servers Offer More. Test brings out the best application servers, November 1999. — Режим доступа: http://www.informationweek.com. Загл. с экрана.

116. Richard Hoffman. Award: Java Application Server. Award: Middleware Technology. Режим доступа: http://www.networkcomputing.com. - Загл. с экрана.

117. Robert Orfali, Dan Harkey, Jeri Edwards. The Essential Distributed Object / John Wiley&Sons, Inc., 1996.

118. Roger Sessions. Java 2 Enterprise Edition (J2EE) versus the .NET Platform. Two Visions for eBusiness / Object Watch, March 2001.

119. Rumbaugh J., Blaha M., W.Premerlani et al. Object-Oriented Modeling and Design / Englewood Cliffs, New Jenersy : Prentice Hall, 1991. 500 p.

120. Rumbaugh J., Jacobson I., Booch G. The Unified Modeling Language Reference Manual / Addison-Wesley, 1999.550 p.

121. Scarlet Pruitt. Gartner: don't overspend on application server tech / IDG News Service, 2001. Режим доступа: http://www.nwfusion.com. — Загл. с экрана.

122. Scott W. Ambler, Larry L. Constantine. The Unified Process Construction Phase Best Practices for Completing the Unified Process // Masters collection from Software Development. - USA, Lawrence: CMP Books, 2000. 257 p.

123. Selic В., Gullekson G., Ward P.T. Real-Time Object-Oriented Modeling. John Wiley & Sons. Inc., 1994. 525 p.

124. Seth Grimes. Object Relational Reality Check. DataBase Programming & Design OnLine / Alta Plana Corp., July 1998. Режим доступа: http://www.dbpg.com. -Загл. с экрана.

125. Shlaer S., Mellor S.J. Object-oriented systems analysis : modeling world in data / Englewood Cliffs, NJ: Yourdon Press, 1988.

126. Specification and Verification of Component-Based Systems. — Режим доступа: http://www.cs.iastate.edu/~leavens/. — Загл. с экрана.

127. Stankovic J. A.: Misconceptions About Real-Time Computing: A Serious Problem for next-generation Systems. IEEE Computer, October 1988. № 10.

128. Sun Microsystems, Enterprise JavaBeans Specification version 1.0 / официальный сайт Sun Microsystems, 1998. — Режим доступа: http://java.sun.com. Загл. с экрана.

129. Sun Microsystems homepage / официальный сайт Sun Microsystems. Режим доступа: http://java.sun.com. — Загл. с экрана.

130. Sun: Java может смешать карты Microsoft .Net. — Режим доступа: http://www.mediacenter.ru. Загл. с экрана.

131. Ted Lewis. Object-oriented application Frameworks / Manning Publications Co., 1995.

132. Test Smarter, Finish Faster. Rational Robot. Режим доступа: http://www-scf.usc.edu/~csci577/. — Загл. с экрана.

133. The SOAP specification. — Режим доступа: http://www.w3.org. — Загл. с экрана.

134. The Web Services Description Language (WSDL) 1.1 specification. Режим доступа: http://www.w3.org. - Загл. с экрана.

135. Thomas J. Mowbray, Phd Ron Zahavi. The Essential CORBA: System Integration Using Distributed Object, 1995.

136. Thomas J. Mowbray, Raphael C. Malveau CORBA Design Pattern / John Wiley&Sons Inc., 1997.

137. Windows DNA Architecture Design: A Scalable, Highly Available Business Object Architecture / официальный сайт Microsoft. — Режим доступа: http://www.microsoft.com. — Загл. с экрана.