Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Исследование и реализация методов построения корпоративных программных систем для поддержки изменяющихся бизнес-процессов Ярных Андрей Валерьевич

Исследование и реализация методов построения корпоративных программных систем для поддержки изменяющихся бизнес-процессов
<
Исследование и реализация методов построения корпоративных программных систем для поддержки изменяющихся бизнес-процессов Исследование и реализация методов построения корпоративных программных систем для поддержки изменяющихся бизнес-процессов Исследование и реализация методов построения корпоративных программных систем для поддержки изменяющихся бизнес-процессов Исследование и реализация методов построения корпоративных программных систем для поддержки изменяющихся бизнес-процессов Исследование и реализация методов построения корпоративных программных систем для поддержки изменяющихся бизнес-процессов Исследование и реализация методов построения корпоративных программных систем для поддержки изменяющихся бизнес-процессов Исследование и реализация методов построения корпоративных программных систем для поддержки изменяющихся бизнес-процессов Исследование и реализация методов построения корпоративных программных систем для поддержки изменяющихся бизнес-процессов Исследование и реализация методов построения корпоративных программных систем для поддержки изменяющихся бизнес-процессов Исследование и реализация методов построения корпоративных программных систем для поддержки изменяющихся бизнес-процессов Исследование и реализация методов построения корпоративных программных систем для поддержки изменяющихся бизнес-процессов Исследование и реализация методов построения корпоративных программных систем для поддержки изменяющихся бизнес-процессов
>

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Ярных Андрей Валерьевич. Исследование и реализация методов построения корпоративных программных систем для поддержки изменяющихся бизнес-процессов : диссертация ... кандидата технических наук : 05.13.11.- Москва, 2006.- 186 с.: ил. РГБ ОД, 61 07-5/145

Содержание к диссертации

Введение

Глава 1. Обзор современных архитектур и технологий разработки корпоративных информационных систем 12

1.1 Классификация корпоративных информационных систем 13

1.2 Анализ методов и средств защиты информации кис 20

1.3 Анализ современных технологий и разработка обобщенной архитектуры корпоративной информационной системы 27

1.4 Постановка задачи разработки корпоративной информационной системы поддержки брокерской деятельности 39

Выводы 43

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

2.1 Выбор модели жизненного цикла программного обеспечения 45

2.2 Методика анализа и моделирования предметной области 54

2.3 Функциональное моделирование системы 65

2.4 Анализ аппарата конечных автоматов для проектирования и реализации корпоративных информационных систем 69

2.5 Практические аспекты применения аппарата конечных автоматов для проектирования интерфейса пользователя и схемы взаимодействия компонентов системы 79

Выводы 84

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

3.1 Решение задачи управления доступом путем применения аппарата конечных автоматов 86

3.2 Применение "автоматного" подхода для реализации функции регистрации действий пользователей системы 89

3.3 Разработка блока централизованного управления "автоматными" объектами 91

3.4 Методика создания шаблонов архитектуры подсистем на основе модели управления рисками 98

Выводы 103

Глава 4. Проектирование системы автоматизации брокерской деятельности инвестиционного банка 105

4.1 Описание предметной области 105

4.2 Моделирование требований по "автоматной" методике 115

4.3 Выбор технологических решений разрабатываемой системы 118

Выводы 126

Глава 5. Реализация компонентов интегрированной системы поддержки брокерской деятельности 128

5.1 Состав и структура разработанного программного комплекса 128

5.2 Интерфейсы программного комплекса автоматизации брокерской деятельности с внешними системами 139

Выводы 145

Заключение 146

Список литературы

Введение к работе

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

Актуальность работы. В настоящее время процесс информатизации затрагивает практически все сферы человеческой деятельности, такие как: наука, управление, образование, производство, коммерция и т.д. В условиях современного технологического прогресса и возрастающей конкуренции эффективные средства управления, основой которых является широкое использование информационных технологий (ИТ), являются жизненно необходимым фактором. Предприятия, изменяющие или адаптирующие свои процессы под условия постоянно увеличивающихся скорости и объемов распространения информации, приобретают существенные преимущества по сравнению с конкурентами. Данный способ может подразумевать, в том числе, существенную реструктуризацию предприятия, изменение принципов его работы с тем, чтобы электронная инфраструктура стала неотъемлемой частью бизнес-процесса. В связи с этим возрастает количество проектов в области корпоративного программного обеспечения (ПО). Современные проекты этой сферы характеризуются возрастающими требованиями к срокам разработки, масштабам и сложности программных комплексов, а также частыми изменениями автоматизируемых процессов. Наряду с этим, известно, что разработка и внедрение корпоративных информационных систем (КИС) связана, как правило, с серьезными рисками [5, 26, 27, 33, 39, 48, 51, 54]. Наиболее непредсказуемым фактором в области создания информационных систем является человеческий. Одна из основных специфик разработок в информационной сфере - это уникальность каждого проекта [10]. В связи с этим, в современной индустрии информационных технологий (ИТ-индустрии) чрезвычайно важны системный подход, использование новых технологий и методологий, позволяющих повысить эффективность разработки и использования разрабатываемых ИС, и наиболее полно удовлетворять запросам пользователей. На основании выше изложенных положений следует, что важ-

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

