Процессти моделдөөдөн автоматташтырылган системаны долбоорлоого чейин (1-бөлүк)

«Белка-1.0» автоматташтырылган байлыкты эсепке алуу системасын долбоорлоо процессин моделдөөдөн тартып «Белка-1» (XNUMX-бөлүк)

Процессти моделдөөдөн автоматташтырылган системаны долбоорлоого чейин (1-бөлүк)
А.С.Пушкиндин «Цар Салтан жомогу» үчүн иллюстрация колдонулган, «Балдар адабияты», Москва, 1949-жыл, Ленинград, К.Кузнецовдун сүрөттөрү.

Буга "куйруктун" кандай тиешеси бар?

Дароо түшүндүрүп берейин, ага «белектин» кандай тиешеси бар. Жомоктон алынган предметтик аймактын негизинде UMLди үйрөнүү үчүн Интернеттен кызыктуу долбоорлорду кезиктирип, (мисалы, бул жерде [1]), мен да окуучуларыма диаграммалардын үч түрүн гана изилдей алышы үчүн, ушул сыяктуу мисалды даярдоону чечтим: Активдүүлүк диаграммасы, Колдонуу диаграммасы жана Класс диаграммасы. «Котормодогу кыйынчылыктар» деген талаш-тартыштарды болтурбоо үчүн диаграммалардын аттарын атайылап орусчага которбойм. Бул эмне үчүн экенин бир аздан кийин түшүндүрөм. Бул мисалда мен австралиялык компаниянын Enterprise Architect негизин колдонуп жатам Sparx системалары [2] – акылга сыярлык баада жакшы курал. Жана тренингдеримдин бир бөлүгү катары мен колдоном Modelio [3], UML2.0 жана BPMN стандарттарын колдогон, визуалдык мүмкүнчүлүктөр боюнча ашыкча коңгуроо жана ышкырыксыз, бирок тилдин негиздерин үйрөнүү үчүн жетиштүү акысыз объектке багытталган дизайн куралы.

Бул процесстерде келип чыккан материалдык баалуулуктарды эсепке алуу ишин автоматташтырмакчыбыз.

...
Арал деңизде жатат, (E1, E2)
Аралда мөндүр бар (E3, E1)
Алтын куполдуу чиркөөлөр менен (E4)
мунаралар жана бакчалар менен; (E5, E6)
Сарайдын алдында карагай өсөт, (E7, E8)
Ал эми анын астында кристалл үй; (E9)
Ал жерде бир тайган жашайт, (A1)
Ооба, кандай укмуштуу! (A1)
Кырсык ыр ырдайт, (P1, A1)
Ооба, ал жаңгактарды тиштейт, (P2)
Бирок жаңгактар ​​жөнөкөй эмес, (C1)
Бардык кабыктары алтын, (C2)
Өзөгү таза изумруд; (C3)
Кызматчылар тайганды кайтарышат, (P3, A2)
Алар ага ар кандай кызматчылар катары кызмат кылышат (P4)
Жана кызматчы дайындалды (A3)
Жаңгактын катуу эсеби - жаңылык; (P5, C1)
Аскер ага салам берет; (P6, A4)
Снаряддардан бир тыйын куюлуп жатат, (P7, C2, C4)
Алар дүйнөнү айланып кетсин; (P8)
Кыздар изумруд куюп (P9, A5, C3)
Кампаларга жана жабуунун астына; (E10, E11)
...
(А.С. Пушкин «Падыша Салтан жөнүндө, анын даңктуу жана күчтүү баатыры князь Гидон Салтанович жана сулуу ханзаада ак куу жөнүндө повесть», жомок боюнча иш болжолдуу түрдө 1822-жылы башталган; — Концепциядан жарык көргөнгө чейин 10 жыл!)

Саптардын оң жагына жазылган коддор жөнүндө бир аз. "А" ("Актёрдон") сапта процесстин катышуучусу жөнүндө маалымат камтылганын билдирет. «С» («Класс» деген сөздөн) – процесстердин аткарылышынын жүрүшүндө иштетилүүчү класстын объекттери жөнүндө маалымат. “E” (“Экологиядан”) – процесстерди аткаруу чөйрөсүн мүнөздөгөн класстын объекттери жөнүндө маалымат. "P" ("Процесс" дегенден) - процесстердин өзү жөнүндө маалымат.

