«Один день из жизни белки» или от моделирования процессов к проектированию автоматизированной системы учёта материальных ценностей «Белка-1.0» (Часть 2)

Краткое содержание предыдущей серии
Në мы использовали «сказочную» предметную область, вдохновленные примерами изучения диаграмм UML с опорой на сюжеты сказок (см., например, [1]). До начала моделирования мы договорились относительно использования некоторых элементов диаграммы Activity и начали формировать соглашение по моделированию. С учетом этих договоренностей мы на 1-ом этапе описали процесс в виде диаграмм Activity, а на 2-ом этапе выделили шаги процесса, для которых требуется (и возможна) автоматизация.
Напомню, что автоматизировать мы собираемся деятельность по учёту материальных ценностей, которая возникает вот в этих процессах.
…
Një ishull në det është, (E1, E2)
Një qytet në ishull është (E3, E1)
Me kisha me kupola prej ari, (E4)
Me shtëpi dhe kopshte; (E5, E6)
Një bredh rritet para pallatit, (E7, E8)
Dhe poshtë tij një shtëpi kristali; (E9)
Një shqiponjë jeton aty, (A1)
Po, si një zë që do! (A1)
Një shqiponjë këndon, (P1, A1)
Po po, gërryen vetëm arrat, (P2)
Dhe arrat nuk janë të zakonshme, (C1)
Të gjitha janë me lëvore ari, (C2)
Bërthamat janë të pastra si smarald; (C3)
Duhen kujdesur për shqiponjën, (P3, A2)
I shërbejnë asaj shërbëtorë të ndryshëm (P4)
Dhe një diak i ngarkuar (A3)
Bëhet një llogari e rreptë për arrat; (P5, C1)
I japin nder të ushtarëve; (P6, A4)
Nga lëvorët derdhin monedha, (P7, C2, C4)
Dhe i dërgojnë nëpër botë; (P8)
Vajzat hedhin smarald, (P9, A5, C3)
Në depo, dhe nën mbulesë; (E10, E11)
…
(А.С.Пушкина «Сказка о царе Салтане, о сыне его славном и могучем богатыре князе Гвидоне Салтановиче и о прекрасной царевне Лебеди», )
Në këtë shembull, unë po përdor mjedisin Enterprise Architect nga kompania australiane [2], а в рамках учебных занятий применяю [3].
Напомню, что процессы бывают разные, ознакомится можно, например, [4] dhe [5].
Подробнее о применяемых подходах к моделированию и проектированию см. [6, 7].
Specifikimin e plotë të UML e gjeni. [8].
Теперь мы готовы перейти к следующим этапам и начать проектирование функций системы и ее внутренней организации. Нумерация рисунков будет продолжена.
Etapa 3. Hapi që duhet automatizuar duhet t'i ngjitet një ose më shumë funksione të sistemit
Разрабатываемая автоматизированная система (АС) предназначена для ведения строгого учета орехов, помните? Для каждого выделенного шага (см. Рисунок 3, Рисунок 4 ), который будем автоматизировать, запишем функциональное требование, применяя примерно такую конструкцию «В системе должна быть реализована возможность …» и разработаем диаграмму Use-case. Сейчас мы фактически дополняем наше соглашение по моделированию новыми правилами. Поясню какие элементы будем использовать.

Между «Ролью пользователя» и «Функцией» будем использовать связь «Ассоциация» (Рисунок 5), это означает, что для пользователя с данной ролью доступно выполнение данной функции.

Рисунок 5. Использование связи типа «Ассоциация»
От «Функции» к «Требованию» проведем связь «Реализация» (Рисунок 6), чтобы показать, что данное требование будет реализовано вот этими функциями, отношение может быть и «многие-ко многим», т.е. одна функция может участвовать в реализации нескольких требований, а для реализации требования может понадобиться более одной функции.

Рисунок 6. Использование связи типа «Реализация»
Если одна функция требует для своего выполнения, чтобы была выполнена еще какая-то функция, причем обязательно, будем использовать связь «Зависимость» со стереотипом «Include» — включение (Рисунок 7). Если же выполнение дополнительной функции требуется при определенных условиях, то будем использовать связь «Зависимость» со стереотипом «Extend» — расширение. Все очень легко запомнить: «Include» — ВСЕГДА, а «Extend» – ИНОГДА.

Рисунок 7. Использование связи типа «Зависимость (включение)»
В итоге наша диаграмма будет выглядеть примерно так (Рисунок 8).

Рисунок 8. Диаграмма Use-case (функциональная модель АС)
Кроме того, диаграмма Use-case используется для моделирования ролей пользователей (Рисунок 9).