Состояние проблемы. Основными особенностями современного подхода к построению информационных систем являются:

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

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

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

В настоящее время разработаны ряд методологий и программных средств моделирования бизнес-процессов и компонентов информационных систем [5, 24, 34, 36, 39 ,48, 81, 82, 87, 89, 90, 100, 103, 104, 107]. Их спецификой является широта охвата предметных областей и ориентированность на создание ПО любого назначения, связанная с коммерческими интересами компаний, разрабатывающих эти методологии и соответствующие CASE-средства. Это приводит к сложности их применения в оригинальном виде, а также значительным временным и финансовым затратам при адаптации коммерческих методологий для реализации конкретных проектов области корпоративного программного обеспечения. Характерной особенностью таких проектов являются: сжатые сроки реализации всех этапов; проведение анализа предметной области путем интервью с бизнес-пользователями, не являющимися ИТ-специалистами; частые изменения и добавления требований к системе; частые корректировки бизнес-процессов. Существует необходимость понимания моделей непосредственно заказчиком программного обеспечения.

С другой стороны, имеют место разнообразные подходы к проектированию архитектуры программного обеспечения, технологии распределения объектов

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

Объект исследования. Корпоративные информационные системы оперативной обработки данных, поддерживающие сложные, изменяющиеся бизнес-процессы.

Предмет исследования. Повышение эффективности проектирования, разработки и сопровождения класса систем, являющегося объектом исследования диссертации.

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

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

  1. исследование и классификация различных типов информационных систем;

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

  3. анализ методов и средств защиты данных, используемых в информационных системах;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ритмы легли в основу стратегии развития информационной инфраструктуры компании и последующих разработок. Экономия на внедрении информационной системы по оценкам специалистов компании составила порядка 100 000 долларов США. Экономический эффект от эксплуатации системы составляет не менее 100 000 долларов США в год.

Апробация результатов работы. Результаты работы докладывались и обсуждались на конференциях "Научная сессия МИФИ-2002" (Москва, 2002), международной научно-практической конференции "Румянцевские чтения. Экономика, государство и общество в 21-м веке" (Москва 2004), "Научная сессия МИФИ-2005"(Москва 2005).

Публикации. По теме диссертации опубликовано 6 работ.

Структура и объем диссертации. Диссертация состоит из введения, 5 глав, заключения и приложений. Общий объем работы 157 страниц, 48 рисунков, 22 таблиц, список литературы из 115 наименований.

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

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

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

11 ложенном во второй главе "автоматном" подходе. Представлены результаты реализации предложенного метода построения КИС в виде разработанного блока централизованного управления "автоматными" объектами. Разработана методика создания базовой архитектуры системы на основе модели управления рисками.

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

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

Анализ методов и средств защиты информации кис

Основными задачами корпоративной ИС являются поддержка динамической информационной модели предметной области и обеспечение решения на основе информационной модели задач управленческого, исследовательского, конструкторского и иного характера [48]. Для решения этих задач корпоративная ИС должна обладать следующими функциями [1, 8, 7, 10, 48]:

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

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

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

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

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

при помощи технологии pull (тянуть), где инициатором процесса предоставления информации является пользователь. Средством реализации данного метода являются пользовательские интерфейсы. Если пользователем ИС является не человек, а компонент программного обеспечения, взаимодействие осуществляется с помощью интерфейсов прикладного программирования (Application Programming Interface, API);

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

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

Анализ аппарата конечных автоматов для проектирования и реализации корпоративных информационных систем