Айтмакчы, процесстин так аныкталышы да методологиялык талаш-тартыштардын себеби болуп саналат деп ырастайт, эгерде ар кандай процесстер бар экендигине байланыштуу гана: бизнес, өндүрүш, технологиялык ж. жана башка. (мисалы, билсеңиз болот, бул жерде [4] жана бул жерде [5]). Талаш-тартыш болбош үчүн, келгиле, буга макул бололу Биз процесске анын убакыттын өтүшү менен кайталанышы жана автоматташтыруунун зарылдыгы жагынан кызыкдарбыз, б.а. процесстик операциялардын кандайдыр бир бөлүгүнүн аткарылышын автоматташтырылган системага өткөрүү.

Актив диаграммасын колдонуу боюнча эскертүүлөр

Келгиле, процессибизди моделдештирип баштайлы жана бул үчүн Activity диаграммасын колдонолу. Биринчиден, жогорудагы коддор моделде кантип колдонуларын түшүндүрүп берейин. Графикалык мисал менен түшүндүрүү оңой, бирок ошол эле учурда биз Активдүүлүк диаграммасынын кээ бир элементтерин (бизге керек болгондордун дээрлик бардыгын) талдап чыгабыз.
Төмөнкү фрагментти талдап көрөлү:

...
Кырсык ыр ырдайт, (P1, A1)
Ооба, ал жаңгактарды тиштейт, (P2)
Бирок жаңгактар ​​жөнөкөй эмес, (C1)
Бардык кабыктары алтын, (C2)
Өзөгү таза изумруд; (C3)
...

Бизде P1 жана P2 процессинин эки кадамы бар, катышуучу A1 жана үч түрдүү класстагы объекттер: С1 классынын объектиси кадамга киргизилет, C2 жана C3 класстарынын объекттери биздин P2 кадамынын активдүүлүгүнүн натыйжасында чыгарылат. процесс. Диаграмма үчүн биз төмөнкү моделдөө элементтерин колдонобуз.

Процессти моделдөөдөн автоматташтырылган системаны долбоорлоого чейин (1-бөлүк)

Биздин процесстин фрагменти ушуга окшогон бир нерсе менен көрсөтүлүшү мүмкүн (1-сүрөт).

Процессти моделдөөдөн автоматташтырылган системаны долбоорлоого чейин (1-бөлүк)

Сүрөт 1. Активдүүлүк диаграммасынын фрагменти

Мейкиндикти уюштуруу жана Activity диаграммасын түзүүдө биз UML нотасын классикалык колдонуу көз карашынан алганда стандарттуу эмес ыкманы колдонобуз. Бирок мунун бир нече себептери бар. Биринчиден, моделдештирүү башталганга чейин биз аталган нерсени түзөбүз моделдөө келишими, анда биз белгини колдонуунун бардык өзгөчөлүктөрүн жазабыз. Экинчиден, бул ыкма программалык системаларды түзүү үчүн реалдуу долбоорлордо бизнес моделдөө стадиясында бир нече жолу ийгиликтүү колдонулган, натыйжалар биздин чакан авторлор тобу тарабынан тиешелүү автордук укук объектисинде жазылган [6], ошондой эле окуу куралында [7] колдонулган; XNUMX]. Активдүүлүк диаграммасы үчүн диаграмма талаасы “сүзүү тилкелери” аркылуу түзүлөөрүн аныктайбыз. Тректин аталышы ошол трекке жайгаштырылуучу диаграмма элементтеринин түрүнө дал келет.

