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

кандидата технических наук
Вершинин, Максим Михайлович
город
Санкт-Петербург
год
2006
специальность ВАК РФ
05.13.11
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Разработка графического подхода к проектированию корпоративных приложений на основе технологий Java 2, Enterprise Edition»

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

РЕФЕРАТ

СОДЕРЖАНИЕ

ВВЕДЕНИЕ

ГЛАВА 1. КРАТКОЕ ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ И

ПОСТАНОВКА ЗАДАЧИ

1.1. Процесс проектирования программных систем

1.1.1. Корпоративные приложения

1.1.2. Этапы проектирования

1.1.3. Требования к программному продукту

1.1.4. Моделирование сложных программных систем

1.1.5. Проектирование по образцам

1.2. Архитектура, управляемая моделью

1.3. Unified Modeling Language

1.3.1. Краткая характеристика UML

1.3.2. Основные элементы UML

1.3.3. Диаграмма классов

1.3.4. Диаграмма компонентов

1.3.5. Диаграмма размещения

1.4. Технологии Java 2, Enterprise Edition

1.4.1. Краткий обзор технологий J2EE

1.4.2. Многоуровневая архитектура J2EE

1.4.3. Размещение приложения J2EE на сервере

1.4.4. Проблемы практического использования J2EE

1.5. Постановка задачи

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

2.1. Основные идеи, положенные в основу методики автоматизированного проектирования

2.2. Процесс разработки корпоративных приложений с использованием визуализации

2.3. Абстрактная модель проектируемой системы

2.4. Определение метамодели

2.4.1. Мета-метамодель, метамодель и модель

2.4.2. Метамодель Model Driven Architecture

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

3.1. Спецификации визуальных элементов для разработки Web-приложений

3.1.1. Назначение диаграммы Web Module

3.1.2. Сценарии, реализуемые диаграммой Web Module

3.1.3. Детализация визуальных элементов

3.1.4. Работа с диаграммой Web Module

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

3.2.1. Введение в технологию EJB

3.2.2. Назначение диаграммы EJB Module

3.2.3. Сценарии, реализуемые диаграммой EJB Module

3.2.4. Детализация визуальных элементов

3.2.5. Работа с диаграммой EJB Module 106 3.4. Диаграмма Enterprise Module

3.4.1. Назначение диаграммы

3.4.2. Сценарии, реализуемые диаграммой Enterprise Module 109 3.4.2. Интерфейс пользователя 109 3.4. Обобщенная диаграмма размещения корпоративного приложения

ГЛАВА 4. ПРАКТИЧЕСКАЯ РЕАЛИЗАЦИЯ ВИЗУАЛЬНОЙ

МЕТОДИКИ АВТОМАТИЗИРОВАННОГО ПРОЕКТИРОВАНИЯ

4.1. Абстрактный программный интерфейс приложения

4.1.1. Source Code Model

4.1.2. Deployment Model

4.1.3. Модуль Plug-ins

4.1.4. Описание абстрактного программного интерфейса

4.2. Программный интерфейс для модулей EJB

4.3. Программный интерфейс для Web-приложений

4.4. Программный интерфейс для корпоративного приложения

4.5. Проектирование корпоративных приложений с помощью графического подхода

4.6. Разработка образцов

ГЛАВА 5. ОЦЕНКА ЭФФЕКТИВНОСТИ ИСПОЛЬЗОВАНИЯ ГРАФИЧЕСКОГО ПОДХОДА ДЛЯ АВТОМАТИЗАЦИИ ПРОЕКТИРОВАНИЯ КОРПОРАТИВНЫХ ПРИЛОЖЕНИЙ 160 ЗАКЛЮЧЕНИЕ 166 СПИСОК СОКРАЩЕНИЙ 169 СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

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

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

Технологии Java 2, Enterprise Edition (J2EE) объединяют наиболее современные подходы и решения, непосредственно предназначенные для разработки распределенных программных систем уровня предприятия. J2EE представляет собой комплекс взаимодействующих Java-технологий, базирующихся на спецификациях фирмы "Sun Microsystems".