Как было изложено выше, одной из важнейших задач КИС является обеспечение безопасности сбора, передачи, хранения и доступа к информации. Для осуществления этой задачи в КИС должна существовать система защиты информации (СЗИ). СЗИ - это совокупность органов и/или исполнителей, используемая ими техника защиты информации, а также объекты защиты, организованные и функционирующие по правилам, установленным соответствующими правовыми, организационно-распорядительными и нормативными документами по защите информации [14]. Хотя создание СЗИ и не является основным предметом исследования диссертации, из-за важности данного вопроса для информационных систем исследуемого класса, следует рассмотреть средства и методы защиты информации КИС.

Безопасность информации (информационная безопасность) - это состояние информации, информационных ресурсов и информационных систем, при котором с требуемой вероятностью обеспечивается защита информации (данных) от утечки, хищения, утраты, несанкционированного уничтожения, искажения, модификации (подделки), копирования, блокирования и т.п. [45]

Защищенная система должна обладать следующими свойствами [17]: выполнение всех необходимых функций, что и аналогичная незащищенная система, т.е. функциональная работоспособность системы не должна ухудшаться при защите системы; противостояние атакам, действующим в среде работы системы; соответствие требованиям и критериям стандартов информационной безопасности, принятых в организации - заказчике системы.

Защита информации от несанкционированного доступа является составной частью общей задачи обеспечения безопасности информации. Система защиты информации от НСД условно состоит из следующих подсистем: управления доступом; регистрации и учета; криптографической; обеспечения целостности [15]. Далее представлен анализ методов и средств защиты информационных систем от НСД.

Идентификация и аутентификация Идентификация - это присвоение субъектам и объектам доступа идентификатора и (или) сравнение предъявляемого идентификатора с перечнем присвоенных идентификаторов.

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

Пароль представляет собой идентификатор субъекта доступа, который является его (субъекта) секретом [16].

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

Аутентификация симметричным шифрованием

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

Ключ (криптографический ключ) - это конкретное секретное состояние некоторых параметров алгоритма криптографического преобразования данных, обеспечивающее выбор одного преобразования из совокупности всевозможных для данного алгоритма преобразований [12]. Цифровые сертификаты

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

Формат сертификата определен в рекомендациях ITU 1997 года Х.509 и рекомендациях IETF 1999 года КАС 2459 [РКІХ]. В настоящее время основным принятым форматом является формат версии 3, позволяющий определить дополнения, с помощью которых реализуется определенная политика безопасности в системе.

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

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

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

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

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

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

Простейшим случаем при требованиях к модели авторизации в системе является разграничение прав доступа на уровне функций системы. Реализация такой модели достаточно очевидна, и, как правило, решается путем использования средств базового программного обеспечения. В двухуровневой архитектуре - разделение доступа к объектам базы данных средствами СУБД; в многоуровневой архитектуре - разделение доступа к объектам системы и их методам средствами серверов приложений или промежуточного программного обеспечения. Однако, зачастую, существует требование разграничить права доступа не только на уровне функций системы, но и в зависимости от состояния обрабатываемого объекта. Это предлагается называть параметрической моделью управления доступом, т.е. авторизация на выполнение каких либо действий по отношению к объекту системы в зависимости от его параметров. Примером может являться следующее требование: "Разрешить изменять приказ до стадии авторизации всем сотрудникам отдела, а авторизованный приказ, - только руководящему составу". В данном случае очевидно, что требуется создание двух ролей: "младший сотрудник" и "руководитель". При применении стандартного подхода для реализации данной задачи в программном коде требуется применение конструкций if (in role..)hen else. Это возможно, если система проста и содержит один - два таких объекта, которые могут находиться лишь в двух -трех состояниях. Как только количество таких объектов и их состояний увеличивается, программный код становится неподдерживаемым, а также снижается производительность системы из-за огромного количества проверок при каждом действии. Альтернативным и, с точки зрения автора, наиболее эффективным методом, является применение для данной цели принципов аппарата теории автоматов. Предлагаемый метод решения проблемы авторизации базируется на методике построения корпоративных систем, предложенной в главе 2. Основная идея заключается в том, что так как каждое действие по отношению к программному объекту - это переход в новое состояние, инициируемый подачей входного сигнала, с помощью таблиц, аналогичных таблицам переходов и операций на дугах можно организовать настройки механизма управления доступом. Исполнение функций по реализации настроек в контексте выполнения программного кода предполагается осуществлять универсальным способом в централизованном блоке управления.

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

Роль в системе идентифицируется кодом Г;. Пользователь (субъект) в системе определяется кодом Hi. Отношение субъекта к ролям N:M (многие ко многим). Определение доступа ролей к определенному переходу определяется следующей таблицей:

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

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

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

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

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