"Киргизүү жана чыгаруу артефакттары": Бул трек Объекттердин элементтерин камтыйт - колдонулган же кандайдыр бир процесстин кадамын аткаруунун натыйжасы болгон объекттер.
"Процесс кадамдары": Бул жерде биз Activity элементтерин - процесстин катышуучуларынын аракеттерин жайгаштырабыз.
"Катышуучулар": биздин процессте иш-аракетти аткаруучулардын ролун белгилей турган элементтер үчүн жол, алар үчүн биз бир эле моделдөөчү объектти - объектти колдонобуз, бирок ага "Актёр" стереотипин кошобуз.
Кийинки трек деп аталат "Бизнес эрежелери" жана бул тректе процесстин кадамдарын аткаруунун эрежелерин текст түрүндө жайгаштырабыз жана бул үчүн биз Note - нота моделдөө элементин колдонобуз.
Биз бул жерде токтойбуз, бирок жолду да колдонсок болот "Куралдар" процесстерди автоматташтыруунун деңгээли жөнүндө маалымат чогултуу. Жол да пайдалуу болушу мүмкүн "Катышуучулардын позициялары жана бөлүмдөрү", ал ролдорду процесстин катышуучуларынын кызматтары жана бөлүмдөрү менен байланыштыруу үчүн колдонулушу мүмкүн.

Мен айтып өткөндөрдүн баары бир фрагмент моделдөө конвенциялары, Макулдашуунун бул бөлүгү бир диаграмманы уюштуруу эрежелерине жана ошого жараша аны жазуу жана окуу эрежелерине тиешелүү.

"рецепт"

Эми системаны атайын моделдөө вариантын карап көрөлү Актив диаграммасынан. Бул варианттардын бири гана, мен бул, албетте, жалгыз эмес экенин белгилейм. Активдүүлүк диаграммасы бизди процессти моделдөөдөн автоматташтырылган системаны долбоорлоого өтүүдө анын ролу жагынан кызыктырат. Бул үчүн, биз методикалык сунуштарды карманышат - бир гана беш этаптан турган жана схемалардын үч гана түрүн иштеп чыгууну караган рецепттин бир түрү. Бул рецептти колдонуу биз автоматташтырууну жана системаны долбоорлоо үчүн маалыматтарды чогултууну каалаган процесстин формалдуу сүрөттөлүшүн алууга жардам берет. Ал эми UMLди үйрөнүүнүн башталышында студенттер үчүн бул UMLде жана заманбап моделдөө куралдарында кездешүүчү ар кандай визуалдык каражаттардын жана техниканын ар кандай түрлөрүнө чөгүп кетүүсүнө жол бербей турган жашоону коргоочунун бир түрү.

Бул жерде, чынында, рецепт өзү, андан кийин биздин "жомок" предмети үчүн курулган схемаларды аткарыңыз.

1-этап. Биз процессти Активдүүлүк диаграммасы түрүндө сүрөттөйбүз. 10 кадамдан ашык процесс үчүн диаграмманын окулушун жакшыртуу үчүн процесстин кадамынын ажыратуу принцибин колдонуунун мааниси бар.

2-этап. Автоматташтырылышы мүмкүн болгон нерсени тандаңыз (мисалы, кадамдарды диаграммада бөлүп көрсөтүүгө болот).

3-этап. Автоматташтырылган кадам системанын функциясы же функциялары менен байланыштуу болушу керек (байланыш көп-көп болушу мүмкүн), Use-case диаграммасын тартыңыз. Булар биздин системанын функциялары.

4-этап. Класс диаграммасы аркылуу АСтын ички түзүлүшүн сүрөттөп берели - Класс. Иш-аракет диаграммасындагы "Киргизүү жана чыгаруу объекттери (документтер)" сүзүү жолу объект моделин жана объект-мамиле моделин куруу үчүн негиз болуп саналат.

5-этап. "Бизнес эрежелери" трек боюнча эскертүүлөрдү талдап көрөлү, алар бара-бара функционалдык эмес талаптарга айланган ар кандай чектөөлөрдү жана шарттарды камсыз кылат.
Диаграммалардын натыйжасында топтому (Activity, Use-case, Class) бизге кыйла катаал белгилер менен формалдаштырылган сыпаттаманы берет, б.а. айкын окуу бар. Эми сиз техникалык спецификацияларды иштеп чыга аласыз, талаптардын спецификациясын тактай аласыз, ж.б.

Моделдикти баштайлы.

1-этап. Иш-аракет диаграммасы түрүндө процессти сүрөттөңүз

Эсиңиздерге сала кетейин, биз диаграмма талаасын “сүзүү” тилкелерин колдонуу менен түздүк; Жогоруда сүрөттөлгөн диаграмма элементтеринен тышкары, биз кошумча элементтерди колдонобуз, аларды сүрөттөп берели.