Рисунок 9. Диаграмма Use-case (роли пользователей АС)
Etapa 4. E dimë organizimin e brendshëm të AS me anë të diagramit të klasave
Используя информацию о входных и выходных артефактах нашего процесса (см. диаграммы Activity — Рисунок 2, Рисунок 3, Рисунок 4), разработаем диаграмму классов. Будем использовать моделирующий элементы «Класс» и различные виды связей между ними.

Чтобы показать отношение «целое-часть» будем использовать связь типа «Агрегация» (Рисунок 10): орех – это целое, а скорлупки и ядро – это части.

Рисунок 10. Отношение «целое-часть»
В итоге фрагмент нашей диаграммы будет выглядеть примерно так (Рисунок 11). Цветом отмечены классы, которые мы выделили непосредственно в текстовом описании процесса.

Рисунок 11. Диаграмма классов
Диаграмма классов использовалась также для моделирования прочих артефактов – не только тех, которые будут иметь отношение к концептуальной модели автоматизируемого процесса учета материальных ценностей, но имеют отношение к среде выполнения – окружению (Рисунок 12) и «соседним» процессам (Рисунок 13), которые могут оказывать влияние на автоматизируемый процесс, но пока не находятся в фокусе нашего внимания (предполагаем, что система будет развиваться, и эта информация окажется полезной).

Рисунок 12. Диаграмма классов (окружение)
Связь наследование показывает обобщение различных построек, «дочерние» классы, под обобщающим «родительским» классом «Строение».

Рисунок 13. Диаграмма классов (дополнительная информация об артефактах)
«Реакция на ситуацию» зависит от «Данных визуального контроля». Для нескольких связей зависимости используется стереотип «trace», чтобы показать трассировку классов, явно не обозначенных в описании процесса, но которые необходимы для его автоматизации, к классам, на экземпляры которых есть точное указание в нашем описании.
Etapa 5. Analizojmë shënimet në rrugën “Rregullat e biznesit”
В качестве правил были указаны (см. Рисунок 2 ):
- необходимость разбиения одного из шагов на 2 части, вторая часть начинает выполняться только при определенных условиях;
- назначение для выполнения учета орехов определенного должностного лица;
- технический прием (белый цвет элементов), который указывает, что элемент явно не был указан в описании процесса.
Следует отметить, что все эти правила мы уже использовали при разработке диаграмм.
Заключительные замечания
Итак, мы прошли 5 этапов и построили 3 вида диаграмм. Добавлю еще небольшой комментарий об организации наших моделей в среде моделирования. Существует большое количество фреймворков, которые помогают структурировать разрабатываемые модели, но это не предмет данной статьи, поэтому мы ограничимся следующим простым набором пакетов для упорядоченного ведения нашего проекта: Бизнес-процесс, Функциональная модель, Артефакты, Участники и Окружение (Рисунок 14).

Рисунок 14. Структура пакетов проекта
Таким образом, мы разработали согласованные модели, описывающие систему учета материальных ценностей с различных сторон: модель автоматизируемого бизнес-процесса, функциональную модель и модель внутренней организации системы на концептуальном уровне.
Lista e burimeve
- Faqja "UML2.ru". Forumi i Komunitetit të Analistëve. Seksioni i Përgjithshëm. Shembuj. Shembuj përrallash të formuara në formën e diagrameve UML. [Burim elektronik] Modaliteti i qasjes: Internet:
- Faqja e Sparx Systems. [Burim elektronik] Qasja: Internet:
- Faqja Modelio. [Burim elektronik] Modaliteti i qasjes: Internet:
- Fjalori i Madh Enciklopedik. Procesi (shpjegimi). [Burim elektronik] Rehdi: Internet:
- Faqja «Organizata për menaxhimin efektiv». Blogu. Kategoria «Menaxhimi i proceseve biznesore». Definimi i procesit biznesor. [Burim elektronik] Rehdi: Internet:
- Dëshmia Nr. 18249 për regjistrimin dhe depozitimin e një vepre të rezultatit të veprimtarisë intelektuale. Alfimov R.V., Zolotukhina E.B., Krasnikova S.A. Manuskrypti i udhëzuesit mësimor me titull «Modelimi i fushës së subjektit me përdorimin e Enterprise Architect» // 2011.
- Zolotukhina E.B., Vishnya A.S., Krasnikova S.A. Modelimi i proceseve biznesore. — M.: KURS, NIC INFRAM, EBS Znanium.com. — 2017.
- OMG Unified Modeling Language (OMG UML) Specifikimi. Versioni 2.5.1. [Burim elektronik] Qasja: Internet:
Burimi: habr.com
