На сегодняшний день все более чаще стали применяться средства, методы и технологии описания предметной области, которые максимально эффективно позволят пользователю разработать модели бизнес-процессов. Наиболее популярными являются такие как: Aris, Sadt, Rup и др. В данной статье остановимся подробнее на методологии Rup, которая занимает лидирующее место среди системных аналитиков. Было проведено исследование на примере предметной области предприятия – склада сырья и материалов, в котором рассмотрены подробные примеры моделирования бизнес-процесса склада по учету продукции. Модели бизнес-процессов (функциональные модели) описываются в методологии RUP с помощью диаграммы прецедентов, которая отображает системные прецеденты (use cases), системное окружение (действующих лиц или актеров – actors) и связи между прецедентами и актерами (диаграммы прецедентов – use cases diagrams), представлены на рис. 1. В нотации UML их чаще называют диаграммами вариантов использования. Основное назначение такой модели – предоставить возможность заказчику, конечному пользователю и разработчику совместно обсуждать функциональность и поведение системы. Для ее построения необходимо выяснить, какие задачи собирается решать пользователь с помощью системы.
Разработка модели прецедентов начинается с выбора актеров и определения общих принципов функционирования системы. Актеры не являются частью системы – они представляют собой кого-то или что-то, взаимодействующее с системой. Актеры могут: только снабжать информацией систему; только получать информацию из системы; снабжать информацией и получать информацию из системы.
Актеры делятся на три основных типа: пользователи системы, другие системы, взаимодействующие с данной, и время. На основании вышесказанного выделим следующих актеров для предметной области склада сырья и материалов: кладовщик (пользователь системы); отдел снабжения (другая система, взаимодействующая с данной); цех (другая система, взаимодействующая с данной); планово-производственный отдел (другая система, взаимодействующая с данной); бухгалтерия (другая система, взаимодействующая с данной); поставщик (другая система, взаимодействующая с данной) [1, 2].
Следующий элемент модели – прецедент. С помощью прецедентов (use cases) моделируется диалог между актером и системой. Другими словами, они определяют возможности, обеспечиваемые системой для актера. Набор всех прецедентов системы определяет способы ее использования. Можно сказать, что прецедент – это последовательность транзакций, выполняемых системой, которая приводит к значимому результату для определенного актера.
На основе обследования предметной области выделим следующие прецеденты: проверка соответствия количества и качества, оформление приходных документов, в противном случае – составление акта о приемке материалов в отдел снабжения, учет поступивших материалов, передача материалов на проверку в лабораторию, подготовка сырья к отпуску в производство, отпуск сырья в производство, который включает оформление расходных документов, а также вывод остатка лимита, прием неизрасходованных материалов из цеха, оформление отчетности для отдела снабжения, бухгалтерии, планово-производственного отдела [3, 4].
Для моделирования того, как будет реализовываться конкретный вариант использования в проектируемой системе, разрабатывается диаграмма взаимодействия или диаграмма последовательности действий. Она соответствует успешному варианту хода событий и не учитывает, что произойдет в случае ошибки, или если пользователь выберет другие действия. При этом одна диаграмма последовательности может описывать реализацию сразу нескольких вариантов использования, поскольку диаграмма вариантов использования показывает только то, что должна делать система в целом по представлению заказчика, а диаграмма последовательности показывает реализацию задачи системой. Для моделирования потоков работ в методологии RUP используют диаграммы действий (activity diagrams). Они отражают динамику предметной области и представляют собой схемы потоков работ в системе от действия к действию, а также параллельные действия и альтернативные потоки [5].
Следующие диаграммы показывают порядок действий при выполнении проверки соответствия фактически поступивших материалов с ожидаемыми. Для каждой альтернативы формируется своя диаграмма (рис. 2, 3).
Рис. 1. Диаграмма прецедентов – Use case diagram
Рис. 2. Диаграмма последовательности – Sequence diagram
Рис. 3. Диаграмма последовательности – Sequence diagram
В процессе создания диаграммы последовательности создаются классы, которые соотносятся с объектами диаграммы. Пунктирными стрелками на диаграмме обозначены сообщения между объектами, обычные стрелки – сообщения, соотнесенные с конкретными операциями, назначаемые классу. Кооперативная диагр., или диагр. взаимодействия, отображает взаимодействие между объектами в более наглядном виде, но, в отличие от предыдущей диаграммы, не делает упор на последовательности действий (рис. 4, 5).
Рис. 4. Диаграмма классов – Class diagram
Рис. 5. Диаграмма сотрудничества – Collaboration diagram
Данные модели могут применять в своей деятельности не только «айтишники», специалисты в организации, но и студенты направлений подготовки «Прикладная информатика», «Бизнес-информатика». Более подробнее все диаграммы по данной предметной области описаны в другой статье.