Как правило, существует два уровня регистрируемых событий: 1) действия, произведенные по отношению к объекту, например "создание", "авторизация" и т.д.;

Моделирование требований по "автоматной" методике

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

1. Проверка статуса клиента. При вводе приказа статус клиента должен быть "активный".

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

3. Проверка исполненного количества приказа. При вводе записи об исполнении должно выполняться следующее условие: [Текущее QuantityExecuted] + [Quantity вводимой записи] = [QuantityRe-quested].

4. Публикация статуса текущего состояния приказов.

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

5. Правила пересчета позиции при изменении деталей приказа. Позиция должна пересчитываться по определенной формуле при изменении следующих параметров приказа, если на него есть неудаленные записи об исполнении: [Buy/Sell], [Portfolio], [Security]

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

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

По результатам выше описанных этапов моделирования был создан прототип пользовательского интерфейса для работы с объектами "приказ" и "запись об исполнении", доведенный в процессе разработки до формы, представленной на рис. 4.9. На каждом статусе, при закрытом диалоге с деталями для пользователя будет доступен ограниченный набор кнопок соответствующий существующим переходам объекта в данном статусе (состоянии). -ІРІХІ

После моделирования бизнес-процессов, составления списка требований и прототипов пользовательских интерфейсов, были составлены "автоматные" модели каждого объекта, в соответствии с методикой, предложенной в параграфе 3 главы 2, которые в дальнейшем использовались в качестве руководства для написания программного кода и настройки системы. На рис. 4.10 представлен граф переходов для объекта "приказ". Состояния кодированы числовыми обозначениями, расшифровка которых представлена в таблице 4.3. На дугах обозначены коды переходов. Названия кодов переходов будут полностью соот ветствовать названию функциональных кнопок пользовательского интерфейса за исключением тех, которые начинаются со слова Auto. Данные переходы ини циируются системой.

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

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

Как отмечалось ранее выбор технологии, а так же архитектурного шаблона разрабатываемой системы является одним из основных этапов создания программных комплексов. Особенностью разрабатываемой системы является ее событийная ориентированность, необходимость оповещения различных групп пользователей о возникновении определенных событий в системе, а также предоставление им информации в реальном масштабе времени. Примером такой операции является пересчет позиций. Событийная ориентированность системы позволяет пользователям вести мобильную интероперабельную обработку данных. В данном контексте методы обработки бизнес-логики выступают в качестве закона разворачивания событий от момента времени t к моменту времени t+І. Компоненты системы в зависимости от активируемых частей программного кода изменяют свое состояние с M(t) на M(t+1).

Ввиду значительного объема требований к функциональности системы, к интеграции с другими программными комплексами, а также проведенного анализа технологий, было решено остановиться на многоуровневой архитектуре распределенного типа. В результате последующих исследований и практической реализации она была доведена до модели представленной во 2-м параграфе 1-й главы. На момент начала проекта по созданию системы автоматизации брокерской деятельности существовало две наиболее популярных и широко принятых сообществом разработчиков платформы, предполагающих многоуровневые распределенные архитектуры. Это технологии: Java 2 Enterprise Edition [97, 98, 112, 115], стандарты которой разрабатываются и принимаются консорциумом компаний, в состав которого входят бо лее 100 организаций, среди которых такие организации как Sun Microsystems, IBM, Oracle, Bea Systems. .Net [102] - технология компании Microsoft, в основе которой лежат стандар ты Web сервисов.

В качестве СУБД было решено выбрать Microsoft SQL Server 2000 в силу следующих обстоятельств: наличие большого опыта по разработке и сопровождению баз данных на данной платформе у команды разработчиков, задействованных в проекте; данная СУБД служит источником данных для всех остальных программных систем компании; по результатам исследования тестов ТРС [114] данная СУБД не уступает продуктам других производителей; простота в настройке и обслуживании; возможность доступа к данным из любых программных платформ путем применения драйверов доступа, обменивающихся по протоколу TCP/IP; масштабируемость; надежность хранения данных; минимальные сроки подготовки приложений (система обеспечивает максимальную скорость проектирования, создания и развертывания приложений); наличие средств аналитической обработки данных OLAP [27] и подготовки нерегламентированной отчетности; наличие большого количества дополнительных функций; низкая стоимость;

Похожие диссертации на Исследование и реализация методов построения корпоративных программных систем для поддержки изменяющихся бизнес-процессов