Стандарты J2EE характеризуют следующие важные преимущества:

- независимость от платформы, связанная с основными свойствами языка Java ([23, 24]);

- высокая технологичность, связанная с широким использованием компонентных технологий;

- переносимость и расширяемость;

- поддержка многопользовательского режима;

- возможность интеграции с другими платформами и информационными системами;

- обеспечение надежной защиты информации.

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

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

Из публикаций, посвященных общим вопросам объектно-ориентированного моделирования, проектированию с использованием образцов и описанию технологий J2EE, следует особо отметить работы Г.Буча и Д.Рамбо ([2, 3, 30, 78, 79]), И.Якобсона ([47, 48]), П.Коада и Э.Йордана ([32, 33, 34, 35]), М.Фаулера и К.Скотта ([25]), П.Перроуна и В.Кришны ([22]), И.Грэхэма ([41]), Э.Гаммы ([39]) и Э.Романа ([77]). В них излагаются базовые понятия, архитектура J2EE и детали технологий, но проблемы практического освоения этих технологий, их реального применения и потенциальные возможности автоматизации проектных процедур рассматриваются недостаточно.

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

На наш взгляд, эффективным решением указанных проблем является сочетание графического подхода к моделированию программных систем с компонентными технологиями J2EE. В настоящее время активно развивается направление, связанное с архитектурой, управляющей проектом (Model Driven Architecture, MDA). Этот подход позволяет получать глобальные проектные решения, применимые для любой среды разработки и любого конкретного языка программирования.

Общеизвестно, что наиболее удобным и легким для восприятия средством представления любой системы является ее графическое отображение (визуальное моделирование). Стремление к унификации графических элементов, используемых для проектирования, привело к тому, что международной рабочей группой по развитию стандартов объектного программирования (Object Management Group, OMG [74]) в 1997 г. был принят стандарт унифицированного языка моделирования (Unified Modeling Language, UML). Этот язык является основой автоматизированного проектирования и создания программ (Computer-Aided Software Engineering, CASE). Язык UML непрерывно развивается, и в настоящее время действующим является стандарт UML 2.0. Создание среды разработки, позволяющей представлять модель проектируемого корпоративного приложения в графическом виде, следовало вести в рамках общепринятого стандарта UML.

Стандарты UML определяют визуальные элементы, отображающие компоненты программы и связи между ними. Диаграммы UML могут быть использованы как для графического представления модели проектируемой системы, так и для генерации программного кода. Это привело к возникновению интегрированных сред разработки программных продуктов, ярким представителем которых является Borland@RTogether@R ControlCenter@R х.х. Главное назначение CASE-средств — проектирование больших и сложных программных систем, поэтому вполне естественным является стремление сочетать возможности MDA и UML с мощным потенциалом платформы J2EE.

На сегодняшний день существует не так много продуктов, поддерживающих разработку Д2ЕЕ-приложений, из которых только один (WebSphere Studio Application Developer, WSAD) поддерживает визуальное моделирование с помощью UML. Как видно из Таблицы, ни один из существующих продуктов не поддерживает моделирование корпоративных приложений, поэтому на предприятиях используется несколько продуктов: одни - для описания системы, другие - для ее разработки. Это усложняет процесс проектирования и требует дополнительных затрат для синхронизации при малейших изменениях в системе.

Таблица

Сравнение инструментальных средств разработки

Показатель Idea JBuilder WSAD

Интегрированная среда разработки (Integrated Development Environment, IDE) + + +

12ЕЕ-разработка + + +

Размещение на сервере + + +

Визуальное моделирование — — +

12ЕЕ-моделирование - — —

Возможность расширения + - —

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

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

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

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

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

Для достижения этих целей в работе ставились и решались следующие задачи:

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

- создание новых визуальных элементов для представления приложений J2EE и их отдельных компонентов (в полном соответствии со стандартом UML) с целью автоматизации процесса проектирования;

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

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

