| | |
Автоматизация бизнеса. Моделирование бизнес-процессов
В последние годы активно развивается спецификация UML, предназначенная для описания функционирования сложных программных продуктов, основанных на объектно-ориентированных языках программирования. Хотя в рамках этой методологии рассматривается ряд диаграмм (например, Activity Diagram), которые можно использовать для описания процессов, в целом UML не применяется для описания бизнес-процессов организации.
В то же время концепция UML принципиально отличается от «традиционных» технологий (в частности, от блок-схем и электронных таблиц). Вместо того чтобы иллюстрировать изолированные части процесса, UML отдает предпочтение диаграммам верхнего уровня, позволяющим разработчикам скрывать детали и концентрироваться на функциональных особенностях, а не на последовательности действий. Данный подход предоставляет возможность начать с формирования общего взгляда на приложение, детали же раскрываются позже.
Язык UML предлагает набор инструментальных средств, позволяющих проводить всесторонний анализ сложных проектов как с технической точки зрения, так и с точки зрения потребностей бизнеса. Данный язык упрощает процесс проектирования, снижает его стоимость и повышает эффективность. Подход, выбранный разработчиками UML (которые создавали язык моделирования, а не язык программирования), позволяет архитекторам систем эффективно описывать классы, методы и связи между ними.
UML имеет четырехуровневую архитектуру:
- мета-метамодель;
- метамодель;
- модель;
- пользовательские объекты.
Пользовательские объекты определяют объекты конкретной предметной области. Модель является определенным взглядом на предметную область.
В UML существуют следующие модели (каждая модель представлена соответствующим типом диаграммы):
- модель вариантов использования (Use Case Model). Предназначена для описания требований к системе и подсистемам;
- модель классов (Class Model). Служит для описания статической структуры системы: иерархии классов и отношений между ними;
- модель взаимодействий: объекты (Collabo-ration Model) и сценарии (Sequence Model). Служит для описания механизмов взаимодействия объектов системы, реализующих ту или иную функцию;
- поведенческая модель диаграммы переходов и состояний (Behavior Model). Предназначена для описания алгоритмов поведения объектов системы;
- модель процессов: физическая архитектура системы (Deployment Model). Описывает распределение процессов по процессорам в физическом проекте системы;
- модель программных модулей (Component Model). Описывает распределение классов и объектов системы по модулям в физическом проекте системы;
- модель действий (Activity Model). Предназначена для описания алгоритмов системы (для методов классов, нескольких классов) и является вариантом поведенческой модели без сообщений.
Метамодель определяет язык описания моделей. В UML метамодель описывается с помощью диагруровне мета-метамодели рассматривается классификация подходов разработки программного обеспечения (ПО). Наибольшее распространение получили два семейства методов: структурные методы проектирования программных систем и объектно-ориентированные, приобретающие все большую популярность в последние годы.
Каждая из диаграмм, используемых в UML, позволяет рассматривать бизнес-процессы под определенным углом. К примеру, бизнес-пользователи при помощи данных диаграмм могут оценить основные положения бизнес-сценария и разобраться в том, кто за что отвечает. Разработчики же применяют диаграммы классов и объектов для получения точного представления о том, как встраивать данные компоненты в свой код.
Диаграммы объектов и классов описывают статическое состояние элементов системы в каждый конкретный момент, показывают структуру объектов, их атрибуты и взаимные связи. Диаграммы действий отображают управляющие потоки, идущие от одного действия к другому, а диаграммы вариантов использования иллюстрируют элементы, находящиеся за пределами системы.
Последовательность и взаимные связи диаграмм отражают интерактивные процессы: представлены не только объекты и классы, но и сообщения, которыми они обмениваются. Таким образом, с помощью системы можно моделировать ситуации, применяя обычную в таких случаях технологию «что, если» (what if). Диаграммы состояния используются для описания динамических объектов, часто отправляющих и принимающих сообщения. Наконец, диаграммы компонентов и развертывания предназначены для физического представления системы (в том числе исполняемых модулей, библиотек и интерфейсов).
Инструментальные пакеты UML (например, комплект разработчика IBM Rational Rose) содержат инструментальные средства, позволяющие легко создавать модели UML для бизнес-процессов и генерировать код на различных языках программирования (в том числе на Java, C++ и Visual Basic). Моделирующее программное обеспечение используется и для обратного проектирования уже существующих систем.
Последний вариант спецификаций UML содержит ряд улучшений, к которым относятся новые семантические конструкции, усовершенствованная организация и улучшенная читабельность документов, а также поддержка нового интерфейса XMI (XML Metadata Interchange). | |
|