WWW.DISSERS.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

   Добро пожаловать!

Pages:     || 2 |
-- [ Страница 1 ] --

Научно – исследовательский центр электронной вычислительной техники (НИЦЭВТ)

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

ТУДЕР ИЛЬЯ ЮРЬЕВИЧ КОЛЛЕКТИВНОЕ МОДЕЛИРОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ БОЛЬШОЙ РАЗМЕРНОСТИ Специальность

05.13.11 – математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей Диссертация на соискание ученой степени кандидата технических наук

Научный консультант: доктор технических наук Б.А.Позин Москва 2002 2 ОГЛАВЛЕНИЕ ОГЛАВЛЕНИЕ.......................................................................................................... 2 ВВЕДЕНИЕ................................................................................................................. 3 ГЛАВА 1. МЕТОДЫ МОДЕЛИРОВАНИЯ ПРЕДМЕТНОЙ ОБЛАСТИ............................ 8 1.1. ОСНОВНЫЕ ПОДХОДЫ И СТАНДАРТЫ ПРОГРАММНОЙ ИНЖЕНЕРИИ.................. 8 1.2. МОДЕЛИРОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ............................................................. 11 1.3. СОВРЕМЕННЫЕ МЕТОДЫ МОДЕЛИРОВАНИЯ И ИХ НЕДОСТАТКИ........................ 22 1.3.1 Структурные методы........................................................................................... 23 1.3.2 Объектно-ориентированные методы............................................................. 28 1.3.3 Недостатки существующих методов............................................................. 32 1.4. ВЫВОДЫ......................................................................................................................... 36 ГЛАВА 2. ТЕХНОЛОГИЯ КОЛЛЕКТИВНОГО МОДЕЛИРОВАНИЯ ПРЕДМЕТНОЙ ОБЛАСТИ..................................................................................................................... 38 2.1. 2.2. 2.3. 2.4. 2.5. СТРУКТУРА ТЕХНОЛОГИИ........................................................................................... 38 КРИТЕРИЙ ГЛУБИНЫ ДЕТАЛИЗАЦИИ ФУНКЦИОНАЛЬНОЙ МОДЕЛИ................... 45 ВЕРИФИКАЦИЯ МОДЕЛИ ПРЕДМЕТНОЙ ОБЛАСТИ.................................................. 49 МЕТОД ВЫЯВЛЕНИЯ ОБЩЕСИСТЕМНЫХ СУЩНОСТЕЙ ПРЕДМЕТНОЙ ВЫВОДЫ.......................................................................................................................... ОБЛАСТИ...................................................................................................................................... ГЛАВА 3. ЭКСПЕРИМЕНТАЛЬНЫЕ ИССЛЕДОВАНИЯ БАНКОВСКОЙ ПРЕДМЕТНОЙ ОБЛАСТИ..................................................................................................................... 69 3.1 3.2 ЗАДАЧИ ЭКСПЕРИМЕНТАЛЬНЫХ ИССЛЕДОВАНИЙ................................................. 69 ИССЛЕДОВАНИЕ ХАРАКТЕРИСТИК СТАБИЛЬНОСТИ И РАЗМЕРНОСТИ БАНКОВСКОЙ ПРЕДМЕТНОЙ ОБЛАСТИ.................................................................................. 73 3.3 ИССЛЕДОВАНИЕ ХАРАКТЕРИСТИК СЦЕПЛЕНИЯ БИЗНЕС-ПРОЦЕССОВ ПО ИНФОРМАЦИОННЫМ СУЩНОСТЯМ....................................................................................... 79 3.4 ОБЛАСТЬ ПРИМЕНЕНИЯ ТЕХНОЛОГИИ..................................................................... 3. ВЫВОДЫ.......................................................................................................................... ГЛАВА 4. ПРИМЕНЕНИЕ ТЕХНОЛОГИИ В ПРОГРАММНЫХ ПРОЕКТАХ................ 92 4.1 РАЗРАБОТКА АБС «ПРАВЛЕНИЕ».................................................................................. 92 4.1.1 Функциональное моделирование предметной области........................ 97 4.1.2 Моделирование данных предметной области......................................... 99 4.1.3 Применение результатов моделирования предметной области на следующих этапах проекта.......................................................................................... 103 4.2 ДРУГИЕ ПРОЕКТЫ............................................................................................................. 110 4.3 ВЫВОДЫ............................................................................................................................. 112 ЗАКЛЮЧЕНИЕ..................................................................................................... 114 СПИСОК ЛИТЕРАТУРЫ............................................................................................. 116 ПЕРЕЧЕНЬ СОКРАЩЕНИЙ........................................................................................ ПРИЛОЖЕНИЕ 1. ДОКУМЕНТЫ О ВНЕДРЕНИИ РЕЗУЛЬТАТОВ.............................. 126 ВВЕДЕНИЕ Актуальность темы. Рост сложности объектов автоматизации, каковыми являются предприятия различных сфер деятельности, а также переход от частичной автоматизации к комплексным особенности интегрированным конкретного решениям, учитывающим специфические предприятия, приводит к увеличению количества и сложности проектов по комплексной автоматизации предприятий. При разработке сложных программных систем необходимо снизить зависимость качества результатов от таких субъективных факторов, как квалификация исполнителей, их опыт, понизить риск неуспешного завершения проекта. Для этого необходимы промышленные технологические методы разработки программных систем, позволяющие с самых первых этапов проекта подключать большое количество специалистов средней квалификации и получать предсказуемые во времени и качественные результаты. Из всех видов обеспечения, составляющих комплексное решение для автоматизируемого предприятия, наиболее зависимыми от персональных особенностей объекта автоматизации являются информационное (ИО) и программное обеспечение (ПО). На сегодняшний день существует острая потребность в научно обоснованных технологических методах разработки программных систем, позволяющих планировать параметры программного проекта и гарантировать и характер необходимое объектов методов качество а результатов. потребность Большая в их размерность итерационный сложность автоматизации предопределяет разработки, промышленном характере означает необходимость глубокой формализации технологии выполнения всех этапов проекта. Существующие сегодня методы, безусловно, решают задачу разработки программного обеспечения, однако, не обладают в достаточной степени промышленными свойствами.

Высокая начиная с сложность объектов этапов, автоматизации заключающихся и в требования по минимизации времени разработки определяют коллективный характер работ, самых ранних обследовании, моделировании и анализе предметной области. При этом коллективная работа имеет свои особенности, которые должны находить отражение в специальных мероприятиях по поддержанию логической целостности результатов на протяжении всего проекта. Таким образом, создание научно обоснованных технологических методов коллективной разработки программных систем является актуальной научнотехнической проблемой. В рамках данной проблемы существует множество задач, относящихся к различным этапам жизненного цикла ПО. Однако этап анализа, цель которого выявление, классификация и формализация информации обо всех аспектах предметной области, влияющих на свойства конечного результата, в соответствии с ISO 12207, является начальным этапом процесса “Разработка” и оказывает определяющее влияние на качество результатов всего проекта. Отсюда следует особая важность задач, относящихся к данному этапу. Таким образом, в рамках названной выше проблемы первоочередными являются задачи, направленные на формализацию начального этапа жизненного цикла программного проекта – анализа предметной области, важнейшей составной частью которого является моделирование предметной области. При этом целью моделирования является построение формализованных моделей, адекватно отражающих предметную область в соответствии с целями и задачами проекта. Работы в данной области ведутся в течение нескольких десятков лет силами многих российских и зарубежных ученых: C.Gane, T.Sarson, T.DeMarco, E.Yourdon, J.Rumbaugh, G.Booch, I.Jacobson, В.В.Липаев, А.А.Штрик, Б.А.Позин, Г.Н.Калянов, Е.З.Зиндер, А.М.Вендров и др. Вместе с тем, существующие на сегодняшний день методологии и технологии разработки программных систем недостаточно формализуют моделирование предметной области с учетом особенностей коллективной работы. В современных методах недостаточно формализованных критериев и процедур для обеспечения функциональной полноты и логической целостности результатов коллективной работы, а также отсутствуют формализованные методы выявления интегрирующей основы информационного и программного обеспечения. Таким образом, налицо два противоречащих друг другу фактора: с одной стороны – рост потребностей в заказных проектах, направленных на комплексную автоматизацию предприятий в условиях большой размерности предметной области и высоких требований к срокам и качеству результатов, с другой стороны – недостаточное развитие методов разработки подобных проектов, обеспечивающих качество и логическую целостность результатов в условиях коллективной работы с самых первых этапов жизненного цикла. Целью работы является разработка научно обоснованной технологии коллективного моделирования предметной области большой размерности при создании программного обеспечения информационных систем. Методы исследования. В теоретических и экспериментальных исследованиях применены аппарат теории матриц и математического анализа, а также элементы комбинаторики. Научная новизна. Научную новизну представляют следующие, представленные в диссертации, результаты исследований: • Критерий глубины детализации функциональной модели предметной области, основанный на свойствах информационных объектов, представленных на потоках данных нижнего уровня функциональной модели. Критерий обеспечивает необходимый и достаточный уровень детализации функциональной модели. • Критерии верификации, позволяющие формализовать контроль полноты состава информационных объектов в модели предметной области. Критерии являются формализованными и используют взаимосвязанные глоссарии информационных объектов двух типов (Глоссария Документов и Глоссария Сущностей). • Метод выявления общесистемных сущностей. Метод позволяет объективно выявить подмножество сущностей, оказывающих наибольшее влияние на сцепление бизнес-процессов, и ограничить размерность информационной модели в процессе ее построения. Метод является формальным, не зависящим от размерности исходных данных, адаптируемым к предметной области и условиям конкретного проекта. • Экспериментально выявленные характеристики сцепления бизнес-процессов в банковской предметной области, позволяющие понижать совокупную сложность, как самого процесса моделирования, так и последующей разработки программной системы на основе предварительного выявления общесистемных объектов. Реализация результатов и практическая ценность работы. Результаты работы применяются в Санкт-Петербургском банке Сбербанка России, ЗАО «СервоКомп», ЗАО «Бизнес Компьютер Центр» на этапах анализа предметной области в консалтинговых проектах и при разработке заказных программных систем. В частности, положения разработанной технологии применялись при разработке под руководством и при участии автора банковской системы «Правление» в Санкт-Петербургском бизнес-процессов банке СБ РФ, АО в проекте по реинжинирингу подразделений «Ленэнерго», выполнявшемся ЗАО «Бизнес Компьютер Центр» и других проектах. Внедрение разработанной технологии в проектах по автоматизации предприятий различных сфер деятельности позволяет упорядочить процесс коллективного моделирования и собрать в процессе его выполнения формализованную информацию, позволяющую планировать последующие этапы проекта, их обеспечивать результатов. функциональную Результаты, полноту и в логическую процессе целостность полученные моделирования, выполняемого в соответствии с предлагаемой технологией, позволяют также ограничить совокупную сложность, как самого моделирования, так и последующих этапов, опирающихся на его результаты. Формализованные элементы технологии (единые глоссарии, процедуры верификации, метод выявления общесистемных элементов) могут быть автоматизированы в инструментальных средствах моделирования (CASEсистемах). Апробация работы. По теме диссертации опубликованы 5 работ и сделаны доклады на следующих семинарах и конференциях: • III-я Международная научно-техническая конференция «Информационные технологии в инновационных проектах», Ижевск, май 2001г.;

• II-я Всероссийская практическая конференция "Стандарты в проектах современных ИС", Москва, март 2002г.;

• Конференция «Корпоративные информационные технологии нового века», Санкт-Петербург, июнь 2000г.;

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