Процессти моделдөөдөн автоматташтырылган системаны долбоорлоого чейин (1-бөлүк)

Чечим (Чечим) диаграммада биздин процесстин бутактануу чекити, ал эми бириктирүү жиптери (Бириктирүү) - алардын биригүү чекити. Өткөөлдүн шарттары чарчы кашаага өтүүдө жазылат.

Эки синхронизатордун ортосунда (Fork) биз параллелдүү процесс бутактарын көрсөтөбүз.
Биздин процесс бир гана башталышы болушу мүмкүн - бир кирүү чекити (Баштапкы). Бирок бир нече бүтүрүү болушу мүмкүн (Final), бирок биздин конкреттүү диаграмма үчүн эмес.

Көптөгөн элементтери жана байланыштары бар жебелер көп, сиз алгач процесстин этаптарын аныктап, андан кийин бул этаптардын декомпозициясын аткара аласыз. Бирок түшүнүктүү болуу үчүн, мен биздин "жомок" процессибизди толугу менен бир диаграммада көрсөткүм келет, ошол эле учурда, албетте, жебелер "бири-бирине жабышып калбасын" камсыз кылышыбыз керек, ал эмнеге байланыштуу экенин так байкоого болот. эмнеге.

Процессти моделдөөдөн автоматташтырылган системаны долбоорлоого чейин (1-бөлүк)

Сүрөт 2. Иш-аракет диаграммасы - процесстин жалпы көрүнүшү

Анткени поэтикалык саптарда процесстин кээ бир деталдары калтырылган, аларды калыбына келтирүүгө туура келген, алар ак фон менен элементтер аркылуу көрсөтүлгөн. Бул деталдарга Сактоо жана кайра иштетүү үчүн өткөрүп берүү/кабыл алуу кадамы жана бир нече киргизүү жана чыгаруу артефакттары кирет. Белгилей кетсек, бул кадам да процессти толук ачып бербейт, анткени биз өзүнчө берүү кадамын жана кабыл алуу кадамын белгилеп, ал тургай, снаряд үчүн өзүнчө кадам кошуу керек, ошондой эле биринчи кезекте бул материалдык баалуулуктар бир жерде убактылуу сакталышы керек деп ойлойм, ж.б. жана башка.
Жаңгактын келип чыгышы жөнүндөгү суроо жоопсуз калганын да белгилей кетели – алар кайдан келип, тайга кантип жетет? Ал эми бул суроо (ал эскертүүдө кызыл шрифт менен белгиленген - Эскертүү элементи) өзүнчө изилдөөнү талап кылат! Аналитик мына ушундай иштейт - аз-аздан маалыматты чогултуп, болжолдоолорду жасап, предметтик эксперттерден "макул" же "жок" деп кабыл алат - системаларды түзүүдө бизнес моделдөө баскычында өтө маанилүү жана жөн эле алмаштырылгыс адамдар.

P5 процессинин кадамы эки бөлүктөн турганына көңүл буруңуз.

Процессти моделдөөдөн автоматташтырылган системаны долбоорлоого чейин (1-бөлүк)

Жана биз ар бир бөлүктү майдалап, майда-чүйдөсүнө чейин карап чыгабыз (3-сүрөт, 4-сүрөт), анткени бул конкреттүү кадамдардын алкагында аткарылган иш-чаралар автоматташтырылат.

Процессти моделдөөдөн автоматташтырылган системаны долбоорлоого чейин (1-бөлүк)

3-сүрөт. Иш-аракет диаграммасы - деталдаштыруу (1-бөлүк)

Процессти моделдөөдөн автоматташтырылган системаны долбоорлоого чейин (1-бөлүк)

4-сүрөт. Иш-аракет диаграммасы - деталдаштыруу (2-бөлүк)

2-этап. Автоматташтырылышы мүмкүн болгон нерсени тандаңыз

Автоматташтырылуучу кадамдар диаграммаларда түс менен белгиленет (3-сүрөттү, 4-сүрөттү караңыз).
Процессти моделдөөдөн автоматташтырылган системаны долбоорлоого чейин (1-бөлүк)