- создание визуальных шаблонов, реализующих Д2ЕЕ-образцы, и разработка методики их использования в процессе проектирования корпоративных приложений;

- автоматизация процесса размещения приложений на различных серверах с учетом их специфики;

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

В качестве методов исследования в диссертации используются принципы объектно-ориентированного проектирования, системный анализ, теория графов, принципы технологичности, простоты разработки и повторного использования. Применяются архитектура и технологии платформы J2EE, Model Driven Architecture (MDA), Model Driven Development (MDD), стандарты Unified Modeling Language (UML), CASE-средства, а также Constructive Cost Model II (COCOMO II) для оценки эффективности процесса разработки программного продукта.

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

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

2. Разработка новых визуальных элементов производилась в строгом соответствии с требованиями общепринятого стандарта UML, зарегистрированного группой OMG.

3. Осуществлялась постоянная проверка полноты разработанных визуальных элементов, их адекватности набору компонентов J2EE и соответствия спецификациям фирмы-разработчика платформы J2EE "Sun Microsystems".

4. Образцы, реализованные автором, разрабатывались в контакте с ведущим специалистом Джоном Круппи, под руководством которого создавались 12ЕЕ-шаблоны в "Sun Microsystems". Производились экспертные оценки визуальных шаблонов.

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

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

7. Для оценки достоверности полученных результатов привлекались независимые эксперты. Получены положительные отзывы крупных предприятий, таких, как SAP ("Systems, Applications, and Products in Data Processing") и RBS ("Royal Bank of Scotland").

Научная новизна работы состоит в следующем:

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

- Разработана новая абстрактная модель корпоративного приложения и соответствующий абстрактный программный интерфейс (Application programming Interface, API).

- Предложен метод построения моделей и программных интерфейсов, поддерживающих конкретные компонентные технологии на основе абстрактной модели и абстрактного программного интерфейса.

- Предложена методика автоматизации основных проектных процедур: моделирования, кодирования и размещение приложений на сервере. В рамках UML разработаны спецификации новых .12ЕЕ-диаграмм, в том числе обобщенная диаграмма размещения.

- Для поддержки типовых проектных решений разработаны новые визуальные элементы, реализующие .12ЕЕ-образцы.

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

1. Расширяемая абстрактная модель для представления иерархически-связанных элементов и абстрактный программный интерфейс (Application programming Interface, API) к ней, а также метод построения конкретных моделей и конкретных программных интерфейсов для проектирования корпоративных приложений, поддерживающих выбранную компонентную технологию (J2EE, .NET, CORBA и пр.), на основе абстрактной модели и абстрактного API.

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

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

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

Практическая зпачилюсть работы заключается в следующем:

1. Предложенный метод визуального проектирования корпоративных приложений на основе технологии J2EE доведен до практической реализации в реальных продуктах (Borland@R Together@R ControlCentergR 6.x; BorlandgR JBuilder; BorlandgR Together@R ControlCenter@R, Eclipse Edition), которые уже длительное время используются разработчиками.

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

3. Использование данной методики позволяет сократить затраты на проектирование и существенно снизить их при внесении каких либо изменений в технические требования на разрабатываемую систему, а также на начальном этапе проектирования (по экспериментальным оценкам от 25% до 50%, в зависимости от объема и сложности проекта).

Основные результаты диссертационной работы обсуждались в рамках научно-практических конференций СПбГПУ (2001г. - 2004г.), на 2-й международной научно-практической конференции «Информационные технологии в моделировании и управлении» (Санкт-Петербург, 2000г.), на конференции «Веа User's Conference» (Даллас, США, 2002г), на семинаре для отдела маркетинга фирмы «Togethersoft» (Рэйли, США, 2002г.), на семинаре для отдела поддержки фирмы «Togethersoft» (Рэйли, США, 2003г.), на конференции «Технологии Microsoft в теории и практике программирования» (Санкт-Петербург, 2004г.), на 5-й международной научно-технической конференции «Компьютерное моделирование 2004» (Санкт-Петербург, 2004г.), на семинаре «Royal Bank of Scotland» (Лондон, Великобритания, 2005г.) и на научно-техническом семинаре профессорско-преподавательского состава кафедры «Информационные и управляющие системы» СПбГПУ (Санкт-Петербург, 2005г.).

