Методологии моделирования предметной области

Структурная модель предметной области

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

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

К моделям предметных областей предъявляются следующие требо­вания:

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

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

Структурный аспект предполагает построение:

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

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

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

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

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

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

Оценочные аспекты моделирования предметной области связаны с разрабатываемыми показателями эффективности автоматизируемых процессов, к которым относятся:

  • время решения задач;
  • стоимостные затраты на обработку данных;
  • надежность процессов;
    • косвенные показатели эффективности, такие, как объемы производства, производительность труда, оборачиваемость капитала, рента­бельность и т.д.

Для расчета показателей эффективности, как правило, используют­ся статические методы функционально-стоимостного анализа (ABC) и динамические методы имитационного моделирования.

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

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

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

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

Далее концептуальная модель на внутреннем уровне отображается в виде файлов базы данных, входных и выходных документов ЭИС. При­чем динамические объекты представляются единицами переменной ин­формации или документами, а статические объекты — единицами услов­но-постоянной информации в виде списков, номенклатур, ценников, справочников, классификаторов. Модель базы данных как постоянно поддерживаемого информационного ресурса отображает хранение услов­но-постоянной и накапливаемой переменной информации, используе­мой в повторяющихся информационных процессах. 

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

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

На внешнем уровне моделирования определяется список основных бизнес-функций или видов бизнес-процессов. Обычно таких функций насчитывается 15—20.

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

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

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

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

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

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

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

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

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

На концептуальном уровне для каждого подразделения задается орга­низационно-штатная структура должностей (ролей персонала).

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

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

На внешнем уровне модели определяются типы технических средств обработки данных и их размещение по структурным подразделениям.

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

На внутреннем уровне строится модель «клиент - серверной» архитек­туры вычислительной сети.

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

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

Структурным анализом принято называть метод исследования системы, которое начинается с ее общего обзора, а затем детализируется, при­обретая иерархическую структуру с все большим числом уровней. Для таких методов характерно: разбиение на уровни абстракции с ограниченным числом элементов (от 3 до 7); ограниченный контекст, включающий только существенные детали каждого уровня; использование строгих фор­мальных правил записи; последовательное приближение к результату. Структурный анализ основан на двух базовых принципах — «разделяй и властвуй» и принципе иерархической упорядоченности. Решение труд­ных проблем путем их разбиения на множество меньших независимых за­дач (так называемых «черных ящиков») и организация этих задач в древо­видные, иерархические структуры значительно повышают понимание сложных систем. Определим ключевые понятия структурного анализа.

Операция — элементарное (неделимое) действие, выполняемое на од­ном рабочем месте.

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

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

Подпроцесс — это бизнес-процесс, являющийся структурным элемен­том некоторого бизнес-процесса, представляющий ценность для потреби­теля.

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

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