Алардын бардыгын процесстин бир катышуучусу – Клерк аткарат:

  • Жаңгактын салмагы тууралуу маалыматты арызга киргизет;
  • Ведомостко гайканы өткөрүп берүү жөнүндө маалыматтарды киргизет;
  • Жаңгактын кабыгына жана өзөгүнө айлануу фактысын жазат;
  • Жаңгактын өзөгү жөнүндө маалыматты билдирүүгө киргизет;
  • Жаңгактын кабыгы тууралуу маалыматты тизмеге киргизет.

Аткарылган иштерди талдоо. Кийинкиси эмне?

Ошентип, биз көп даярдык иштерин жүргүздүк: биз автоматташтыра турган процесс жөнүндө маалыматтарды чогулттук; моделдөө боюнча келишим түзө баштады (азырынча иш-аракет диаграммасын колдонуу жагынан гана); процесстин симуляциясын жасаган жана ал тургай анын бир нече кадамдарын ажыраткан; Биз автоматташтыра турган процесстин кадамдарын аныктадык. Эми биз кийинки кадамдарга өтүүгө жана системанын функционалдуулугун жана ички уюштуруусун иштеп чыгууга даярбыз.

Белгилүү болгондой, практикасыз теория эч нерсе эмес. Сиз, албетте, өз колдору менен "моделдөө" аракет керек, бул сунушталган ыкманы түшүнүү үчүн да пайдалуу. Мисалы, сиз моделдөө чөйрөсүндө иштей аласыз Modelio [3]. Биз процесстин жалпы диаграммасынын кадамдарынын бир бөлүгүн гана ажыраттык (2-сүрөттү караңыз). Практикалык тапшырма катары сизден Modelio чөйрөсүндөгү бардык диаграммаларды кайталоону жана “Сактоо жана иштетүү үчүн өткөрүү/кабыл алуу” кадамынын декомпозициясын аткарууну суранышы мүмкүн.
Биз азырынча конкреттүү моделдөө чөйрөлөрүндө иштөөнү карап чыга элекпиз, бирок бул көз карандысыз макалалардын жана кароолордун предмети болуп калышы мүмкүн.

Макаланын экинчи бөлүгүндө биз 3-5-этаптарда зарыл болгон моделдөө жана дизайн ыкмаларын талдайбыз, биз UML Use-case жана Class диаграммаларын колдонобуз; Уландысы бар.

Булактардын тизмеси

  1. "UML2.ru" сайты. Аналитиктер коомчулугу форуму. Жалпы бөлүм. Мисалдар. UML диаграммалары катары форматталган жомоктордун мисалдары. [Электрондук ресурс] Кирүү режими: Интернет: http://www.uml2.ru/forum/index.php?topic=486.0
  2. Sparx Systems веб-сайты. [Электрондук ресурс] Кирүү режими: Интернет: https://sparxsystems.com
  3. Modelio сайты. [Электрондук ресурс] Кирүү режими: Интернет: https://www.modelio.org
  4. Чоң энциклопедиялык сөздүк. Процесс (түшүндүрүү). [Электрондук ресурс] Кирүү режими: Интернет: https://dic.academic.ru/dic.nsf/enc3p/246322
  5. "Натыйжалуу башкарууну уюштуруу" сайты. Блог. "Бизнес процесстерин башкаруу" категориясы. Бизнес процессинин аныктамасы. [Электрондук ресурс] Кирүү режими: Интернет: https://rzbpm.ru/knowledge/pochemu-processy-stali-s-pristavkoj-biznes.html
  6. Интеллектуалдык ишмердүүлүктүн чыгармасын каттоо жана депозитке коюу жөнүндө күбөлүк №18249. Альфимов Р.В., Золотухина Е.Б., Красникова С.А. “Ишкананын архитекторунун жардамы менен предметтик аймакты моделдөө” аталышындагы окуу куралынын кол жазмасы // 2011-ж.
  7. Золотухина Е.Б., Вишня А.С., Красникова С.А. Бизнес процесстерин моделдөө. - М .: КУРС, NITs INFRA-M, EBS Znanium.com. — 2017.

Source: www.habr.com

Комментарий кошуу