Автором проводились также теоретические и практические занятия для разработчиков интеграционной команды фирмы «Togethersoft» (Рэйли, США, 2002г.), для разработчиков фирмы «Borland» (Прага, Чехия, 2004г.), для студентов СПбГПУ (Санкт-Петербург, 2004г.).

Результаты диссертационной работы использовались при разработке диаграмм и компонентов J2EE, вошедших в интегральную среду разработки линии Borland@RTogether@R ControlCenter@R.

Методика автоматизированной разработки корпоративных приложений внедрена в ООО «Интеллект-ФТК» при разработке учебно-методического комплекса. Практическое использование представляемых на защиту результатов подтверждается соответствующими актами о внедрении. По материалам диссертации опубликовано 6 работ.

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

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

ЗАКЛЮЧЕНИЕ

Подведем итоги, того, что было сделано в ходе работы над диссертацией.

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

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

Были сделаны примерные оценки экономии времени на проектирование и, соответственно, уменьшения себестоимости разработки. Так, себестоимость проектирования уменьшается приблизительно на 25% -50% (в зависимости от сложности проектируемой системы), так как автоматизированное генерирование исходного кода и дескрипторов существенно сокращает трудозатраты разработчиков. Проектирование на основе визуальной модели упрощает процесс тестирования готового программного продукта. Кроме того, значительно уменьшаются затраты на поддержку и размещение приложений на серверах. Так, например, используя диаграмму размещения, можно размещать как отдельные приложения на конкретных узлах (серверах), так и всю систему в целом. При этом скорость каждого размещения оказывается приблизительно вдвое выше скорости размещения при традиционном подходе. Учитывая многократную повторяемость размещения приложения на сервере в процессе разработки, можно говорить о существенной экономии временных затрат на эту процедуру.

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

Кратко сформулируем полученные результаты:

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

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

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

4. На основе абстрактного программного интерфейса разработан конкретный программный интерфейс, поддерживающий технологии J2EE.

5. Разработаны и реализованы образцы, предназначенные для решения типовых задач проектирования корпоративных компонентов.

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

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

8. Предложенный метод визуального проектирования корпоративных приложений на основе технологии J2EE реализован в конкретных программных продуктах (Borland@R Together@R ControlCenter@R 6.x; Borland@R JBuilder; Borland@RTogether@RControlCenter@R, Eclipse Edition).

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

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

1. А.В.Антонов. Системный анализ. — М., Высшая школа, 2006.

2. Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на С++. 2-е изд. — М., Бином, СПб., Невский диалект, 1999.

3. Буч Г., Рамбо Д., Джекобсон А. Язык UML: Руководство пользователя. — М., ДМК, 2000.

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

5. Вирт Н. Систематическое программирование: Введение. — М., Мир, 1977.

6. Гарольд Э. JavaBeans. — М., Лори, 1999.

7. Гейн К., Сарсон Т. Системный структурный анализ: средства и методы. — М., Эйтекс, 1992.

8. Дистель Р. Теория графов. — Новосибирск, Издательство Института математики, 2002, 336 с.

9. Зиглер К. Методы проектирования программных систем. — М., Мир, 1985.

10. Калянов Г.Н. CASE структурный системный анализ (автоматизация и применение). — М., Лори, 1996.

11. Калянов Г.Н. CASE технологии проектирования программного обеспечения // Кибернетика и системный анализ, N.5, 1993, С. 152-164.

12. Коуд П., Норт Д., Мейфилд М. Объектные модели: Стратегии, шаблоны и приложения. М., Лори, 1999.

13. Липаев В.В. Управление разработкой программных комплексов. — М., Финансы и статистика, 1993.

14. Оре О. Графы и их применение. — М., КомКнига, 2006.

15. Оре О. Теория графов. — М., Наука, 1980.

