УДК 004021 Г.Н. Калянов
DOI: http://dx.doi.org/10.21686/1818-4243-2017-4-21-26
Институт проблем управления РАН, Москва, Россия
Концептуальная модель DFD-технологии
Наличие большого количества моделей и методов структурного моделирования бизнес-процессов и систем сделало актуальной разработку унифицированного языка структурного анализа и проектирования, пригодного для моделирования как организационно-управленческих, так и программных систем (по аналогии с UML, решающим подобную задачу в рамках обектно-ориен-тированного проектирования систем).
В статье предлагается проект такого языка, базирующегося на диаграммах потоков данных (DFD-диаграммах) как средстве, наиболее часто применяемом при функциональном структурном моделировании.
В рамках работ в данном направлении предлагается концептуальная модель языка, названного DFD-технологией, интегрирующая структурных модели различных назначений на базе DFD-диаграммы, и позволяющая отражать функциональные, информационные и поведенческие аспекты моделируемого объекта.
Также в статье анализируются синтаксис, семантические и прагматические аспекты введенного унифицированного языка моделирования.
Для формального описания синтаксиса предлагается применять аппарат смешанных грамматик, являющихся комбинацией графовых и обычных грамматик. В статье дается описание грамматики, порождающий простейший диалект DFD-технологии, неформально описаны семантические аспекты языка, в частности семантика отношений между объектами языка.
Таким образом, в статье предложено решение задачи унификации и стандартизации структурных языков моделирования, базирующееся на интегрированной DFD-технологии. Построена концептуальная модель технологии, детально описан синтаксис унифицированного языка с использованием аппарата смешанных грамматик, рассмотрены семантические аспекты языка. Следует отметить, что предложенные в статье методы и модели занимают одно из центральных мест в современной теории бизнес-процессов.
Ключевые слова: язык структурного моделирования, DFD-технология, графовая и смешанная грамматики, синтаксис и семантика языка моделирования.
Georgiy N. Kalyanov
Institute of Control Sciences of Russian Academy of Sciences, Moscow, Russia
The conceptual model of DFD-technology
The presence of large number of models and methods for structural modeling of business processes and systems has made urgent the development of standardized language for structural analysis and design, suitable for modeling as organizational management, and software systems (similar to UML for the object-oriented systems' design).
The paper proposes a draft of such a language based on data flow diagrams (DFD diagrams) as the most frequently used in functional structural modeling.
As part of the work in this direction a conceptual model language is
proposed, named DFD-technology, integrating structural models for
different purposes based on DFD-diagrams, and reflecting functional,
informational and behavioral aspects of the modeled object.
The article also analyzes the syntax, semantic and pragmatic aspects
of the introduced unified modeling language.
For a formal description of the syntax, it is proposed to use the ap-
paratus of the mixed grammars, a combination of graph and regular grammars. The article gives a grammar description to generate a simple dialect of DFD technology, informally described semantic aspects of language, particularly the semantics of relations between objects of the language.
Thus, the paper proposed a solution of unification and standardization problem of structural modeling languages, based on the integrated DFD-technology. The conceptual model of the technology is prepared, the syntax of the standardized language, using the technique of the mixed grammar and the semantic aspects of the language are described in detail.
It should be noted that the proposed methods in the article and models occupy the central place in modern business processes theory.
Keywords: structural modeling language, DFD technology, graph and mixed grammar, syntax and semantics of the modeling language.
1. Введение
Решенная для объектного подхода (за счет введения UML - Unified Modeling Language) задача унификации и стандартизации языков моделирования требует своего решения и для структурного подхода. Фактически, насущно необходимым является создание унифицированного языка структурного анализа и проектирования [1, 17], пригодного
для моделирования как организационно-управленческих, так и программных систем, и обладающего следующими характеристиками:
• выразительностью, позволяющей рассматривать систему с различных позиций — функциональной, информационной, поведенческой;
• простотой в понимании и использовании;
• преемственностью в рамках цикла моделирования — от
бизнес-моделей до моделей требований и проектных решений по программным компонентам, поддерживающим процесс решения бизнес-проблем.
2. Концептуальная модель
Предлагаемое решение базируется на ЭРЭ-технологии, являющейся наиболее полной в части обладания вышеперечисленными характеристика-
ми среди современных классических структурных подходов (таких как, например, комплексная IDEF-технология, включающая в себя модели IDEF0, IDEF1X, IDEF3 или, так называемая, «методология» ARIS). В качестве альтернативного подхода к решению данной задачи необходимо отметить исследования [2], основанные на онтологических моделях структурных языков.
Для дальнейшего изложения материала необходимо напомнить, что в основе классической DFD-технологии [3, 16] лежат три группы средств моделирования:
• диаграммы, иллюстрирующие функции, которые система должна выполнять, и связи между этими функциями — для этой цели используются собственно диаграммы потоков данных DFD (Data Flow Diagrams), дополненные словарями данных и спецификациями процессов нижнего уровня;
• диаграммы, моделирующие данные и их взаимосвязи — для этой цели используются диаграммы «сущность-связь» ERD (Entity-Relationship Diagrams);
• диаграммы, моделирующие поведение системы — для этой цели используются диаграммы переходов состояний STD (State Transition Diagrams).
Все эти диаграммы содержат графические и текстовые средства моделирования: первые — для удобства демонстрирования основных компонент модели, вторые — для обеспечения точного определения ее компонент и связей.
Основой и связующей средой комплексной модели является диаграмма DFD, которая демонстрирует внешние по отношению к системе адресаты и адресанты данных, идентифицирует логические функции (процессы) и группы элементов данных, связывающие одну функцию с другой (потоки), а также идентифицирует нако-
пители (хранилища) данных, к которым осуществляется доступ. Структуры потоков данных и определения их компонент хранятся и анализируются в словаре данных. Каждая логическая функция (процесс) может быть детализирована с помощью DFD нижнего уровня; когда дальнейшая детализация перестает быть полезной, переходят к выражению логики функции при помощи спецификации процесса нижнего уровня (миниспецификации). Содержимое каждого накопителя также сохраняют в словаре данных, модель данных накопителя раскрывается с помощью ERD. В случае построения поведенческой модели DFD дополняется средствами описания зависящего от времени поведения системы, раскрывающимися с помощью STD. Эти связи показаны на рис. 1.
Предлагаемая концептуальная модель DFD-технологии содержит четыре базовых компонента:
• словарь языка;
• синтаксис языка;
• комплект абстрактных семантических правил/процедур;
• аспекты языковой прагматики.
Словарь языка включает три вида основных строительных блоков: объекты, отношения и диаграммы. При этом объекты являются базовыми неделимыми элементами (алфавитом языка), отношения связывают объекты в смысловые блоки (слова), диаграммы группируют слова в «осмысленные» фразы и предложения.
В самом общем виде в языке имеется 3 типа объектов: функциональный объект (процесс, подсистема, миниспецифика-ция, модуль, дискриминатор и др.), информационный объект (внешняя сущность, накопитель, информационный канал, сущность, событие, область данных и др.) и поведенческий объект (управляющий процесс, состояние и т.п.).
Отношения между объектами определяют их взаимодействие посредством информационных потоков и управляющих сигналов или обеспечивают структурную организацию объектных конгломератов (иерархия, обобщение и т.п.).
Рис. 1. Схема DFD-технологии
Диаграмма, в свою очередь, является совокупностью слов, представленной в виде направленного графа с вершинами, соответствующими объектам, и ребрами, соответствующими отношениям. Язык включает шесть типов диаграмм:
• контекстная диаграмма;
• диаграмма потоков данных или потоков управления, вторая характеризуется наличием специального поведенческого объекта — управляющего процесса, по сути, являющегося аналогом командного пункта, рассылающего команды объектам-процессам с помощью управляющих потоков;
• миниспецификация (спецификация процесса);
• диаграмма «сущность-связь»;
• диаграмма переходов состояний;
• структурная схема (карта).
Последний тип диаграммы
(структурная карта) предназначен для описания модели на последующих этапах (связанных с автоматизацией), является производным (за счет «трансляции» иерархической ЭРЭ-модели в плоскую схему), поэтому в данной работе не рассматривается.
3. Синтаксис, семантика и прагматика языка
Синтаксис языка определяет правила формирования слов, фраз и предложений языка.
Семантика языка определяет смысл языковых конструкций и задается посредством введения спецификаций каждого из строительных блоков. При этом спектр методов задания спецификаций различных объектов варьируется от строго формальных (например, специфицирование потока данных с использованием формы Бэкуса-Наура) до формализованных на уровне перечня необходимых атрибутов соответствующего объекта (напри-
мер, задание ограничений на пропускную способность информационного канала). Соответствующие семантические правила позволяют корректно и однозначно определять:
• имена, идентифицирующие объекты
• области действия и видимости имен
• эквивалентность имен
• целостность и согласованность объектов.
Прагматика определяет предметную область (область применения) языковых конструкций — тип модели (функциональная, информационная, поведенческая и др.), объект моделирования (бизнес-модель, организационно-управленческая модель, модель информационной системы и т.п.), этап жизненного цикла объекта (анализ требований, концептуальное и детальное проектирование) и т.д.
Традиционно, для задания синтаксиса визуальных языков используется формализм графовых грамматик [4, 5], являющихся обобщением грамматик Хомского [6] на графы. Графовой грамматикой называется четверка (Т, К, Р, 8), где Т — множество терминальных символов, N — множество нетерминальных символов, Р — множество правил вида Ь ::= Я (Ь — непустая последовательность терминальных и нетерминальных символов, Я — произвольная последовательность терминальных и нетерминальных символов), 8 € N — начальный символ.
В таких грамматиках роль традиционных символов играют графы/подграфы различных видов. Так в работе [7] анализируются такие графы (а именно, ориентированные графы, мультиграфы, псевдографы, Ньграфы, метаграфы и гиперграфы) на предмет построения адекватного описания синтаксиса диаграммы «сущность-связь».
В то же время в работах [8, 9, 18, 19] была предложе-
на модель ЭРЭ-технологии (включающей комплекс вышеперечисленных диаграммных техник) в виде смешанного графа с различными типами вершин и ребер для адекватного описания организационно-управленческих систем, а также была разработана специальная параллельная атрибутная порождающая грамматика для бизнес-процесса, позволяющая порождать варианты (сценарии) его исполнения при различных ограничениях.
Для целей данной работы предлагается промежуточный вариант, а именно смешанная грамматика, символами которой могут быть не только графы/подграфы, но и фрагменты визуальных моделей в различных нотациях (в рамках ЭРО-технологии) вплоть до атомарных символов языка. Это соответствует введению в грамматику двух типов терминальных объектов — детализируемых (псевдотерминальных — терминальных в рамках конкретной диаграммы) и не детализируемых (терминальных символов).
Представим ниже множество правил такой грамматики.
<модель> ::= <контекстная диаграмма>
<контекстная диаграмма> ::= {<объект — внешняя сущность> {<отношение — информационный поток>}} < объект — контекстный процесс> {{<отношение — информационный поток >} <объект — внешняя сущность>}
< объект — контекстный процесс> ::= <имя контекстного процесса> <отношение декомпозиции> <диаграмма потоков данных>
<имя контекстного процесса> ::= <текстовая строка>
<объект — внешняя сущность> ::= <символ внешней сущности> <имя внешней сущности>
<имя внешней сущности> ::= <текстовая строка>
<диаграмма потоков данных> ::= ({<объект — процесс>
{<отношение — информационный поток> <объект — процесс>}}) | ({<объект — процесс> {Отношение — информационный поток> <объект — хранилище>}}) I ({<объект — хранилище> {Отношение — информационный поток> <объект — процесс>}}) | [(<объект — управляющий процесс> {<отношение — управляющий поток> <объект — процесс>})]
<объект — процесс> ::= <имя процесса> <отношение декомпозиции> (<диаграмма потоков данных> | <миниспецификация>) <имя процесса> ::= Текстовая строка>
<миниспецификация> ::= <текстовая строка> | <ми-ниспецификация> <текстовая строка>
<объект — управляющий процесс> ::= <имя управляющего процесса> <отношение декомпозиции> <диаграмма переходов состояний>
<имя управляющего процесса> ::= <текстовая строка>
<объект — хранилище> ::= <имя хранилища> Отношение декомпозиции> <диаграмма "сущность-связь">
<имя хранилища> ::= Текстовая строка>
Отношение — управляющий поток> ::= <символ отношения — управляющий поток> <тип управляющего потока> <имя управляющего потока >
<тип управляющего потока
> ::= <литерал>
Вариант правила — <тип управляющего потока > ::= А | В | С
<имя управляющего потока
> ::= <текстовая строка>
Отношение — информационный поток> ::= <символ отношения — информационный поток> <имя отношения — информационный поток> Отношение декомпозиции> <БНФ-выражение>
<имя информационного потока > ::= <текстовая строка>
<БНФ-выражение> ::= <выражение в форме Бэкуса-Наура> <диаграмма "сущность-связь"> ::= {<сущность>
<сущность> Отношение связи> <сущность> | <сущность> Отношение категоризации> {<сущность>}}
<сущность > ::= Отношение декомпозиции> <имя сущности> <список атрибутов>
<имя сущности > ::= Текстовая строка>
<список атрибутов> ::= (<атрибут> [,<список атрибутов>})
<атрибут > ::= <текстовая строка>
< отношение категоризации
> ::= <тип отношения категоризации> <имя отношения категоризации>
<тип отношения категоризации> ::= <литерал>
<имя отношения категоризации> ::= Текстовая строка>
< отношение связи > ::= <тип связи> <имя связи>
<тип связи> ::= "один-к-одному" | "один-ко-многим" | "многие-ко-многим"
<имя связи> ::= Текстовая строка>
<диаграмма переходов состояний> ::= Объект — состояние> {Отношение — переход> Объект — состояние>}
Объект — состояние> ::= <символ объекта — состояния> <имя объекта — состояния>
< имя объекта — состояния
> ::= Текстовая строка>
Отношение — переход> ::= < символ отношения — перехода> <условие> [<действие>]
<условие> ::= Текстовая строка>
<действие> ::= Текстовая строка>
Как упоминалось выше, отношения между объектами разбиваются на два вида:
• связывающие объекты на одном уровне модели (отношение — информационный поток, отношение — управляющий поток, отношение — переход, отношение связи);
• устанавливающие межу-ровневые связи (отношения декомпозиции различных видов, отношение категоризации).
Семантика отношений первого вида заключается в пере-
дачи данных или управления (управляющих сигналов) между объектами конкретного уровня. При этом состав и структура передаваемых данных определяется соответствующим грамматическим правилом. А семантика управляющего потока определяется его типом: поток типа А запускает процесс, поток типа В может как запустить, так и остановить процесс, поток типа С также осуществляет запуск-остановку процесса, но по различным каналам. Для сравнения, аналогом А-потока является кнопка включения света, который горит до тех пор, пока что-либо не произойдет внутри запущенного процесса, например, перегорит, лампочка, аналогом В-потока — традиционный выключатель с функциями включения-выключения света, аналогом С-потока — выключатель с двумя кнопками, одной для включения и другой для выключения света.
Семантика отношений декомпозиции состоит в межу-ровневой балансировке, т.е. фактически, в увязывании отношений первого вида между уровнями модели, основное правило которого заключается в том, что все отношения первого вида, связанные с детализируемым объектом, должны быть отображены (и привязаны к соответствующим объектам) на детализирующем уровне. Отношение категоризации по сути является классическим отношением обобщения.
Семантика развернутой плоской модели задается на нижнем уровне конечными автоматами, алгоритмическими языками и отношениями реляционной алгебры для описания поведенческих аспектов, функциональности и структуры информационных объектов, соответственно.
В заключении отметим, что предложенная модель является одним из системообразующих элементов современной теории бизнес-процессов [10—15, 18, 20].
Литература
1. Калянов Г.Н. Концептуальная модель языка структурного анализа и проектирования // Труды Научной сессии МИФИ-2004. М.: 2004. Т. 3. С. 41-42.
2. Fiodorov I.G. Overcoming expressiveness deficit of business process modeling languages // Business Informatics. 2016. № 3 (37). P. 62-71.
3. Калашян А.Н., Калянов Г.Н. Структурные модели бизнеса: DFD-технологии. М.: Финансы и статистика, 2003.
4. Rekers J., Schuerr A. A graph grammer aproach to graphical parsing // Visual Languages Proc., 11 IEEE Int. Symp., 1995. p. 195-202.
5. Zhang D.-Q, Zhang K, Cao J. A context-sensitive graph grammar formalism for the specification of visual languages // The Computer Journal. 2001. Vol. 44. № 3. P. 186-200.
6. Ахо А., Ульман Д. Теория синтаксического анализа, перевода и компиляции. М.: Мир, 1978.
7. Сухов А.О. Анализ формализмов описания визуальных языков моделирования // Современные проблемы науки и образования (электронный научный журнал). 2012. № 2 URL: https:// science-education.ru/ru/article/view?id=5655.
8. Калянов Г.Н. Теория и практика реорганизации бизнес-процессов // М.: СИНТЕГ, 2000.
9. Калянов Г.Н. Формальные методы поддержки реорганизации бизнес-процессов // Экономика, статистика и информатика. 2013. № 3. C. 161-165.
10. Калянов Г.Н. Модели и методы теории бизнес-процессов (обзор) // Открытое образование. 2015. № 6. C. 4-9.
11. Калянов Г.Н. Формальные методы теории бизнес-процессов // Современные информационные технологии и ИТ-образование. 2015. № 11. Том 1. C. 628-632.
12. Калянов Г.Н. Теория бизнес-процессов: формальные модели и методы // Экономика, статистика и информатика. 2016. № 4. C. 19-21.
13. Калянов Г.Н. Основные направления теории бизнес-процессов // Труды 19-й научно-практической конференции «Инжиниринг предприятий и управление знаниями». М.: 2016. C. 28-30.
14. Калянов Г.Н. Теория бизнес-процессов: базовые модели и методы // Труды 15-й Национальной конференции по искусственному интеллекту с международным участием КИИ-2016. Смоленск: 2016. Том 1. C. 248-254.
15. Калянов Г.Н. Современное состояние теории бизнес-процессов // Труды 20-й научно-практической конференции «Инжиниринг предприятий и управление знаниями». М.: 2017. C. 45-47.
16. Калянов Г.Н. Моделирование, анализ, реорганизация и автоматизация бизнес-процессов // М.: Финансы и статистика, 2006.
References
1. Kalyanov G.N. Kontseptual'naya model' yazy-ka strukturnogo analiza i proektirovaniya. Trudy Nauchnoy sessii MIFI-2004. Moscow: 2004. Vol. 3. P. 41-42. (In Russ.)
2. Fiodorov I.G. Overcoming expressiveness deficit of business process modeling languages. Business Informatics. 2016. No. 3 (37). P. 62-71. (In Russ.)
3. Kalashyan A.N., Kalyanov G.N. Strukturnye modeli biznesa: DFD-tekhnologii. Moscow: Fin-ansy i statistika, 2003. (In Russ.)
4. Rekers J., Schuerr A. A graph grammer aproach to graphical parsing. Visual Languages Proc., 11 IEEE Int. Symp., 1995. P. 195-202. (In Russ.)
5. Zhang D.-Q., Zhang K, Cao J. A context-sensitive graph grammar formalism for the specification of visual languages. The Computer Journal. 2001. Vol. 44. No. 3. P. 186-200. (In Russ.)
6. Akho A., Ul'man D. Teoriya sintaksichesko-go analiza, perevoda i kompilyatsii. Moscow: Mir, 1978. (In Russ.)
7. Sukhov A.O. Analiz formalizmov opisaniya vizual'nykh yazykov modelirovaniya. Sovremennye problemy nauki i obrazovaniya (elektronnyy nauch-nyy zhurnal). 2012. No. 2 URL: https://science-education.ru/ru/article/view?id=5655. (In Russ.)
8. Kalyanov G.N. Teoriya i praktika reorganizatsii biznes-protsessov. Moscow: SINTEG, 2000. (In Russ.)
9. Kalyanov G.N. Formal'nye metody pod-derzhki reorganizatsii biznes-protsessov. Ekonomi-ka, statistika i informatika. 2013. No. 3. P. 161— 165. (In Russ.)
10. Kalyanov G.N. Modeli i metody teorii biznes-protsessov (obzor). Otkrytoe obrazovanie. 2015. No. 6. P. 4-9. (In Russ.)
11. Kalyanov G.N. Formal'nye metody teorii biznes-protsessov. Sovremennye informatsionnye tekhnologii i IT-obrazovanie. 2015. No. 11. Vol. 1. P. 628-632. (In Russ.)
12. Kalyanov G.N. Teoriya biznes-protsessov: formal'nye modeli i metody. Ekonomika, statistika i informatika. 2016. No. 4. P. 19-21. (In Russ.)
13. Kalyanov G.N. Osnovnye napravleniya teorii biznes-protsessov. Trudy 19-y nauchno-prak-ticheskoy konferentsii "Inzhiniring predpriyatiy i upravlenie znaniyami". Moscow: 2016. P. 28-30. (In Russ.)
14. Kalyanov G.N. Teoriya biznes-protsessov: bazovye modeli i metody. Trudy 15-y Natsional'noy konferentsii po iskusstvennomu intellektu s mezhd-unarodnym uchastiem KII-2016. Smolensk: 2016. Vol. 1. P. 248-254. (In Russ.)
15. Kalyanov G.N. Sovremennoe sostoyanie te-orii biznes-protsessov. Trudy 20-y nauchno-prak-ticheskoy konferentsii "Inzhiniring predpriyatiy i upravlenie znaniyami". Moscow: 2017. P. 45-47. (In Russ.)
16. Kalyanov G.N. Modelirovanie, analiz, re-organizatsiya i avtomatizatsiya biznes-protsessov. Moscow: Finansy i statistika, 2006. (In Russ.)
17. Калянов Т.Н. Требования к составу и структуре стандартов в области моделирования бизнес-процессов // Автоматизация в промышленности. 2003. № 4. С. 19-21.
18. Калянов Г.Н. Методология синтеза бизнес-процессов // Труды 51 научной конференции МФТИ «Современные проблемы фундаментальных и прикладных наук». Долгопрудный: 2008. Часть Х. С. 44-52.
19. Калянов Г.Н. Методы реорганизации бизнес-процессов // Материалы конференции «Управление в технических, эргатичес-ких, организационных и сетевых системах» (УТЭ0СС-2012). СПб: ГНЦ РФ ОАО «Концерн «ЦНИИ «Электроприбор». 2012. С. 1008-1011.
20. Калянов Г.Н. Синтез структуры и параметров процессов предприятия как задача управления ИС // Труды 4-й Российской научно-методической конференции «Совершенствование подготовки 1Т-специалистов по направлению "Прикладная информатика" для инновационной экономики». М.: 2008, С. 88-93.
Сведения об авторе
Георгий Николаевич Калянов
Д.т.н, профессор, г.н.с.
Института проблем управления РАН, Москва, Россия
Эл. почта: Kalyanov@mail.ru Тел. (495) 334-91-01
17. Kalyanov G.N. Trebovaniya k sostavu i strukture standartov v oblasti modelirovaniya biznes-protsessov. Avtomatizatsiya v promyshlennosti. 2003. No. 4. P. 19-21. (In Russ.)
18. Kalyanov G.N. Metodologiya sinteza biznes-protsessov. Trudy 51 nauchnoy konferentsii MFTI "Sovremennye problemy fundamental'nykh i prik-ladnykh nauk". Dolgoprudnyy: 2008. Part X. P. 44-52. (In Russ.)
19. Kalyanov G.N. Metody reorganizatsii biznes-protsessov. Materialy konferentsii «Upravlenie v tekhnicheskikh, ergaticheskikh, organizatsionnykh i setevykh sistemakh» (UTE0SS-2012). Saint Petersburg: GNTs RF OAO «Kontsern «TsNII «Elektro-pribor». 2012. P. 1008-1011. (In Russ.)
20. Kalyanov G.N. Sintez struktury i parametrov protsessov predpriyatiya kak zadacha upravleniya IS. Trudy 4-y Rossiyskoy nauchno-metodicheskoy konferentsii "Sovershenstvovanie podgotovki IT-spetsialistov po napravleniyu "Prikladnaya infor-matika" dlya innovatsionnoy ekonomiki". Moscow: 2008. P. 88-93. (In Russ.)
Information about the author
Georgiy N. Kalyanov
Dr. Sci. (Eng.), Professor, Chief Researcher Institute of Control Sciences of Russian Academy of Sciences, Moscow, Russia E-mail: Kalyanov@mail.ru Tel. (495) 334-91-01