• Семинар руководителей служб автоматизации территориальных банков Сбербанка России, Москва, апрель 1998г., апрель 1999г. Структура работы. Диссертация состоит из введения, четырех глав, заключения и приложения, содержащего акты внедрения результатов работы. Список использованной литературы содержит 73 наименования.

ГЛАВА 1. Методы моделирования предметной области 1.1. Основные подходы и стандарты программной инженерии Одним из основных понятий программной инженерии является понятие жизненного цикла программного обеспечения (ЖЦ ПО). ЖЦ ПО – это непрерывный процесс, который начинается с момента принятия решения о необходимости создания ПО и заканчивается в момент его полного изъятия из эксплуатации [7]. Жизненный цикл ПО конкретного проекта может быть определен посредством составляющих его процессов и модели, определяющей характер выполнения процессов в их взаимосвязи. На сегодняшний день стандартом «де-факто» является спиральная модель жизненного цикла [57], пришедшая на смену каскадной модели и ее модификациям [6, 19]. Спиральная модель отражает объективно существующий итерационный характер разработки, который не имеет альтернатив в условиях неточной и неполной исходной информации, что характерно для проектов по комплексной автоматизации предприятий. Моделирование, как и другие работы в процессе разработки программных систем, носит итерационный характер, соответствующий спиральной моделью жизненного цикла. Таким образом, в процессе решения задач настоящей работы применяются положения спиральной модели жизненного цикла. Основным нормативным документом, определяющим состав процессов жизненного цикла ПО, является ГОСТ Р ИСО/МЭК 12207 – 99 (далее – ISO 12207) [31]. ISO 12207 является международным стандартом, принятым Россией в качестве государственного стандарта. Он регламентирует состав и структуру процессов ЖЦ ПО допуская их адаптацию к условиям конкретного проекта и выбор модели ЖЦ. Несмотря на то, что данный стандарт ссылается только на программное обеспечение, его положения также применимы к информационному обеспечению, т.к. жизненный цикл обоих видов обеспечения в программных проектах, как правило, совпадает.

Процесс разработки программных проектов регламентируется также стандартами комплекса ГОСТ34. Стандарты данного комплекса, в отличие от ISO 12207, рассматривают не ПО, а автоматизированные системы (АС) и не формулируют в явном виде процессов жизненного цикла, ориентируясь больше на взаимодействие Заказчика и Разработчика, подробно регламентируя при этом состав документации каждого этапа [9, 10, 11, 34]. В частности, ГОСТ 34.602-89 определяет виды требований к автоматизированным системам. На рисунке 1 показано влияние видов требований на характеристики результатов проекта. Структура и содержание информационного и программного обеспечения в основном определяется требованиями к функциям (задачам), выполняемым системой. При этом требования к системе в целом, также как и требования к видам обеспечения, оказывают основное влияние на архитектуру системы, что позволяет не учитывать эти виды требований при решении задач по формализации процесса моделирования предметной области.

Наряду с понятием жизненного цикла и стандартами, определяющими его структуру, для программной инженерии большое значение имеют совокупности принципов, терминов и категорий, определяемые в литературе общим термином – подход. На сегодняшний день в программной инженерии существует два основных подхода к разработке программного обеспечения – структурный [7] и объектно-ориентированный [36]. Методологии и технологии разработки программных проектов, основанные на разных подходах и, соответственно, опирающиеся на разные системы понятий и базовые принципы, тем не менее, не имеют принципиальных расхождений по структуре жизненного цикла и основному содержанию процессов. Таким образом, для разработки технологии коллективного моделирования предметной области допустимо: • опираться на итерационный характер спиральной модели жизненного цикла;

• из всех видов требований, определяемых ГОСТ34, учитывать только требования к функциям, выполняемым системой;

• применять не зависящие от подхода (структурного или объектноориентированного) базовые элементы структуры жизненного цикла и содержания его процессов. 1.2. начальным Моделирование предметной области этапом программного проекта является анализ системных В соответствии с ISO 12207 и спиральной моделью жизненного цикла требований, заключающийся в обследовании, моделировании и анализе предметной области, подлежащей автоматизации. В зависимости от выбранных подходов, методологий, технологий внутреннее содержание данного этапа, система понятий, инструментарий могут отличаться, но цель и основная суть его останутся неизменными: анализ предметной области предназначен для выявления, классификации и формализации информации обо всех аспектах предметной области, влияющих на свойства конечного результата проекта. Важнейшим элементом анализа является моделирование предметной области. В соответствии с современными методологиями модель предметной области представляет собой совокупность диаграмм, выполненных в какойлибо нотации, структурированных спецификаций, описывающих элементы модели (например, процессы и структуры данных при использовании методов структурного подхода), а также перечень документов предметной области, являющихся первоисточником информации, представленной в диаграммах и спецификациях [19, 66]. «Классическая» структурная схема процесса моделирования предметной области, обобщающая положения существующих методологий [13, 35] и изображенная в терминах структурного подхода, приведена на рисунке 2.