16. Перроун П., Кришна В. Создание корпоративных систем на основе Java2 Enterprise Edition: Руководство пользователя. — М., Вильяме, 2001.

17. Савитч У. Язык Java. Курс программирования. — М., Вильяме, 2002.

18. Смирнов Н. Java 2 Enterprise: Основы практической разработки распределенных приложений. — М., КУДИЦ-ОБРАЗ, 2002.

19. Фаулер М., Скотт К. UML в кратком изложении: Применение стандартного языка объектного моделирования. — М., Мир, 1999.

20. Харари Ф. Теория графов. — М., Мир, 1973.

21. Alexander С., Ishikawa S., Silverstein М., Jacobson М., Fiksdahl-King I., Angel S. A Pattern Language. — New York: Oxford University Press, 1977.

22. Alur D, Crupi J., Malks D. Core J2EE Patterns. — USA, Prentice Hall, 2001.

23. Boehm В., Clark В., Horowitz E., Westland C., others. The COCOMO 2.0 Software Cost Estimation Model. http://www.rspa.com/reflib/Estimation.html.

24. Buch G. Object-oriented Analysis and Design with Applications. — USA, Benjamin/Cummings, 1994.

25. Carmichael A., Halywood D. Better Software Faster. The Coad Series — USA, Prentice Hall, 2002.

26. Coad P., Yordan E. Object-Oriented Analysis. — Englewood Cliffs, New Jersey, Yordon Press, 1991.

27. Coad P., Yordan E. Object-Oriented Design.— Englewood Cliffs, New Jersey, Yourdon Press, 1991.

28. Coad P., Nicola J. Object-Oriented Programming. — USA, Yourdon Press, 1993.

29. Coad P., North D., Mayfield M. Object Models: Strategies, Patterns and Applications. — USA, Prentice Hall, 1995.

30. COCOMOII Model Definition Manual. http://sunset.usc.edu/research/COCOMOII/Docs/modelman.pdf#search=: ,COCOMO%20II%20Model%20Definition%20Manual\

31. Enterprise JavaBeans Specification 2.1. http://java.sun.eom/products/ejb/docs.html#specs.

32. Gamma, E., Helm R., Johnson R., Vlissides J. Design Patterns: Abstraction and Reuse of Object-Oriented Design. — ECOOP'93, Karlsruhe, Germany, August 1993.

33. Gamma E., Helm R., Johnson R., Vlissides, J. Design Patterns: Elements of Reusable Object-Oriented Software. — USA, Addison-Wesley, 1995.

34. Goldberg A., Rubin K. Succeeding With Objects: Decision Frameworks for Project Management. — USA, Addison-Wesley, 1995.

35. Graham I. Object-Oriented Methods. — USA, Addison-Wesley, 2001.

36. Hall M. Core Servlets and JavaServer Pages. — USA, Prentice Hall, 2000.

37. J2EE 1.4 SDK and Sun Java System Application Server Platform Edition Specification, http://java.sun.eom/j2ee/download.html#platformspec.

38. J2EE Connector Specification 1.5. http://java.sun.com/j2ee/connector/download.html.

39. J2EE Deployment API Specification 1.1. http://java.sun.com/j2ee/tools/deployment/index.html.

40. J2EE Management Specification 1.0. http://java.sun.com/j2ee/tools/management/index.jsp.

41. Jacobson I. Object-Oriented Software Engineering: A Use Case Driven Approach. — USA, Addison-Wesley, 1995.

42. Jacobson I., Ericsson M., Jacobson A. The Object Advantage: Business Process Reengineering with Object Technology Software Engineering.— USA, Addison-Wesley, 1995.

43. Java API for XML Processing (JAXP). http://java.sun.com/xml/downloads/jaxp.html.

44. Java IDL API. http://java.sun.eom/j2se/l.3/docs/guide/idl/index.html.

45. Java Authentication and Authorization Service (JAAS)in Java 2, Standard Edition (J2SE) 1.4. http://java.sun.com/j2se/L3/docs/guide/idl/index.html.

46. Java Authorization Contract for Containers 1.0. http://java.sun.com/j2ee/javaacc/index.html.

47. Java Message Service Specification 1.1. http://java.sun.com/products/jms/docs.html.

48. Java Naming and Directory Interface Specification 1.2.1. http://java.sun.com/products/jndi/L2/javadoc/.

49. Java™ Remote Method Invocation Specification. http://java.sun.eom/j2se/l.3/docs/guide/rmi/spec/rmi-title.html.

50. Java Servlet Specification 2.4. http://java.sun.eom/products/servlet/download.html#specs.

51. Java Transaction API Specification 1.0.IB. http://java.sun.com/products/jta/index.html.

52. Java Transaction Service Specification 1.0. http://java.sun.com/products/jts/index.html.

53. JavaBeans Activation Framework Specification 1.0.2. http://java.sun.com/beans/glasgow/jaf.html.

54. JDBC Specifications, 3.0, 2.1, and Optional Package API (2.0). http://java.sun.com/products/jdbc/download.html.

55. JavaMail API Specification 1.3. http://java.sun.c0m/pr0ducts/javamail/index.html#spec.

56. JavaServer Pages Specification 2.0. http://java.sun.eom/products/jsp/download.html#specs.

57. JavaServer Pages Standard Tag Library, http ://j ava. sun. com/products/j sp/j stl/index.j sp.

58. Jazayeri M., Ran A., Linden F. Van der. Software Architecture for Product Families: Principles and Practice. — USA, Addison-Wesley Longman, 2000.

59. Kalakota R., Robinson M. e-Business: Roadmap for Success.— USA, Addison-Wesley, 2000.

60. Kassem N. Designing Enterprise Applications with Java 2 Platform, Enterprise Edition. — USA: Addison-Wesley, 2000.

61. Lewis G., Barber S., Siegel E. Programming with Java IDL. — USA, John Willey & Sons, Inc., 1998.

62. Marinescu F. EJB Design Patterns. — USA, John Wiley & Sons, Inc., 2002.

63. Martin J., Odell J. Object-Oriented Methods: A Foundation. — USA, Prentice Hall, 1994.

64. Martin J., Odell J. Object-Oriented Methods: Pragmatic Considerations. — USA, Prentice Hall, 1996.

65. Meta Object Facility (MOF) Specification. http://www.omg.org/docs/formal/00-04-03.pdf.

66. Meyer B. Object-Oriented Software Construction. — USA, Prentice Hall, 1988.

67. NASA Cost Estimating Web Site. http://wwwl.jsc.nasa.gov/bu2/COCOMO.html

68. Object Management Group, http://www.omg.org/memberservices/index.htm.

69. OMG Model Driven Architecture, http://www.omg.org/mda/.

70. Professional Java Server Programming. —USA, Wrox Press Ltd., 2000.

71. Roman E., Ambler S., Jewell T. Mastering Enterprise JavaBeans. Second Edition. — USA, Johnson & Sons, Inc., 2001.

72. Rumbaugh J., Blaha M., Premerlani W., Eddy F., Lorenzen W. Object-Oriented Modeling and Design. — USA, Prentice Hall, 1991.

73. Rumbaugh J. OMT Insights. — USA, SIGS Books, 1996.

74. Singh I., Stearns В., Johnson M. Designing Enterprise Applications with the J2EE Platform, Second Edition. — USA: Addison-Wesley, 2002.

75. Unified Modeling Language, http://www.omg.org/technology/documents/ modelingspeccatalog.htm#UML.1. Филиал корпорации

76. БОРЛАНД Лабе, Инк.» 194044, Санкт-Петербург Финляндский пр., д.4А тел. +7(812)718-6718 факс +7(812)718-6745

77. Санкт-Петербург 24 июня 2005 г.

78. Следует особо отметить, что разработанные Вершишишым М.М. методики автоматизированного проектирования позволили сократить время разработки не менее, чем на 25%.

79. Генеральный директ* ООО «Интеллект-Ф1