Построение функциональной модели «как есть» позволяет собрать и представить в формализованном виде информацию о существующем состоянии предметной области, после чего следует переосмысление состава и технологии бизнес-процессов (реорганизация бизнес-процессов [22]) с учетом ее комплексной автоматизации, что приводит к построению модели «как надо». На основе функциональной модели «как надо», производится построение концептуальной модели данных (КМД). При использовании объектноориентированных методов вместо КМД будет строиться модель классов, что не меняет сути самого процесса [70]. Требуемые архитектуры, свойства модели и предметной области определяются и т.д.). Для потребностями последующих этапов жизненного цикла (проектирование проектирование реализация полные и подсистем последующих этапов важно получить от моделирования предметной области формализованные, функционально концептуально целостные результаты, которые, с одной стороны, позволят количественно оценить и спланировать последующую работу, а, с другой стороны, предоставят полную и непротиворечивую информацию для проектирования и верификации разрабатываемых решений. Разработка программного проекта в предметной области большой размерности является параллельно-последовательной работой коллектива, для которой большое значение имеет очередность реализации элементов (подсистем). В результате моделирования необходимо выявить наиболее значимые элементы предметной области, предназначенные для первоочередной реализации в виде проектных решений, и представить информацию о предметной области в виде, пригодном для формальной оценки взаимной зависимости элементов будущей системы. С этой точки зрения основными свойствами модели предметной области являются: • формализованная форма представления;

• достаточная степень подробности результатов для планирования проекта и проектирования архитектуры системы;

• функциональная полнота;

• логическая целостность. Свойство функциональной полноты означает, что в модели предметной области должны быть отражены все функциональные и информационные элементы, а также их связи, имеющие место в обследуемой предметной области. Выполнение данного требования на этапе моделирования предметной области определяет функциональную полноту результатов всего проекта. На сегодняшний день не существует формальных методов, позволяющих гарантировать достижения данного свойства или формальных методов верификации, позволяющих строго его проверить. Однако существующие методы предлагают формализованные в различной степени подходы и приемы для снижения рисков, связанных с невыполнением данного требования. Важнейшим элементом таких приемов является поиск базового источника (источников) информации о предметной области, гарантирующего полное ее покрытие. Например, один из приемов предлагает формально анализировать существительные и глаголы в технологических нормативных документах [63]. Однако, как правило, на предприятии не существует единого функционально полного комплекта нормативных документов, которые можно было бы проанализировать таким образом. Более удобный и хорошо зарекомендовавший себя на практике подход заключается в выборе, в качестве начального источника информации для построения модели «как есть», документов, регламентирующих организационную структуру предприятия (или его части), каковыми являются: устав организации, штатное расписание, положения об управлениях (отделах, секторах), должностные инструкции. Такой подход позволяет:

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

• верифицировать начальное состояние модели по гарантированно полному набору документов, что, в свою очередь, позволяет обеспечить функциональную полноту модели «как есть», на основе которой будет строиться и верифицироваться модель «как надо». Свойство логической целостности означает отсутствие противоречий в системе понятий и их интерпретации, единство синтаксического и семантического содержания различных элементов модели, однородность уровня детализации и т.д. Логическая целостность результатов анализа определяет логическую целостность всего проекта. Традиционным способом обеспечения логической целостности являются глоссарии и процедуры их ведения, позволяющие накапливать используемые понятия (термины, объекты и т.д.) и своевременно разрешать противоречия в их интерпретации [3]. Кроме того, в условиях большой размерности проекта типичным подходом является выявление общесистемных (наиболее значимых) элементов, количество которых существенно меньше общего количества элементов, что позволяет снизить совокупную сложность В одновременно анализируемых и проектируемых объектов. дальнейшем общесистемные элементы проектируются и реализуются в первоочередном порядке и предоставляются для параллельно-последовательной разработки других элементов системы в качестве предопределенного ядра, обязательного к использованию, что позволяет обеспечить логическую целостность результатов проекта. Модель предметной области имеет две основные составляющие – функциональную и информационную, элементами которых являются процессы и структуры данных соответственно. По порядку построения моделей методологии подразделяются на процедурно-ориентированные [22]. Применение и информационно-ориентированные проектах разработки исходной процедурносистем ориентированных методологий при моделировании предметной области в автоматизированных информации на информационных предприятиях предпочтительнее по следующим причинам: • организация (нормативные документы, знания экспертов) делает возможным первичный процесс функционального моделирования, на основе результатов которого могут выявляться и формализовываться информационные элементы;

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

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

Однако преимущество процедурно-ориентированных методологий не определяет приоритета функциональной составляющей предметной области по отношению к информационной. Приоритет информационной составляющей в процедурно-ориентированной (по порядку построения моделей) методологии означает, что основной целью функционального моделирования является выявление информационных объектов. При комплексной автоматизации предметной области такой подход является предпочтительным, поскольку во многих предметных областях информационный аспект является более стабильным на протяжении всего жизненного цикла системы и имеет меньшую размерность, чем функциональный. Данный тезис нашел отражение в различных методологиях разработки программных систем. Например, JSD [63], являющаяся информационно-ориентированной методологией, DATARUN [35], относящаяся к группе процедурно-ориентированных методологий. Обе методологии отдают приоритет выявлению и детальному проектированию информационных объектов предметной области, обеспечивая на их основе логическую целостность менее стабильных и более многочисленных функциональных элементов. Кроме того, приоритет и большая стабильность информационных объектов по сравнению с процессами нашел отражение в работах Дж.Мартина [30], Дж.Хаббарда [51], Е.З.Зиндера [17, 18]. Высокая сложность объектов автоматизации и требования по минимизации времени разработки в условиях конкуренции определяют коллективный характер работ, начиная с обследования и моделирования предметной области. Для получения результатов моделирования, обладающих указанными выше свойствами, в условиях большой размерности предметной области и коллективной работы аналитиков, необходимо сформулировать требования к технологии коллективного моделирования. Общая схема коллективной работы показана на рисунке 3. Однотипные операции одновременно выполняются разными исполнителями. При этом необходим единый результат, для чего реализуются специальные процедуры верификации и интеграции частных результатов. Для обеспечения логической целостности результатов коллективной работы необходимо, чтобы все исполнители выполняли однотипные операции, используя единые методы (методики), критерии, инструменты [38]. Коллективный характер работы предъявляет повышенные требования к уровню формализации используемых методов и критериев, поскольку уровень квалификации и опыт отдельных аналитиков, работающих в коллективе, в общем случае, сильно отличается, а качество единого результата зависит от его частных составляющих.

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

Таким образом, коллективный характер работы и большая размерность предметной области предъявляют следующие дополнительные требования к методам коллективного моделирования, чтобы их можно было использовать в составе промышленных технологий разработки программных систем: 1. Обеспечить 2. Обеспечить 3. Обеспечить необходимый полноту и достаточный уровень детализации модели ее функциональной модели при ее коллективном построении. состава информационных КМД объектов предметной области. ограничение размерности при сохранении логической целостности. Первое требование направлено на ограничение сложности коллективного моделирования при сохранении достаточной полноты результатов. Второе требование направлено на обеспечение качества программного проекта и понижение влияния на него квалификации конкретных разработчиков, что очень важно для промышленных технологий. Третье требование направлено на ограничение сложности моделирования данных в условиях большой размерности предметной области, а также на обеспечение логической целостности, как результатов моделирования предметной области, так и результатов последующих этапов проекта. 1.3. Современные методы моделирования и их недостатки Существующие методы разработки программных систем относятся, как правило, к одному из двух основных подходов программной инженерии: структурному (СП) или объектно-ориентированному (ООП). Структурные методы появились раньше и на сегодняшний день имеют большую историю применения и поддержку инструментальными средствами. Объектноориентированные методы появились позже, однако, они стремительно завоевывают признание среди разработчиков программных систем и вытесняют из этой области структурные методы. Несмотря на существенную разницу в принципах и системе понятий, существующую в методах разных подходов, между ними нет прямого противоречия. Часто объектно-ориентированные методы содержат элементы структурного подхода или структурные методы развиваются в сторону базовых принципов ООП. Например, диаграммы потоков данных, будучи классическим элементом структурного подхода, применяются также и в объектноориентированных методах (например, ОМТ [70]), а диаграммы классов, являющиеся одним из основных элементов ООП, представляют собой развитие диаграмм «сущность-связь» (ERD), предложенных П.Ченом и широко используемых в структурных методах. Таким образом, отнесение конкретного метода к какому-либо подходу часто является условным. В данном разделе рассматриваются методы, покрывающие стадию анализа предметной области, в процессе которого выполняется ее моделирование.

1.3.1 Структурные методы В данном параграфе приводятся основные методы, базирующиеся на принципах структурного подхода, основными из которых являются [7, 22]: • принцип «разделяй и властвую» - принцип решения сложных проблем путем их разбиения на множество меньших, независимых задач;

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

• принцип абстрагирования – выделение существенных аспектов системы и отвлечение от несущественных;

• принцип формализации – необходимость строго методического подхода к решению проблемы;

• принцип элементов;

• принцип непротиворечивости независимости и – обоснованность – модели и согласованность должны процессов быть их данных данных от спроектированы проанализированы независимо логической обработки;

• использование графических нотаций. В методах структурного анализа наиболее часто применяют следующие виды графических нотаций: • DFD (Data Flow Diagrams) – диаграммы потоков данных (ДПД) совместно со словарями данных и спецификациями процессов;

• ERD (Entity-Relationship Diagrams) – диаграммы «сущность-связь»;

• STD (State Transition Diagrams) – диаграммы переходов состояний. SA/SD (Structured Analysis/Structured Design) [73]. Одна из «классических» методологий, основанная на DFD. Свой вклад в ее развитие внесли Эдвард Йордон, Ларри Констатайн, Том деМарко и другие известные ученые. Данная методология отдает приоритет функциональному аспекту предметной области. Модель предметной области строится путем функциональной декомпозиции. Глубина функциональной декомпозиции определяется простотой процессов нижнего уровня модели. Методология предполагает применение словарей данных, содержащих формализованные структуры, которыми маркируются потоки и хранилища функциональной модели. Регламентируется применение SDT и ERD. Методология не содержит методов понижения размерности модели данных на этапе моделирования предметной области. JSD (Jackson Structured Development) [63]. JSD разработана Майклом Джаксоном и имела большую популярность в Европе. JSD не разделяет в явном виде анализ и проектирование, предлагая две стадии: специфицирование (specification) и реализацию (implementation). Моделирование предметной области попадает в первую стадию. Хотя данная методология также подразумевает построение графических моделей, она менее ориентирована на графическое представление, чем SA/SD и многие другие методы. JSD – одна из первых методологий, отдающая приоритет данным по отношению к функциям. Первые два шага (из шести), предлагаемые при разработке ПО, регламентируют выявление и структуризацию информационных сущностей. М. Джаксон предлагает выявлять сущности посредством анализа нормативных документов на предмет извлечения из них существительных, которые образуют первичный список искомых информационных объектов. При этом метод не решает задачу понижения размерности информационной модели. Методология Гейна-Сарсон (Gane/Sarson) [13]. Авторами методологии являются Крис Гейн и Триш Сарсон. Как и SA/SD данная методология ориентирована на построение функциональной модели предметной области, представленной в виде иерархии DFD. Функциональная декомпозиция производится до тех пор, пока процессы нижнего уровня не станут элементарными, декомпозиция которых невозможна. Графические нотации, используемые для построения DFD, отличаются от нотаций, предлагаемых Э.Йордоном, однако, эти отличия не меняют базовых принципов структурного моделирования модели в виде предметной ERD. При области. этом Структуры способов данных, переносимые размерности информационными потоками, используются для построение информационной ограничения информационной модели не предлагается. SADT (Structured Analysis and Design Technique) [28]. Методология SADT разработана Дугласом Россом в начале 70-х годов и развита в дальнейшем другими учеными. SADT предназначена для описания объекта обследования (предметной области) безотносительно к способам решения дальнейших задач, связанных с автоматизацией, реинжинирингом и т.д. Несмотря на то, что полная методология подразумевает моделирование как функциональной (активностные модели), так и информационной составляющей (модели данных), наибольшее распространение получила функциональная часть данной методологии. Основными принципами SADT являются: • блочное моделирование на основе графического представления блоков (функций) и дуг (интерфейсов ввода/вывода);

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

• отделение функций от организационной структуры обследуемого объекта. На основе функциональной составляющей SADT разработана методология IDEF0, ставшая промышленным для предприятий многих стран мира. Используемые в ней нотации и техника функционального моделирования являются альтернативой DFD, которые преимущественно применяются в методах структурного анализа. Одной из важнейших особенностей методологии SADT является строгая типизация связей между функциями. SADT также не содержит методов понижения размерности и совокупной сложности. CDM (Custom Development Method) [60]. Метод представляет собой развитие ORACLE CASE*Method, известный по работам Р.Баркера [55, 56]. Метод ориентирован на использование инструментария компании ORACLE и разработку автоматизированных информационных систем, в основе которых лежат реляционные базы данных. Метод покрывает все этапы жизненного цикла, но предлагает разные варианты его модели, от «классической», где выполняются все этапы и процессы, до «облегченного подхода», подразумевающего итерационное прототипирование решений. При этом подразумевается ограничение размерности и выявление наиболее значимых объектов, однако, не предлагается формализованных методов для реализации этих действий. DATARUN [35]. DATARUN является коммерческим продуктом и представляет собой методологию, оформленную в электронном виде и предназначенную для практического использования. Методология поддержана инструментальными средствами - CASE-системой SilverRun. DATARUN покрывает практически все этапы жизненного цикла программной системы, регламентируемые стандартом ISO 12207. Несмотря на то, что авторы позиционируют данную методологию как объектно-базированную, ее следует считать структурной, т.к. в основе DATARUN лежат известные структурные методы и нотации функционального и информационного моделирования. Методология поддерживает различные нотации DFD: Гейна/Сарсон, Йордана/деМарко и их модификации, адаптированные к набору моделей, регламентируемых DATARUN. Приводимое авторами обоснование «объектной базированности» опирается на наличие моделей, представляющих объекты графического интерфейса разрабатываемой системы, однако методология не поддерживает полноценно ни один базовый принцип объектно-ориентированного подхода. Между функциональным и информационным аспектами предметной области, DATARUN отдает приоритет информационному. В соответствии с методологией, основной задачей функционального моделирования предметной области является выявление и формализация структур данных, для чего вводится понятие «генераторов первичных данных» и процедуры их поиска в функциональной модели. Являясь методологией, поддерживающей полный жизненный цикл программного проекта, DATARUN предлагает формализованные и поддержанные инструментальными средствами процедуры перехода между стадиями вплоть до генерации структуры базы данных и программного кода прикладного ПО. При этом DATARUN не содержит формализованных критериев и методов, ориентированных на ограничение размерности и понижение совокупной сложности моделирования.

1.3.2 Объектно-ориентированные методы В данном параграфе представлены методы, базирующиеся на принципах объектно-ориентированного ориентированных предметной методах между области, подхода. в Этап на виде анализа объектной передачи в объектнообъектов, сообщений. основывается собой декомпозиции представляемой совокупности взаимодействующих 36]: • принцип посредством Основными принципами объектно-ориентированного подхода являются [22, инкапсуляции (упрятывания информации) декларирует запрещение любого доступа к атрибутам объекта, кроме как через его операции (методы);

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

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

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

• принцип полиморфизма - декларирует возможность работы с объектом без информации о конкретном классе, экземпляром которого он является. В методах объектно-ориентированного анализа на сегодняшний день стандартом «де-факто» стали графические нотации языка моделирования UML (Unified Modeling Language – Унифицированный Язык Моделирования) [5]. OOSE (Object-Oriented Software Engineering) [64]. Один из самых старых объектно-ориентированных методов, называемый также методом Джекобсона (Jacobson). OOSE вводит понятие «use case» (вариант использования), ставшее на сегодняшний день базовым для моделирования требований предметной области в методах ООП. Стадия анализа в OOSE базируется на модели требований и модели анализа. Собственно модель предметной области сообщением, вызывающим выполнение соответствующей соответствует модели требований, тогда как модель анализа представляет собой модель системы, построенную на основе объектов и интерфейсов, выявленных в предметной области. Сценарный подход метода удобен для разработки клиент/серверных проектов. Идеи, заложенные в OOSE, нашли свое развитие в языке UML и методологии (технологии) RUP (Rational Unified Process). Метод не содержит формализованных критериев и методов ограничения размерности и обеспечения логической целостности модели. OOA/Coad-Yourdon [61]. Упрощенный метод объектно-ориентированного анализа, базирующийся на выделении классов и объектов. Метод подразумевает построение многослойной и многокомпонентной диаграммы, объединяющей в себе представление предметной области и проектируемой системы. Компонентами являются проблемная область, взаимодействие с пользователем, управление данными и заданиями. Слоями являются: предмет, классы и объекты, структуры, атрибуты и услуги. Первым шагом метода является идентификация и определение классов и объектов. Следующие шаги предполагают идентификацию и определение структур, субъектов, атрибутов, услуг. Достоинством данного метода является его простота и легкость в использовании. Однако считается, что он пригоден только для небольших проектов. OMT (Object Modeling Technique) [70]. OMT - техника моделирования, также известная под названием «Метод Рамбо». Это один из наиболее популярных объектно-ориентированных методов, который покрывает, как стадию анализа, так и стадию проектирования программной системы. В OMT применяются, как элементы структурного подхода (DFD), так и элементы ООП (объектная модель). OMT использует три основные модели: • динамическую модель - диаграмма состояний (STD) с некоторыми новыми символами, представляющими взаимодействие между объектами;

• функциональную модель – набор DFD, представляющие функциональность предметной области, определяющую операции над объектами;

• объектную модель – набор диаграмм объектов. Необычное для объектно-ориентированных методов использование элементов структурного подхода (DFD) позволило приблизить метод к пользователям и обеспечить ему популярность. В тоже время логика OMT, регламентирующая на первых же шагах анализа выявление объектов, а затем, опираясь на них, построение всех остальных моделей, полностью соответствует сути ООП. Метод не очень четко разделяет стадии анализа и проектирования и не содержит решений для ограничения размерности. Метод Буча [4]. Метод Буча считается наиболее полным и последовательным методом объектно-ориентированного подхода.

Предлагаемый набор диаграмм отражает логическую и физическую структуры проекта, его статические и динамические аспекты. Метод Буча максимально выдерживает принципы ООП и нацелен на построение системы, обладающей высоким уровнем интеграции, в основе которой лежат повторно используемые компоненты. Однако, несмотря на позиционирование его как метода, предназначенного для стадий анализа и проектирования, он был создан как метод проектирования и остается практически не пригодным для обследования и анализа предметной области, поскольку изначально ориентирован на наличие формализованных объектов, которые должны быть выявлены в процессе анализа. Метод Шлеера/Меллора [53]. Метод Шлеера/Меллора считается методом объектно-ориентированного анализа, хотя он основан на использовании графических нотаций, позаимствованных из структурного подхода (DFD, ERD, STD). Данный метод можно рассматривать как метод моделирования данных (объектов) предметной области. Логика метода предполагает изначальное построение информационной модели, а уже затем для выявленных объектов построение диаграмм состояний и моделирование переходов между состояниями в виде наборов DFD и спецификаций процессов. Метод строго формализован и удобен для динамического моделирования при разработке систем реального времени. Метод Мартина/Оделла [67]. Метод объектно-ориентированного анализа Мартина/Оделла также известен под названием OOIE (Object-Oriented Information Engineering) и часто рассматривается как объектноориентированное расширении метода IE (Information Engineering). Суть метода заключается в выделении общих данных и функций у объектов. OOIE использует нотацию, подобную нотации Кода/Йордана. Метод удобен при реинжиниринге бизнес-процессов, описанных структурными методами. RUP (Rational Unified Process) [65]. RUP – это технология разработки программного обеспечения, оформленная в виде электронного коммерческого продукта. С методологической точки зрения RUP вобрал в себя и развил лучшие идеи, сформулированные в более ранних объектно-ориентированных методах: OOSE, OMT, Booch Method и др. Основными авторами RUP можно считать классиков ООП Г.Буча, И.Джекобсона, Дж.Рамбо, объединивших свои исследования и разработки в компании Rational Software. RUP покрывает все этапы жизненного цикла ПО, опирается на язык моделирования UML, полностью поддерживается инструментальными средствами, предлагает формализованные процедуры перехода между стадиями вплоть до генерации кода прикладного ПО. Среди прочих важнейшими особенностями RUP является итерационный подход к разработке ПО и учет коллективного характера работы на всех этапах жизненного цикла. Данная технология покрывает, как методологические аспекты процессов жизненного цикла, так и организационные аспекты крупного программного проекта, и подразумевает адаптацию своих положений к условиям конкретного проекта. Для стадии анализа предметной области RUP использует и развивает идеи OOSE и OMT. При этом в отличие от других методов, не только декларируется наличие единых словарей и глоссариев, необходимых для обеспечения концептуальной целостности проекта, но и регламентируются правила их ведения. На сегодняшний день RUP является наиболее полной технологией разработки ПО и активно вытесняет другие методы, претендуя на роль стандарта в области программной инженерии.

1.3.3 Недостатки существующих методов Анализ существующих методов моделирования показывает, что они, безусловно, позволяют решить задачу моделирования предметной области, однако, не удовлетворяют в достаточной степени сформулированным выше требованиям к методам коллективного моделирования предметной области. Одним из недостатков структурных методов анализа является предлагаемый ими критерий глубины детализации функциональной модели предметной области. Методы, регламентирующие первоочередное построение функциональной модели (SA/SD, Методология Гейна/Сарсон, SADT, DATARUN) определяют критерий глубины ее детализации на основе требований к процессу нижнего уровня (он должен быть элементарным с точки зрения своей структуры), что приводит к детализации модели до элементарных неделимых процессов. При первой итерации коллективного моделирования предметной являющемся программного причинам: • информационная составляющая предметной области, по сравнению с функциональной, имеет большую стабильность и меньшую размерность, что обуславливает ее приоритетность для обеспечения логической целостности проекта;

области (моделирование этапом высокая предметной области разработки связанная с в целом), большого глубокой начальным проекта, итерационной трудоемкость, детализацией функциональных элементов не оправдана по следующим • при использовании «классических» критериев не существует формализованных процедур контроля за их соблюдением в условиях параллельной работы аналитиков;

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

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

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

• формализованными – представляющими собой информационные сущности (или объекты), формализованным образом описывающие понятия предметной области и являющимися основой для проектирования элементов системы. Отсутствие в существующих методах формализованных глоссариев, представляющих информационные элементы обоих видов в их взаимосвязи, не позволяет формализовать верификацию полноты состава информационных объектов модели на основе первичной информации предметной области, что является существенным недостатком при использовании методов в промышленных разработках. Классическая схема моделирования предметной области (например, методом Гейна/Сарсон) предполагает построение полной концептуальной модели данных (КМД) в виде ERD. При этом в условиях большой размерности предметной области трудоемкость взаимосвязанной формализации полного объема информационных сущностей, что необходимо для построения КМД, очень велика. Кроме того, трудоемкость этой работы нелинейно возрастает при увеличении количества элементов. Для понижения размерности КМД необходимы формализованные методы выявления ограниченного состава информационных объектов, имеющих общесистемное значение (значение для всей предметной области в целом). Существующие методологии не предоставляют таких методов на этапе моделирования. Выявление общесистемных объектов на стадии анализа необходимо не только для понижения размерности КМД и, соответственно, ее сложности. Выявление общесистемных объектов необходимо для обеспечения логической целостности проекта при его разработке по частям. Объектно-ориентированные методы, изначально ориентированные на итерационный характер разработки и высокую повторную используемость элементов, подразумевают выявление общесистемных классов и объектов, что соответствует выявлению общесистемных информационных сущностей в методах структурного подхода. Например, RUP, являющийся наиболее полной и последовательной объектноориентированной технологией, поддерживает коллективную работу и предполагает выявление основных элементов архитектуры (общесистемные элементы) на самых ранних стадиях (анализ), что является интегрирующей основой проекта, обеспечивающей его логическую целостность. Однако RUP также не содержит формализованных методов для выявления таких элементов. Таким образом, существующие методы, безусловно, позволяют решать задачу моделирования предметной области. Однако они не удовлетворяют сформулированным выше требованиям, предъявляемым к методам коллективного моделирования предметной области, применяемым в составе промышленных методов разработки программных систем. Существующие методы либо недостаточно формализуют критерии и методы, необходимые для удовлетворения предъявленных требований, либо приводят к слишком высокой трудоемкости реализации в условиях большой размерности (например, DATARUN), что вынуждает аналитиков искать дополнительные технологические решения. 1.4. Выводы 1. Создание научно обоснованных технологических методов коллективной разработки программных систем является актуальной научно-технической проблемой. 2. В рамках данной проблемы наиболее важными являются задачи, направленные на формализацию методов обследования и моделирования предметной области, поскольку эти этапы во многом определяют качество результатов всего проекта. 3. К методам коллективного моделирования, применяемым в составе промышленных методов разработки программных систем, предъявляются следующие требования: a. Обеспечить необходимый и достаточный уровень детализации функциональной модели при ее коллективном построении;

b. Обеспечить полноту состава информационных объектов модели предметной области;

c. Обеспечить ограничение размерности КМД при сохранении ее логической целостности. 4. Анализ существующих методов моделирования предметной области показал, что они, безусловно, позволяют решать задачу моделирования предметной области. Однако они не удовлетворяют в достаточной степени представленным выше требованиям. 5. Для удовлетворения представленным выше требованиям к методам коллективного моделирования предметной области необходимо решить следующие задачи:

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

b. Сформулировать критерии верификации полноты состава информационных объектов модели предметной области и состав исходных данных, необходимый для их применения;

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

ГЛАВА 2. Технология коллективного моделирования предметной области 2.1. Структура Технологии Технология коллективного моделирования предметной области большой размерности (далее – Технология) основана на «классической» структурной схеме процесса моделирования, представленной на рисунке 2. Технология развивает и дополняет представленную схему формализованными критериями, процедурами и другими элементами, направленными на решение поставленных выше задач диссертационной работы. Технология предполагает применение какого-либо существующего метода моделирования, называемого в дальнейшем базовым методом. Выбор базового метода Технологией не регламентируется, однако важным условием является его процедурная ориентированность, т.е. первоочередное построение функциональной модели. Структурная схема Технологии приведена на рисунке 5. Для описания Технологии используем терминологию структурного подхода и введем следующие понятия: • Документ являющийся обобщения предметной для них области (ДПО) – набор информации, собой использующийся в технологических процессах предметной области и неделимым. ДПО представляет информационный объект предметной области до его формализации и в абстрактные категории, применяемые при разработке информационного и программного обеспечения;

• Сущность предметной области (СПО) – объект и (или) факт предметной области, информацию о котором необходимо хранить в базе данных [39]. СПО является формализованным информационным объектом предметной области, атрибутный состав которого преобразован в соответствии с правилами реляционной алгебры;

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

• Глоссарий Документов (ГлД) – словарь данных, содержащий документы предметной области (ДПО), используемые в функциональной модели, и их характеристики;

• Глоссарий Сущностей (ГлС) – словарь данных, содержащий информационные сущности предметной области (СПО), используемые в модели предметной области, и их характеристики;

• Базовая концептуальная модель данных (БКМД) – концептуальная модель данных (КМД), содержащая только общесистемные сущности предметной области (ОСПО).

Технология регламентирует выполнение следующих шагов: • построение функциональной модели «как есть»;

• построение функциональной модели «как надо»;

• формирование Глоссария Сущностей;

• верификация функциональной модели;

• выявление общесистемных сущностей;

• построение БКМД. Построение функциональной модели «как есть». Данный шаг соответствует классической схеме моделирования. Технология его выполнения определяется выбранным базовым методом. Не накладывая существенных ограничений на выбор базового метода (за исключением процедурной ориентированности), на данном шаге Технология регламентирует: • параллельную работу аналитиков по ветвям функциональной модели;

• отсутствие на данном шаге полного атрибутного анализа и наполнения атрибутного состава ДПО;

• процедуру оперативной верификации и интеграции частных результатов, в состав которой входит организационная процедура ведения единого Глоссария Документов;

• критерий глубины детализации функциональной модели. Предлагаемый критерий глубины детализации функциональной модели позволяет решить первую из поставленных в диссертационной работе задач. Построение исследования функциональной модели «как надо». Процесс технологий, преобразования модели «как есть» в модель «как надо» является объектом современного направления информационных называемого реорганизацией бизнес-процессов [22].

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

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

• отсутствие формализации полного атрибутного состава сущностей (формализуются только атрибуты первичного ключа);

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

Построение БКМД. Завершающий шаг Технологии, регламентирующий построение БКМД вместо полной КМД. Исходной информацией для выполнения данного шага является перечень ОСПО, сформированный на предыдущем шаге Технологии. Процедура построения модели данных описана во многих методах структурного анализа [13, 35, 55]. В случае применения методов объектноориентированного подхода данный шаг будет заключаться в построение модели классов в соответствии с правилами метода (например, [4]). При этом кандидатами в классы будут выступать общесистемные сущности, выявленные на предыдущем шаге Технологии. Результатами моделирования предметной области в соответствии с предлагаемой Технологией являются: • функциональная модель предметной области, выполненная в нотации, определяемой базовым методом;

• Глоссарий Документов;

• Глоссарий Сущностей;

• Перечень общесистемных сущностей;

• БКМД или соответствующая ей модель классов. Таким образом, в предлагаемой технологии решаются все задачи диссертационной работы: 1. Для обеспечения необходимого и достаточного уровня детализации функциональной модели предложен новый критерий глубины детализации, который применяется на этапе построения функциональной модели “как есть”. 2. Для обеспечения полноты состава информационных объектов модели предметной области (сущностей) предложены новые критерии верификации, а также состав исходных данных, необходимых для формализованного контроля соблюдения этих критериев. Исходными данными для процедур верификации являются взаимосвязанные глоссарии документов и сущностей, которые содержат информационные объекты предметной области до и после их формализации соответственно. Глоссарий документов представляет собой понятийную базу предметной области, на соответствие которой должны проверяться формализованные объекты – сущности. Глоссарий документов формируется в процессе коллективного построения функциональной модели “как есть” и корректируется в процессе построения модели “как надо”. Глоссарий сущностей формируется на стадии коллективного выявления сущностей посредством атрибутного анализа документов. 3. Для ограничения размерности концептуальной модели данных и сохранения при этом ее логической целостности разработан новый метод выявления общесистемных сущностей, позволяющий выявить сущности, имеющие наибольшие характеристики использования в функциональной модели или ее частях на каждой итерации. Технология регламентирует построение так называемой базовой концептуальной модели данных (БКМД) вместо полной КМД. Элементами БКМД являются общесистемные сущности, выявленные посредством разработанного метода. 2.2. Критерий глубины детализации функциональной модели Для обеспечения необходимого и достаточного уровня детализации функциональной модели предлагается новый критерий глубины детализации, который применяется при моделировании предметной области в целом (первая итерация). Данный критерий применяется в Технологии на шаге коллективного построения функциональной модели «как есть» и используется также на шаге построения функциональной модели «как надо». Применение данного критерия позволяет:

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

• обеспечить единый уровень абстракции модели, построенной многими аналитиками;

• ограничить совокупную сложность функциональной модели. Необходимость и достаточность исходных данных для следующих шагов и этапов проекта подразумевает глубину функциональной модели, позволяющую сформировать Глоссарий Документов и обеспечить тем самым информацию для последующего выявления СПО (формирования Глоссария Сущностей), разработки. Единый уровень абстракции модели необходим для обеспечения логической целостности результатов коллективной работы, что обеспечивается за счет процедур оперативной верификации частных результатов, в процессе которых производится контроль на соответствие глубины детализации данной ветви функциональной модели единому критерию. Ограничение необходимо аналитиками. Предлагается следующий критерий глубины детализации функциональной модели: Каждому потоку данных нижнего уровня функциональной модели должен соответствовать один идентифицируемый документ предметной области (ДПО). Данный критерий обеспечивает выявление всей совокупности используемых в предметной области информационных объектов, что является необходимым для выполнения следующих шагов анализа и перехода к для совокупной исключения сложности излишних функциональной ресурсов в модели процессе затрат ОСПО, построения БКМД, проектирования архитектуры программной системы и планирования ее параллельно-последовательной моделирования за счет предотвращения избыточной детализации модели проектированию программной системы. Критерий подразумевает приоритет информационной составляющей в процессе анализа предметной области. В соответствии с ним построение функциональной модели предметной области должно производиться до тех пор, пока все потоки данных нижнего уровня модели не будут промаркированы ДПО. При этом процессы нижнего уровня могут иметь различную алгоритмическую и структурную сложность. Детализация процессов в соответствии с предложенным критерием является достаточной для перехода к следующим программного этапам, поскольку позволяет сформировать спроектировать архитектуру основу обеспечения, интегрирующую информационного обеспечения и организовать параллельно-последовательный процесс разработки по подсистемам, где и будут дальше детализироваться функциональные элементы предметной области в соответствии со спиральной моделью жизненного цикла. Целесообразность применения данного критерия подтверждается также следующими факторами: • Существуют предметные области, информационная составляющая которых является более стабильной и имеет меньшую размерность по сравнению с функциональной составляющей. Данный тезис подтверждается: o экспериментальными исследованиями, представленными в Главе 3 настоящей работы;

o материалами приоритет структурных выявлению и методов анализа, отдающих формализации информационных элементов (например, JSD [63], DATARUN [35]);

o материалами объектно-ориентированных методов разработки, ориентированных на выявление в процессе функционального моделирования классов предметной области, являющихся развитием информационных сущностей [22, 70].

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

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

• единый уровень абстракции функциональной модели;

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

2.3.

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

процедур верификации в процессе моделирования предметной области являются: • контроль соответствия модели предметной области требованиям заказчика;

• контроль корректности синтаксиса применяемых нотаций;

• контроль семантической корректности модели предметной области;

• контроль функциональной полноты модели предметной области;

• контроль логической целостности модели предметной области. Контроль соответствия модели предметной области исходным требованиям заказчика, как правило, является неформализованным процессом, сильно зависящим от качества и формы представления исходных требований. Некоторые методологии (например, RUP [65]) регламентируют форму представления требований, что позволяет частично формализовать данный вид контроля, однако, в общем случае, для него не существует формализованных критериев. Контроль корректности синтаксиса применяемых нотаций, как правило, возлагается на инструментальные средства анализа и проектирования (CASEсистемы). На сегодняшний день CASE-системы поддерживают все распространенные нотации и диаграммные техники, как структурного, так и объектно-ориентированного подходов, и автоматизируют данный вид контроля в соответствии с критериями, сформулированными в поддерживаемых ими методах.

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

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

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

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

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

• идентификаторы нормативных документов, определяющих структуру, содержание и использование ДПО;

• атрибуты, позволяющие определить место использования данного ДПО в функциональной модели;

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

• ссылки на элементы Глоссария Документов (ДПО), которые используют атрибуты данной СПО. Кроме того, добавление в структуру глоссариев атрибутов, описывающих количественные характеристики информационных объектов, позволяет применять формализованные методы оценки сложности и трудоемкости. Например, указание примерного количества атрибутов для каждой СПО позволит воспользоваться методом функциональных точек [68] для оценки сложности проекта. Глоссарий Документов (ГлД) формируется при коллективном построении функциональной модели «как есть» и корректируется в процессе преобразования ее в модель «как надо», что позволяет оперативно обеспечивать логическую целостность промежуточных результатов параллельной работы аналитиков, не допуская излишних затрат на проработку и последующую корректировку противоречивых элементов модели. Формирование ГлД производится в процессе процедур оперативной интеграции и верификации частных результатов. Данные процедуры являются организационными и заключаются в назначении ответственных за ведение глоссария аналитиков (аналитика), а также в регламентации процедуры внесения изменений по заявкам параллельно работающих аналитиков, основанной на принципах публичной защиты. Формирование Глоссария Сущностей является самостоятельным шагом в предлагаемой Технологии. Данный шаг выполняется после построения функциональной модели «как надо» и до построения концептуальной модели данных, т.к. для его выполнения требуется сформированный Глоссарий Документов. Наполнение Глоссария Сущностей производится в процессе параллельной работы аналитиков, которые выполняют атрибутный анализ ДПО (элементов Глоссария Документов), выявляя в них информационные сущности. При этом не производится полной формализации атрибутного состава каждой сущности, а формулируется только первичный ключ. Принципы выявления и нормализации информационных сущностей на основе атрибутного анализа первичной информации подробно описаны в литературе по методам структурного анализа и реляционного моделирования [33, 44, 50] и не являются предметом рассмотрения данной работы. Для верификации состава информационных объектов модели предметной области предложены новые критерии, которые позволяют формализовать контроль полноты состава информационных объектов в модели предметной области после их выявления на основе результатов функционального моделирования. Критерий 1. Каждый документ предметной области, присутствующий в функциональной модели, должен входить в состав Глоссария Документов. Критерий 2. Каждый элемент Глоссария Документов должен присутствовать в функциональной модели хотя бы на одном потоке данных.

Критерий 3. Каждому элементу Глоссария Документов должен соответствовать хотя бы один элемент Глоссария Сущностей. Критерий 4. Каждый элемент Глоссария Сущностей должен иметь в качестве источника хотя бы один элемент Глоссария Документов. Первый и второй критерии являются критериями соответствия Глоссария Документов функциональной модели и позволяют проверить корректность состава глоссария документов. Несоблюдение этих критериев говорит о некорректном составе глоссария документов. Первый критерий используется, как в процессе оперативной верификации частных результатов функционального моделирования, так и в процессе контроля интегрированных результатов. Контроль выполнения данного критерия глоссариев. Второй критерий предназначен для контроля отсутствия неиспользуемых элементов в Глоссарии Документов. Логика построения функциональной модели и ведения глоссариев, независимо от применения предлагаемой Технологии, подразумевает ввод в глоссарий только тех элементов, которые применяются в модели. Данный критерий используется, как в процессе оперативной моделирования, использования верификации так и при частных контроле результатов окончательных для функционального интегрированных функционального может быть автоматизирован в случае использования инструментальных средств для функционального моделирования и ведения результатов. Данный критерий может быть автоматизирован в случае инструментальных средств моделирования и ведения глоссариев. Третий критерий является критерием полноты охвата понятийной базы предметной области, т.к. сущности выявляются посредством атрибутного анализа документов, и все элементы глоссария документов должны быть охвачены таким анализом. Частным случаем является взаимно однозначное соответствие одного элемента Глоссария Документов одному элементу Глоссария Сущностей. Соответствие данному критерию говорит о том, что ни один документ не был пропущен в процессе атрибутного анализа документов. Однако, данный критерий не гарантирует корректность выявления и формализации сущностей. Критерий применяется в процессе верификации окончательных интегрированных результатов моделирования, в состав которых входят оба единых глоссария. Данный критерий может быть автоматизирован в случае использования инструментальных средств для функционального моделирования и ведения глоссариев, поскольку атрибуты глоссариев содержат перекрестные ссылки на элементы друг друга. Четвертый критерий предназначен для выявления “лишних” элементов глоссария сущностей, возникновение которых возможно из-за итерационного характера работ и корректировки результатов предыдущих шагов. Корректным источником появления сущностей являются только элементы Глоссария Документов. Критерий 4 применяется в процессе верификации окончательных интегрированных результатов моделирования. Данный критерий может быть автоматизирован в случае использования инструментальных средств для функционального моделирования и ведения глоссариев, поскольку атрибуты глоссариев содержат перекрестные ссылки на элементы друг друга. Представленные критерии являются необходимыми, но не являются достаточными, т.к. семантическая корректность выявления сущностей на основе документов не может быть формально проверена. Предложенные критерии являются формальными, что позволяет автоматизировать проверку их соблюдения в средствах автоматизации процесса моделирования. Таким образом, предложенные критерии, основанные на введенных выше глоссариях, позволяют формализовать контроль полноты состава информационных сущностей предметной области и, тем самым, решить вторую задачу диссертационной работы.

2.4.

Метод выявления общесистемных сущностей предметной области Для ограничения размерности КМД на каждой итерации моделирования в диссертационной работе разработан новый метод, позволяющий выявить ограниченный набор сущностей из общего их числа. Выявление общесистемных сущностей является ключевым шагом Технологии, необходимым как для решения основной задачи – понижения размерности КМД – так и для обеспечения логической целостности информационного и программного обеспечения, разрабатываемого на основе результатов моделирования предметной области. Для эффективного применения в составе промышленной Технологии, реализация метода должна обладать следующими свойствами: • формализованный характер;

• независимость от базовых методов анализа;

• независимость от размерности исходных данных;

• адаптируемость к условиям конкретного проекта. Метод выявления общесистемных сущностей должен быть формализованным, поскольку на данном шаге закладывается интегрирующая основа результатов всего проекта, для чего необходимо ограничить влияние субъективных факторов, связанных с личностными качествами и квалификацией исполнителей. Независимость от базовых методов не может быть абсолютной. Выше были может сформулированы трактоваться как обязательные отсутствие свойства базовых методов для по применения в составе Технологии. Для данного шага свойство независимости дополнительных ограничений применению базовых методов по сравнению с ограничениями Технологии. Независимость от размерности исходных данных также не может быть абсолютной, т.к. очевидно, что трудоемкость выполнения даже простейших формальных операций растет при увеличении количества операндов. Однако данное свойство следует трактовать таким образом, что зависеть от размерности Свойство могут только формальные операции, наличие допускающие параметров, автоматизацию, при которой трудоемкостью их выполнения можно пренебречь. адаптируемости подразумевает позволяющих учесть специфические свойства конкретного проекта без изменения формализованной логики реализации. Под свойствами конкретного проекта понимаются также свойства предметной области. Предлагается метод выявления общесистемных сущностей предметной области (далее – Метод), исходными данными для которого являются результаты функционального моделирования, содержащие единые глоссарии проекта (ГлД и ГлС). Метод основан на систематизации сущностей с учетом их значимости в функциональной модели. При этом характеристики значимости сущностей рассматриваются на уровне абстракции, соответствующем данной итерации моделирования. Это означает, что в характеристиках значимости учитывается только факт использования сущностей в процессах рассматриваемого уровня, а не количественные характеристики внутри них, что позволяет выявлять общесистемные сущности в контексте данной итерации. Структурная схема Метода приведена на рисунке 6.

Метод сущностей использует формализуются документов в качестве исходных в данных результаты функционального моделирования. В частности, глоссарии документов и на первом шаге в матрицы, отражающие а также соответствие использование бизнес-процессах, документов и сущностей. Преобразование матриц, соответствующее шагам Метода будет показано дальше. Содержательно, на втором шаге производится переход от использования документов в бизнес-процессах к использованию в них сущностей. Далее определяются абсолютные, а затем относительные характеристики использования сущностей. И, наконец, производится отбор подмножества общесистемных сущностей, характеристики использования которых превышают некоторое пороговое значение, определяемое коэффициентом Kmin. Шаг 1. Формализация результатов моделирования. Исходными данными для выявления общесистемных сущностей предметной области являются предложенные выше Глоссарий Документов и Глоссарий Сущностей, которые полностью сформированы к началу данной стадии моделирования. На основании Глоссариев строятся следующие прямоугольные матрицы: • А(M,N) – отражает соответствие СПО и ДПО, т.е. атрибуты каких СПО входят в состав каких ДПО, где o M – количество СПО (элементов Глоссария Сущностей);

o N – количество ДПО (элементов Глоссария Документов);

o aij {0, 1}, где 1 – означает, что атрибуты i-го СПО содержатся в j-м ДПО;

0 – в противном случае.

• B(N,L) – отражает соответствие ДПО и бизнес-процессов функциональной модели «как надо», т.е. какие ДПО используются в каких бизнес-процессах, где: o L – количество бизнес-процессов в функциональной модели «как надо»;

o bij {0, 1}, где 1 – означает, что i-й ДПО связан с j-м бизнес-процессом;

0 – в противном случае. Прямоугольная матрица A отражает взаимное соответствие элементов Глоссария Документов и Глоссария Сущностей, которые в общем случае имеют связь типа «многие ко многим». Смысл данной связи заключается в том, что элементы Глоссария Документов содержат атрибуты сущностей. При этом связь между ДПО и СПО имеет тип «многие ко многим», т.е. многие ДПО могут иметь атрибуты одной и той же СПО, а также один ДПО может содержать атрибуты многих СПО, т.к. ДПО по своей природе не являются нормализованными информационными элементами. Прямоугольная матрица B отражает соответствие элементов Глоссария Документов и бизнес-процессов функциональной модели. Под термином «бизнес-процесс» могут пониматься ветви функциональной модели «как надо». Для формального применения предложенного Метода бизнес-процессы должны удовлетворять следующим условиям: • бизнес-процессы не должны иметь пересечений в модели;

• бизнес-процессы в совокупности должны полностью покрывать процессы нижнего уровня функциональной модели. Выявление и адекватное представление бизнес-процессов в функциональной модели является задачей второго шага Технологии – построение функциональной модели «как надо», решение которой основано на применении методов реорганизации бизнес-процессов. Качество выполнения данного шага определяет качество результатов выявления ОСПО посредством предлагаемого Метода. При этом, формально, для его применения достаточно любой функциональной модели, т.к. ее ветви могут рассматриваться в качестве бизнес-процессов. Под соответствием i-го ДПО j-му бизнес-процессу понимается наличие iго ДПО на хотя бы одном информационном потоке нижнего уровня функциональной иерархии j-го бизнес-процесса. Шаг 2. Определение соответствия СПО и бизнес-процессов. Для выявления общесистемных сущностей необходимо рассматривать характеристики использования сущностей в бизнес-процессах, переход к которым от характеристик документов производится на данном шаге. Переход реализован посредством умножения матриц и приведения значений результата: С(M,L) = A(M,N) * B(N,L) cij = sign cij где • С(M,L)– отражает соответствие СПО и бизнес-процессов функциональной модели, o cij {0, 1}, где 1 – означает, что i-й СПО используется в j-м бизнес-процессе;

0 – в противном случае. Операция умножения матриц, отражающих взаимные соответствия СПО и ДПО (матрица А), ДПО и бизнес-процессов (матрица B), позволяет определить соответствие СПО и бизнес-процессов (а точнее использование сущностей в бизнес-процессах), что отражается прямоугольной матрицей C размера M на L. (1) (2) Приведение значений элементов матрицы С к множеству {0, 1} выполняется потому, что для выявления общесистемных элементов необходимо рассматривать характеристики значимости сущностей на уровне абстракции, соответствующем данной итерации моделирования. Это означает, что в характеристиках значимости учитывается только факт использования сущностей в процессах рассматриваемого уровня, а не количественные характеристики внутри них, что позволяет выявлять общесистемные сущности в контексте данной итерации. Таким образом, бизнес-процессы рассматриваются как «черные ящики». Шаг 3. Определение абсолютных количественных характеристик использования СПО. Определение абсолютных количественных характеристик использования СПО выполняется путем построчного суммирования элементов матрицы С, в результате чего получается di = где • D(M)– содержит абсолютные количественные характеристики использования СПО в функциональной модели предметной области, o di принадлежит множеству натуральных чисел и представляет собой коэффициент использования СПО в бизнес-процессах показывающий количество бизнес-процессов, к которым имеет отношение i-я СПО, причем наличие элементов равных 0 показывает некорректное состояние модели предметной области. Шаг 4. Определение относительных количественных характеристик использования СПО. матрица-столбец D, содержащая искомые (3) количественные характеристики в разрезе каждой СПО.

L j cij Определение относительных характеристик использования СПО выполняется путем деления матрицы-столбца D, содержащей абсолютные характеристики, на скалярное число, соответствующее количеству бизнеспроцессов в модели, в результате чего формируется матрица-столбец E: E(M) = 1/L * D(M) где • E(M)– содержит относительные коэффициенты использования СПО в функциональной модели предметной области o 0 <= ei <= 1 – показывает коэффициент использования i-го СПО в модели предметной области, причем наличие элементов равных 0 показывает некорректное состояние модели предметной области. Коэффициент использования СПО (Ки) показывает долю бизнеспроцессов, в которых данная СПО используется. Шаг 5. Формирование перечня общесистемных сущностей. Формирование перечня ОСПО производится путем выбора из матрицыстолбца E тех элементов, которые удовлетворяют критерию признания сущности общесистемной: fj = ei, если ei >= Kmin где • F(P) – представляет собой искомый перечень ОСПО, где o P – количество ОСПО;

• Kmin – Коэффициент минимального использования ОСПО, определяющий минимальное значение коэффициента использования СПО в бизнеспроцессах для признания данной СПО общесистемной. Действие, описываемое выражением (5), соответствует проекции вектора в M-мерном пространстве (матрица-столбец E), на P-мерное пространство, где (5) (4) P соответствует количеству измерений, координата по которым не меньше заданного коэффициентом Kmin порогового значения. Таким образом, сущность предметной области (СПО) признается общесистемной функциональной бизнес-процессы количественные учитываются. Коэффициент Kmin характеризует свойства предметной области. Его значение экспериментально определяется для предметной области и может корректироваться для конкретного проекта. В главе 3 приводится экспериментальная оценка значений данного коэффициента для банковской предметной области. Значение данного коэффициента будет отличаться при применении метода на разных итерациях моделирования. При этом наиболее важное значение имеет величина коэффициента для первой итерации (моделирование предметной области в целом), т.к. эта итерация оказывает определяющее влияние на логическую целостность всего проекта. Предлагаемый Метод формализует выявление общесистемных сущностей предметной области посредством математического аппарата теории матриц и логических операций. Исходными данными являются результаты функционального моделирования, включающие единые глоссарии проекта. Применение данного Метода может быть автоматизировано в случае использования инструментальных средств функционального моделирования и ведения глоссариев. Выбор аппарата теории матриц обусловлен формой представления исходных данных (глоссариев), позволяющей их преобразование (ОСПО), модели если равен коэффициент или в превышает качестве ее использования пороговое в значение, т.е. не определяемое Коэффициентом минимального использования ОСПО. При этом рассматриваются характеристики «черных СПО ящиков», них использования внутри в прямоугольные матрицы, а также удобством применения и автоматизации математических операций над матрицами. Метод не имеет дополнительных к общей Методике ограничений на применение базовых методов анализа, что позволяет считать его независимым от базовых методов в указанной выше трактовке данного свойства. Применение объектно-ориентированных базовых методов при условии построения иерархических функциональных моделей может приводить к трактовке сущностей предметной области как кандидатов в классы с соответствующим изменением трактовки Глоссария Сущностей и Метода выявления общесистемных сущностей, не меняя при этом содержания и физического смысла самого Метода. Операции Метода, зависящие от размерности исходных данных, являются формальными и легко автоматизируемыми, что позволяет пренебречь их трудоемкостью и считать Метод независящим от размерности исходных данных. Метод адаптируется к условиям конкретного проекта за счет выбора Коэффициента минимального использования ОСПО, в котором учитываются специфические свойства, как предметной области, так и самого проекта. Таким образом, предложенный Метод удовлетворяет приведенным выше требованиям. Разработанный метод позволяет ограничить размерности КМД на каждой итерации моделирования, обеспечивая при этом логическую целостность модели и, таким образом, решить третью задачу диссертационной работы. Применение Метода позволяет, во-первых, обеспечить более качественное выявление интегрирующей основы проекта по сравнению с субъективной оценкой значимости информационных объектов аналитиками. Во-вторых, результатами данного метода являются матрицы, содержащие формализованную информацию об использовании сущностей в бизнес процессах, что позволяет решать различные задачи в процессе проектирования архитектуры системы и определения порядка реализации элементов проекта снижая их взаимную зависимость за счет первоочередного проектирования и реализации общих объектов на каждой итерации спирального ЖЦ. 2.5. Выводы Разработана технология коллективного моделирования предметной области большой размерности, основанная на положениях современных методов анализа и предложенных выше новых результатах, удовлетворяющая требованиям, предъявляемым к промышленным методам моделирования. Технология решает поставленные в диссертации задачи. В составе Технологии получены следующие новые результаты: 1. Предложен новый критерий глубины детализации функциональной модели предметной области (параграф 2.2), отличающийся тем, что он основан на свойствах информационных объектов, представленных на потоках данных нижнего уровня функциональной модели. Критерий обеспечивает необходимый и достаточный уровень детализации функциональной модели. 2. Предложены новые критерии верификации (параграф 2.3), позволяющие формализовать контроль полноты состава информационных объектов в модели предметной области. Критерии отличаются тем, что они являются формализованными и используют взаимосвязанные глоссарии информационных объектов двух типов. 3. Разработан новый метод выявления общесистемных сущностей (параграф 2.4), отличающийся тем, что он является формальным, не зависящим от размерности, конкретного подмножество адаптируемым проекта. сущностей, к предметной позволяет области и условиям выявить на Метод объективно оказывающих наибольшее влияние сцепление бизнес-процессов, и ограничить размерность информационной модели в процессе ее построения. Метод реализован посредством аппарата теории матриц, исходной информацией для которого являются единые глоссарии проекта, сформированные в результате построения и анализа функциональной модели. Применение Метода может быть автоматизировано, а его результаты могут использоваться на последующих этапах проекта для решения различных задач.

ГЛАВА 3. Экспериментальные исследования банковской предметной области 3.1 Задачи экспериментальных исследований Задачами экспериментальных исследований диссертационной работы являются: 1. Сравнение характеристик стабильности и размерности информационного и функционального аспектов банковской предметной области. 2. Определение характеристик сцепления бизнес-процессов предметной области по информационным сущностям. 3. Оценка значения коэффициента минимального использования ОСПО (Kmin) для банковской предметной области. Для решения первой задачи вводятся следующие понятия: • стабильность функциональной (информационной) составляющей предметной области – характеристика, отражающая количество изменений соответствующих элементов модели предметной области за заданный период времени;

• размерность функциональной (информационной) составляющей предметной области – характеристика, отражающая количество соответствующих элементов функциональной (информационной) модели. Решение целесообразности предметной Вторая характеристик данной выбора в области задача задачи качестве необходимо источника в для подтверждения составляющей основы элементов информационной интегрирующей программного проекта. заключается экспериментальном (сцепления) исследовании взаимной зависимости бизнес-процессов функциональной модели в банковской предметной области и влияния на них характеристик использования информационных сущностей в бизнес-процессах. Для решения данной задачи далее вводятся количественные характеристики сцепления бизнес-процессов по информационным сущностям, для чего используются элементы комбинаторики. Решение второй задачи необходимо, т.к. именно эти свойства предметной области определяют возможность понижения размерности информационной модели при одновременном сохранении ее логической целостности, что является одной из задач диссертационной работы. Задача оценки значения коэффициента минимального использования ОСПО для банковской предметной области также решается на основе исследования характеристик взаимной зависимости бизнес-процессов функциональной модели посредством аппарата математического анализа. Решение данной задачи необходимо для применения Метода выявления общесистемных сущностей в банковской предметной области. Исследования проводились на основе материалов программных проектов, выполненных в банковской предметной области. В качестве исходных данных использовались материалы следующих проектов: • АСОБИ Сбербанк (разработчик – СП КОМПАН);

• ProjectBank (разработчик - ЗАО МакроПроджект);

• BankManager (разработчик - ТОО Деловые Консультации);

• Правление (разработчик - С.Петербургский банк Сбербанка России);

• АСОФ СПб (разработчик - ЗАО Телеформ);

• ГАММА (разработчик – Центральный Аппарат Сбербанка России);

• ЛАРОС NT 2000 (разработчик – ЗАО Илка). АСОБИ Сбербанк. АСОБИ – Автоматизированная Система Обработки Банковской Информации – была разработана Советско - Германским совместным предприятием КОМПАН для автоматизации отделений Сбербанка России. В период с 1991 по 1997 год система работала в отделениях СанктПетербургского и Ростовского банков Сбербанка России.

В качестве начального этапа в данном проекте выполнялось обследование, в процессе которого были сформированы спецификации, описывающие функции и данные предметной области. CASE системы и диаграммные техники не применялись, однако степень детализации спецификаций позволяет рассматривать их как описание нижнего уровня функциональной модели, детализированной до документов предметной области. ProjectBank. Проект ProjectBank разрабатывался ЗАО МакроПроджект на базе Омского банка Сбербанка России. В результате обследования и анализа предметной области была построена модель предметной области, содержащая диаграммы потоков данных (ДПД), выполненные в CASE-системе CASE.Аналитик, спецификации процессов и модель данных, выполненная в нотации диаграмм «сущность-связь» с использованием CASE-системы ERWin. Высокая квалификация аналитиков и последовательность в применении методов структурного анализа позволяет использовать материалы проекта в исследованиях данной работы. BankManager. Система BankManager разработана ТОО Деловые Консультации для автоматизации функций коммерческого банка. Система используется в нескольких банках Санкт-Петербурга и других регионов. В процессе разработки системы функциональная модель предметной области не строилась, однако, разработанные спецификации в комплексе с информационной моделью позволяют использовать материалы проекта в приведенных исследованиях. Правление. разработана Автоматизированная банковская банком система «Правление» России для Санкт-Петербургским Сбербанка автоматизации функций головной конторы территориального банка Сбербанка России. Система используется в подразделениях аппарата Северо-Западного (ранее Санкт-Петербургского) банка СБ РФ с 1998 года по настоящее время. В работе [45] представлены применяемые в процессе разработки методы и количественные характеристики проекта. При обследовании предметной области в качестве базовой использовалась методология DATARUN. При этом DATARUN была скорректирована элементами предлагаемой в данной работе Технологии. В результате обследования была построена модель предметной области, состоящая из функциональной модели в виде ДПД в нотации Гейна/Сарсон (использовалась CASE-система SilverRun, модуль BPM), информационная модель в виде глоссариев и БКМД (использовалась CASEсистема SilverRun, модуль RDM), а также спецификаций, как процессов, так и информационных элементов предметной области. Материалы данного проекта являются наиболее полными для приводимых исследований. АСОФ СПб. Проект АСОФ СПб разрабатывался ЗАО Телеформ по заказу и при участии специалистов Санкт-Петербургского Сбербанка для автоматизации функций отделения Сбербанка. В процессе анализа предметной области были построены функциональная и информационная модели. Функциональная модель строилась в соответствии с положениями методологии DATARUN (нотация ДПД – Гейна/Сарсон) и применением CASE-системы SilverRun. Информационная модель была построена в нотации диаграмм «сущность-связь» с использованием CASE-системы ERWin. В состав модели также входят ГАММА. спецификации процессов и информационных ГАММА объектов предметной области. Автоматизированная система разработана Центральным Аппаратом Сбербанка России для автоматизации функций головной конторы и отделений Сбербанка. Моделирование предметной области в явном виде не проводилось. Однако в проекте выделены общесистемные объекты предметной области и соответствующие им общесистемные объекты автоматизированной системы. ЛАРОС NT 2000. Автоматизированная система ЛАРОС NT 2000 разработана ЗАО Илка для автоматизации функций отделений Сбербанка. В проекте частично использовались модели, построенные при разработке АСОФ СПб. В настоящее время разработка системы продолжается. 3.2 Исследование характеристик стабильности и размерности банковской предметной области Целью исследования является сравнение характеристик стабильности и размерности информационного и функционального аспектов банковской предметной области. Для целей исследования определим следующие термины: • функциональная составляющая (аспект) предметной области – это совокупность основных функциональных элементов модели предметной области (процессов) вместе с их спецификациями;

• информационная составляющая (аспект) предметной области это совокупность основных информационных элементов модели предметной области (сущностей предметной области) вместе с их спецификациями;

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

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

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

• К (t) – коэффициент изменения какой-либо составляющей предметной области за период времени t. Тогда: S (t) = 1 / К (t) При этом: К (t) = 1 + где • nj (t) – количество изменений j-го элемента за период t;

• R – количество элементов какой-либо составляющей. Из формулы (7) следует, что К (t) >= 1, из чего на основании формулы (6) следует область значений S (t): 0 < S (t) <= 1 Ввод количественных характеристик стабильности (8) позволяет (6) nj (t) / R (7) R j осуществить сравнение исследуемых составляющих по данному показателю.

Для проводимых исследований выбор периода времени t принципиального значения не имеет, поскольку важны не абсолютные характеристики стабильности различных аспектов предметной области, а их соотношение между собой за одинаковый период времени. Однако, очевидно, что нецелесообразно оценивать стабильность аспектов в период анализа предметной области, когда происходит постоянная корректировка состава и содержания элементов модели по причинам, не связанным с изменениями в самой предметной области. Также нецелесообразно учитывать этапы проектирования, реализации и внедрения системы, т.к. большая доля корректировок модели предметной области может быть связана с выявленными погрешностями моделирования. В результате, наиболее подходящими для данного исследования являются периоды времени после внедрения системы в промышленную эксплуатацию, т.к. тогда можно с большой вероятностью утверждать, что изменения в системе производятся по причине изменений в предметной области и экстраполировать количественные характеристики изменений проекта на предметную область, что допустимо для целей сравнения стабильности аспектов. Предложенный выше способ расчета коэффициента изменений (формула (7)) не учитывает сложности и объемов вносимых изменений, для чего необходимо вводить в формулу весовые коэффициенты. Такое упрощение допустимо В для целей работе данной работы, т.к. позволяет о сопоставить стабильности количественные характеристики двух аспектов. данной использовалась информация функциональной и информационной составляющих банковской предметной области, полученная из программных проектов, в которых существовал учет версий и сохранялась информация о содержании изменений применительно к элементам системы. Размерность. В таблице 1 приведены характеристики размерности функциональной и информационной составляющих банковской предметной области, выполненные на основании программных проектов. Для исследования были выбраны проекты, чьи материалы позволяли рассчитать требуемые характеристики в соответствии со сформулированным выше соответствием уровней детализации. Таблица 1 Пп Проект Размерность составляющей (количество элементов) Функциональной Rф 1 2 3 ProjectBank Правление АСОФ СПб 584 1787 413 Информационной Rи 97 136 Данные, приведенные в таблице 1, однозначно показывают, что размерность информационной составляющей существенно меньше (Rи << Rф) размерности функциональной составляющей предметной области. Большой разброс в абсолютных значениях объясняется следующими факторами: • различия в технологии моделирования;

• в проектах анализировались и моделировались не одинаковые фрагменты предметной области. Различия в технологии моделирования, оказывающие влияние на исследуемые характеристики, заключаются в применении разных критериев глубины детализации выше функциональной проектов модели. Однако, материалы используемых позволяли привести характеристики функциональных моделей к уровню, позволяющему пренебречь данным различием. Кроме того, различием в технологии моделирования можно пренебречь, поскольку для проводимых исследований важным является соотношение характеристик разных аспектов предметной области, полученный из одного проекта и не имеет принципиального значения разброс абсолютных значений в разных проектах. Различия в моделируемых фрагментах предметной области оказали наибольшее влияние на разброс абсолютных характеристик. Рамки предметной области для проектов ProjectBank и АСОФ СПб определялись функциональностью районных отделений (ОСБ) и филиалов Сбербанка, в то время как в проекте Правление моделировалась функциональность аппарата территориального банка. Функциональность ОСБ и филиалов имеет более регулярную структуру, чем функциональность аппарата территориального банка. Этим объясняется соизмеримость характеристик размерности функционального аспекта в проектах ProjectBank и АСОФ СПб, а также их многократное расхождение с проектом Правление. Стабильность. В таблице 2 приведены характеристики стабильности функциональной и информационной составляющих банковской предметной области, полученные на основании программных проектов. Для оценки характеристик был выбран период времени, соответствующий одному году с момента внедрения элементов системы в промышленную эксплуатацию. При этом плановое развитие систем, т.е. разработка новых элементов и развитие функциональности действующих, не учитывалось.

Таблица 2 Пп Проект Стабильность составляющей Функциональной Sф 1 2 3 4 АСОБИ Сбербанк Bank Manager Правление ГАММА 0.32 0.51 0.61 0.60 Информационной Sи 0.85 0.93 0.97 0. Данные, приведенные в таблице 2, однозначно показывают большую стабильность информационной составляющей предметной области по сравнению с функциональной (Sи > Sф). Большой разброс в абсолютных значениях объясняется следующими факторами: • различия в абсолютном времени, соответствующем периоду измерений;

• различия в области применения внедренной конфигурации, используемой для расчета. Различия в абсолютном времени периода измерений оказывают существенное влияние на характеристики за счет разницы в состоянии экономической среды России и темпах ее изменений. Например, период измерений проекта АСОБИ Сбербанк приходится на 1993 год, для которого характерна высокая инфляция, компенсация вкладов и связанные с ней новые операции, распространение новых банковских продуктов (например, банковские карты) и т.д. В отличие от АСОБИ, период измерений проектов Правление и ГАММА приходится на 1999-2000 годы, характеризующиеся относительной стабильностью экономической сферы России после кризисного 1998 года. Источником большинства изменений в банковских технологиях данного периода были сами банки, оптимизирующие свои бизнес-процессы в условиях конкурентной борьбы. Различия в области применения внедренных конфигураций также оказывает существенное влияние на абсолютные показатели стабильности исследуемых участков предметной области. Например, основная функциональность АСОБИ Сбербанк в измеряемый период была сосредоточена на уровне филиалов Сбербанка по обслуживанию физических лиц, в отличие от других проектов, чья функциональность преимущественно была сосредоточена на уровне подразделений аппарата территориального банка и Центрального Аппарата Сбербанка России. Таким образом, в результате проведенных исследований однозначно показано, сравнению что с в банковской предметной области что информационная подтверждает составляющая является более стабильной и имеет меньшую размерность по функциональной составляющей, целесообразность выявления интегрирующей основы предметной области именно в информационном аспекте. 3.3 Исследование характеристик сцепления бизнес-процессов по информационным сущностям Задачами данного экспериментального исследования являются: • определение характеристик сцепления бизнес-процессов и их зависимости от распределения сущностей по коэффициентам использования;

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

Решение второй задачи необходимо для применения Метода выявления общесистемных сущностей в банковской предметной области. В [22] определяются следующие виды сцепления бизнес-функций: • сцепление по данным – при вызове передаются элементарные информационные объекты;

• сцепление по шаблону – при вызове передается хотя бы один составной объект;

• сцепление по управлению – при вызове передается управляющий объект;

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

• сцепление по содержимому – одна функция ссылается внутрь другой. Данная классификация и определения видов больше ориентированы на анализ сцепления программных элементов, соответствующих бизнесфункциям, чем на анализ функциональной модели предметной области. Для целей проводимого исследования можно не учитывать сцепление по управлению и сцепление по содержимому, т.к. эти виды сцепления не имеют прямой связи с информационными объектами предметной области. Все остальные виды сцепления целесообразно рассматривать как единый вид, соответствующий сцеплению по общей области. Такое упрощение для данного исследования допустимо, т.к. все совмещаемые виды сцеплений отражают информационную взаимозависимость бизнес-процессов, которую можно представить как использование одних и тех же информационных сущностей. Для расчета количественных характеристик сцепления бизнес-процессов по информационным сущностям введем коэффициент информационного сцепления функциональной модели (Kc): Kc = где • Mpj – количество общих информационных сущностей (СПО) у j-й пары бизнес-процессов функциональной модели;

N ( N 1) / 2 j Mpj * 2 / N(N-1) (9) • N – количество бизнес-процессов в функциональной модели;

• N(N-1) / 2 – количество пар бизнес-процессов. Коэффициент сцепления функциональной модели по информационным сущностям отражает среднее количество общих сущностей для одной пары бизнес-процессов. Для анализа материалов программных проектов и расчета по ним количественных характеристик были сделаны следующие допущения: • первый расчет Kc учитывал значения Mpj, в которое входили все общие СПО у пары бизнес-процессов;

• второй расчет Kc учитывал значения Mpj, в которое входили только СПО, не попавшие в перечень ОСПО при их выявлении. Приведенные выше условия расчета дают возможность оценить влияние общесистемных сущностей на совокупные количественные характеристики сцепления функциональной модели. В таблице 3 приведены характеристики сцепления, рассчитанные в соответствии с формулой (9) и приведенными выше условиями по материалам проектов, выполненных в банковской предметной области. Для данного исследования были выбраны проекты, чьи материалы (модели и/или спецификации) позволяли рассчитать требуемые характеристики. Таблица 3 Характеристика Количество бизнеспроцессов Сущностей предметной области (СПО) Общесистемных сущностей предметной области (ОСПО) Kc (с учетом всех сущностей) Kc (без учета ОСПО) Правление 11 136 12 12.53 4.27 АСОФ СПб 8 117 11 10.07 3.9 ProjectBank 7 97 7 8.14 2. Различия в количественных характеристиках исследуемых проектов объясняются следующими причинами: • проекты разрабатывались для разных уровней банковской предметной области;

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

• полнота и качество проектных материалов. Погрешности в определении перечня ОСПО выбранных проектов для целей данного исследования допустимы, т.к. некачественное выявление ОСПО приводит к сближению оцениваемых характеристик, а результаты данного исследования показывают их существенное отличие. Точная количественная оценка исследуемых характеристик не являлась предметом рассмотрения данной работы. Таким образом, в результате проведенных исследований в банковской предметной области показано наличие небольшой доли информационных сущностей (менее 10%), оказывающих определяющее влияние на сцепление бизнес-процессов, что позволяет выявлять общесистемные сущности и существенно понижать совокупную сложность разработки системы по частям за счет первоочередной обработки общесистемных объектов. Оценка значения Коэффициента минимального использования (Kmin) выполняется в соответствии с целями Метода и Методики коллективного моделирования предметной области большой размерности. Значение данного коэффициента должно позволять выявить небольшое количество общесистемных сущностей, оказывающих наибольшее влияние на сцепление сцепления бизнес-процессов функциональной модели. Потребность необходимостью в небольшом количестве ОСПО и, определяется следовательно, существенно понизить размерность сложность информационной модели в процессе моделирования предметной области. Кроме того, на следующих этапах проекта ОСПО проектируются в первоочередном порядке и становятся ядром разрабатываемой системы, задаваемым в качестве исходной проектной информации для последующего параллельно-последовательного процесса разработки подсистем. Само первоочередное проектирование ОСПО в условиях большой размерности, как предметной области, так и проекта, должно быть существенно меньше по трудоемкости, чем проектирование всех информационных элементов. Поэтому количество ОСПО должно быть существенно меньше общего количества СПО. График распределения сущностей по коэффициентам использования для трех проектов, выполненных в банковской предметной области, приведен на рисунке 7. При этом коэффициент использования i-й СПО рассчитывается следующим образом: Ki = Ri / N где • N – количество бизнес-процессов в функциональной модели;

• Ri – количество бизнес-процессов, с которыми связана i-я СПО. На рисунке 7 количеству СПО соответствует площадь под кривой на выбранном интервале значений коэффициентов использования. (10) Графики распределения сущностей по коэффициентам использования показывают, что большинство сущностей (около 80%) имеют малые коэффициенты использования (около 0.2), определяющие их локальную значимость для отдельных бизнес-процессов. Вместе с тем существует небольшая, но компактная группа сущностей (около 10%), имеющих большие значения коэффициентов использования (около 0.8), что определяет их общесистемный характер. Это те же 10% сущностей, которые оказывают наибольшее влияние на сцепление бизнес-процессов. Количество остальных сущностей достаточно мало и практически равномерно распределяется по интервалу средних значений коэффициентов использования (от 0.3 до 0.8). Форма кривых, представленных на рисунке 7, носит тот же характер (один глобальный и один явно выраженный локальный экстремум), что и графики распределения количества связей между программными модулями, приведенные в работе [54]. Аналогичная форма кривых приведена в работе [27] для распределения модулей программного обеспечения по количеству операторов ветвления. Такое совпадение позволяет предположить единую природу характеристик сложности и связности модульных объектов. Для определения влияния характеристик использования сущностей на коэффициент сцепления функциональной модели построим график функции: Kc = f(N) где - N – количество сущностей в процентах от общего их числа;

- Kc – коэффициент информационного сцепления функциональной модели. При этом сущности, количество которых указано по оси абсцисс, упорядочены по убыванию их коэффициентов использования. (11) На рисунке 8 представлены графики данной функции, построенные по материалам трех проектов, выполненных в банковской предметной области. Из графиков видно, что 10-15% сущностей с наибольшими коэффициентами использования оказывают наибольшее влияние на суммарное сцепление модели, что соответствует самому крутому участку кривой. Следовательно, для обеспечения логической целостности информационной модели, а также результатов последующих этапов, эти сущности обязательно должны войти в состав модели данных. Остальные же сущности оказывают существенно меньшее влияние на сцепление. Следовательно, ими можно заниматься на последующих итерациях, где будет вестись работа с частями модели. Таким образом это 10-15% сущностей должны войти в состав общесистемных сущностей. Дальнейшее увеличение количества ОСПО не дает существенного понижения связности бизнес-процессов предметной области. На рисунке показано количество общесистемных сущностей для конкретного проекта, которое соответствует окончанию наиболее крутого участка графика. Также на рисунке показана область общесистемных сущностей в банковской предметной области, которая получена путем статистической обработки данных различных нескольких проектов. Статистическая обработка производилась посредством кусочно-линейной аппроксимации методом наименьших квадратов, в результате чего для каждого проекта определялась координата окончания наиболее крутого участка (наибольшее влияние на сцепление модели). Затем вычислялось среднее арифметическое значение координаты, соответствующей количеству ОСПО для банковской предметной области. Область, соответствующая вычисленной координате, показана на рисунке 8.

Сопоставление участка резкого понижения кривых рисунка (соответствует количеству ОСПО около 10% от общего числа сущностей) с графиком распределения СПО по коэффициентам использования (рисунок 7), позволяет Рисунок 7 выявить наиболее что эффективное область второго значение локального коэффициента экстремума, минимального использования ОСПО (Kmin) в банковской предметной области. показывает, соответствующего требуемому количеству СПО с высокими значениями коэффициента использования, находится в интервале (0.8 – 1.0). Кроме характеристик предметной области, на выбор значения Kmin в конкретном проекте могут влиять различные дополнительные факторы. Например, выполнять количество квалифицированных общесистемных разработчиков, элементов, способных в проектирование потребность снижении сроков реализации первых функциональных элементов проекта за счет снижение уровня интеграции и логической целостности всего проекта в целом и т.д. Таким образом, результаты проведенного исследования показали: •в банковской предметной области существует небольшая доля информационных сущностей (менее 10%), связанных с большинством (около 80%) бизнес-процессов, что позволяет выявлять общесистемные сущности и понижать размерность концептуальной модели данных при первой итерации моделирования предметной области (моделирование предметной области в целом);

• в банковской предметной области целесообразно выявлять ОСПО на основе значения Kmin равного 0.8.

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

Pages:     || 2 |



© 2011 www.dissers.ru - «Бесплатная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.