Գործընթացի մոդելավորումից մինչև ավտոմատացված համակարգի ձևավորում (Մաս 1)

«Մեկ օր սկյուռի կյանքում» կամ գործընթացի մոդելավորումից մինչև «Belka-1.0» հարստության հաշվառման ավտոմատացված համակարգի նախագծում (մաս 1)

Գործընթացի մոդելավորումից մինչև ավտոմատացված համակարգի ձևավորում (Մաս 1)
Պուշկինի «Ցար Սալթանի հեքիաթը» նկարազարդումը, հրատարակված «Մանկական գրականություն», Մոսկվա, 1949, Լենինգրադ, գծագրեր՝ Կ. Կուզնեցով

Ի՞նչ կապ ունի «սկյուռը» դրա հետ։

Ես անմիջապես կբացատրեմ, թե ինչ կապ ունի «սկյուռը» դրա հետ: Ինտերնետում հանդիպելով զվարճալի նախագծերի UML սովորելու համար, որը հիմնված է հեքիաթներից փոխառված առարկայի վրա (օրինակ. այստեղ [1]), ես նույնպես որոշեցի պատրաստել նմանատիպ օրինակ իմ ուսանողների համար, որպեսզի նրանք սկզբից կարողանան ուսումնասիրել միայն երեք տեսակի գծապատկերներ՝ Գործունեության դիագրամ, Օգտագործման դեպքի դիագրամ և Դասի դիագրամ: Ես միտումնավոր չեմ թարգմանում գծապատկերների անունները ռուսերեն՝ «թարգմանական դժվարությունների» մասին վեճերից խուսափելու համար։ Ես կբացատրեմ, թե ինչի համար է դա մի փոքր ուշ: Այս օրինակում ես օգտագործում եմ ավստրալիական ընկերության Enterprise Architect շրջանակը Sparx Systems [2] – լավ գործիք ողջամիտ գնով: Եվ որպես իմ մարզումների մի մաս ես օգտագործում եմ Մոդել [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 թվականին, հեքիաթն առաջին անգամ հրատարակել է Պուշկինը «Ա. Պուշկինի բանաստեղծությունները» ժողովածուում (Մաս III, 1832, էջ 130-181): — 10 տարի հայեցակարգից մինչև հրապարակում, ի դեպ:)

Մի քիչ այն կոդերի մասին, որոնք գրված են տողերի աջ կողմում։ «Ա» («Դերասան»-ից) նշանակում է, որ տողը պարունակում է տեղեկատվություն գործընթացի մասնակցի մասին: «C» («Class»-ից) - տեղեկատվություն դասի օբյեկտների մասին, որոնք մշակվում են գործընթացների կատարման ընթացքում: «E» («Շրջակա միջավայրից») - տեղեկատվություն դասի օբյեկտների մասին, որոնք բնութագրում են գործընթացների կատարման միջավայրը: «P» («Գործընթացից») - տեղեկատվություն գործընթացների մասին:

Ի դեպ, գործընթացի ճշգրիտ սահմանումը նույնպես հավակնում է մեթոդաբանական վեճերի պատճառ դառնալ, թեկուզ միայն այն պատճառով, որ կան տարբեր գործընթացներ՝ բիզնես, արտադրական, տեխնոլոգիական և այլն։ եւ այլն։ (կարող եք պարզել, օրինակ. այստեղ [4] և այստեղ [5]): Վեճերից խուսափելու համար եկեք համաձայնենք, որ Գործընթացը մեզ հետաքրքրում է ժամանակի ընթացքում դրա կրկնելիության և ավտոմատացման անհրաժեշտության տեսանկյունից, այսինքն. գործընթացի ցանկացած մասի կատարումը ավտոմատացված համակարգի փոխանցում:

Նշումներ Գործունեության դիագրամի օգտագործման վերաբերյալ

Եկեք սկսենք մոդելավորել մեր գործընթացը և դրա համար օգտագործենք Activity դիագրամը: Նախ, թույլ տվեք բացատրել, թե ինչպես են վերը նշված ծածկագրերը օգտագործվելու մոդելում: Ավելի հեշտ է բացատրել գրաֆիկական օրինակով, բայց միևնույն ժամանակ մենք կվերլուծենք Գործունեության դիագրամի որոշ (մեզ անհրաժեշտ գրեթե բոլոր) տարրերը:
Վերլուծենք հետևյալ հատվածը.

...
Սկյուռը երգեր է երգում, (P1, A1)
Այո, նա շարունակում է ընկույզներ խայթել, (P2)
Բայց ընկույզները պարզ չեն, (C1)
Բոլոր պատյանները ոսկեգույն են, (C2)
Միջուկը մաքուր զմրուխտ է; (C3)
...

Մենք ունենք գործընթացի երկու փուլ P1 և P2, մասնակից A1 և երեք տարբեր դասերի օբյեկտներ. C1 դասի օբյեկտը մուտքագրվում է քայլին, C2 և C3 դասերի օբյեկտները ելքային են մեր այս քայլի P2 քայլի գործունեության արդյունքում: գործընթաց։ Դիագրամի համար մենք օգտագործում ենք հետևյալ մոդելավորման տարրերը.

Գործընթացի մոդելավորումից մինչև ավտոմատացված համակարգի ձևավորում (Մաս 1)

Մեր գործընթացի մի հատվածը կարող է ներկայացվել նման բան (Նկար 1):

Գործընթացի մոդելավորումից մինչև ավտոմատացված համակարգի ձևավորում (Մաս 1)

Նկար 1. Գործունեության դիագրամի հատված

Տիեզերքը կազմակերպելու և Գործունեության դիագրամի կառուցվածքը կազմակերպելու համար մենք կօգտագործենք ոչ ստանդարտ մոտեցում՝ UML նշագրման դասական օգտագործման տեսանկյունից: Բայց դրա համար մի քանի պատճառ կա: Նախ, մոդելավորումը սկսելուց անմիջապես առաջ մենք կկազմենք այսպես կոչված մոդելավորման պայմանագիր, որում արձանագրում ենք նշագրման օգտագործման բոլոր հնարավորությունները։ Երկրորդ, այս մոտեցումը բազմիցս հաջողությամբ կիրառվել է բիզնես մոդելավորման փուլում իրական նախագծերում՝ ծրագրային համակարգեր ստեղծելու համար, արդյունքները գրանցել են հեղինակների մեր փոքր թիմը համապատասխան հեղինակային իրավունքի օբյեկտում [6] և օգտագործվել նաև ուսումնական ձեռնարկում [7]: XNUMX]։ Գործունեության գծապատկերի համար մենք սահմանում ենք, որ դիագրամի դաշտը կառուցված է «լողալու ուղիներով»: Երգի անունը կհամապատասխանի գծապատկերի տարրերի տեսակին, որոնք կտեղադրվեն այդ ուղու վրա:

«Մուտքային և ելքային արտեֆակտներ». Այս հետքը կպարունակի Օբյեկտների տարրեր՝ օբյեկտներ, որոնք օգտագործվում են կամ գործընթացի ինչ-որ քայլի արդյունք են:
«Գործընթացի քայլեր». Այստեղ մենք կտեղադրենք Activity տարրեր՝ գործընթացի մասնակիցների գործողությունները:
«Մասնակիցներ». տարրերի ուղի, որը կնշանակի գործողություն կատարողների դերերը մեր գործընթացում; նրանց համար մենք կօգտագործենք նույն մոդելավորման տարրը Օբյեկտ՝ օբյեկտ, բայց դրան կավելացնենք «Դերասան» կարծրատիպը:
Հաջորդ ուղին կոչվում է «Բիզնեսի կանոններ» և այս ուղու վրա մենք տեքստային ձևով կտեղադրենք գործընթացի քայլերի կատարման կանոնները, և դրա համար մենք կօգտագործենք մոդելավորման տարրը Note - նշում:
Այստեղ կանգ կառնենք, թեև կարող էինք նաև ճանապարհից օգտվել «Գործիքներ» հավաքագրել տեղեկատվություն գործընթացի ավտոմատացման մակարդակի մասին: Ճանապարհը նույնպես կարող է օգտակար լինել «Մասնակիցների պաշտոնները և բաժանումները»., այն կարող է օգտագործվել դերերը գործընթացի մասնակիցների պաշտոններին և բաժիններին կապելու համար:

Այն ամենը, ինչ ես պարզապես նկարագրեցի, մի հատված է մոդելավորման կոնվենցիաներ, պայմանագրի այս մասը վերաբերում է մեկ դիագրամի կազմակերպման կանոններին և, համապատասխանաբար, այն գրելու և կարդալու կանոններին։

"Բաղադրատոմսը"

Հիմա եկեք դիտարկենք համակարգի հատուկ մոդելավորման տարբերակը Գործունեության դիագրամից: Սա միայն տարբերակներից մեկն է, նշում եմ, որ, իհարկե, միակը չէ։ Գործունեության դիագրամը մեզ կհետաքրքրի գործընթացի մոդելավորումից ավտոմատացված համակարգի նախագծմանն անցնելու իր դերի տեսանկյունից: Դա անելու համար մենք հավատարիմ կմնանք մեթոդական առաջարկություններին. մի տեսակ բաղադրատոմս, որը բաղկացած է ընդամենը հինգ փուլից և նախատեսում է միայն երեք տեսակի դիագրամների մշակում: Այս բաղադրատոմսի օգտագործումը կօգնի մեզ ձեռք բերել գործընթացի պաշտոնական նկարագրություն, որը մենք ցանկանում ենք ավտոմատացնել և հավաքել տվյալներ համակարգի նախագծման համար: Եվ UML-ի ուսումնասիրության սկզբում ուսանողների համար սա մի տեսակ փրկօղակ է, որը թույլ չի տա նրանց խեղդվել տեսողական միջոցների և տեխնիկայի բոլոր բազմազանության մեջ, որոնք առկա են UML-ում և ժամանակակից մոդելավորման գործիքներում:

Ահա, փաստորեն, ինքնին բաղադրատոմսը, այնուհետև հետևեք մեր «հեքիաթային» առարկայի համար կառուցված դիագրամներին:

Փուլ 1. Գործընթացը նկարագրում ենք Գործունեության դիագրամի տեսքով: Ավելի քան 10 քայլ ունեցող գործընթացի համար իմաստ ունի կիրառել գործընթացի փուլային տարրալուծման սկզբունքը՝ դիագրամի ընթեռնելիությունը բարելավելու համար:

Փուլ 2. Ընտրեք այն, ինչը կարելի է ավտոմատացնել (օրինակ, քայլերը կարելի է ընդգծել դիագրամի վրա):

Փուլ 3. Ավտոմատացված քայլը պետք է կապված լինի համակարգի գործառույթի կամ գործառույթների հետ (հարաբերությունները կարող են լինել շատ-շատ-շատ), գծե՛ք Use-case դիագրամ: Սրանք մեր համակարգի գործառույթներն են։

Փուլ 4. Նկարագրենք ՀԾ-ի ներքին կազմակերպումը` օգտագործելով դասի դիագրամ - Դասարան: Գործունեության դիագրամում «Մուտքային և ելքային օբյեկտներ (փաստաթղթեր)» լողուղին հիմք է հանդիսանում օբյեկտի մոդելի և էություն-հարաբերությունների մոդելի կառուցման համար:

Փուլ 5. Եկեք վերլուծենք «Բիզնեսի կանոններ» ուղու նշումները, դրանք ապահովում են տարբեր տեսակի սահմանափակումներ և պայմաններ, որոնք աստիճանաբար վերածվում են ոչ ֆունկցիոնալ պահանջների։
Ստացված դիագրամների հավաքածուն (Ակտիվություն, Օգտագործման դեպք, Դաս) մեզ տալիս է պաշտոնական նկարագրություն բավականին խիստ նշումով, այսինքն. ունի միանշանակ ընթերցում. Այժմ դուք կարող եք մշակել տեխնիկական բնութագրեր, հստակեցնել պահանջների բնութագրերը և այլն:

Սկսենք մոդելավորել։

Փուլ 1. Նկարագրեք գործընթացը Գործունեության դիագրամի տեսքով

Հիշեցնեմ, որ դիագրամային դաշտը մենք կառուցեցինք «լողի» գծերով, յուրաքանչյուր գոտի պարունակում է նույն տիպի տարրեր (Նկար 2): Բացի վերը նկարագրված դիագրամի տարրերից, մենք կօգտագործենք լրացուցիչ տարրեր, եկեք նկարագրենք դրանք:

Գործընթացի մոդելավորումից մինչև ավտոմատացված համակարգի ձևավորում (Մաս 1)

Որոշումը (որոշումը) ցույց է տալիս գծապատկերում մեր գործընթացի ճյուղավորման կետը, իսկ թելերի միաձուլումը (Միաձուլում)՝ դրանց վերամիավորման կետը: Անցումային պայմանները գրվում են անցումների վրա քառակուսի փակագծերում:

Երկու սինխրոնիզատորների (Fork) միջև մենք ցույց կտանք զուգահեռ գործընթացի ճյուղեր:
Մեր գործընթացը կարող է ունենալ միայն մեկ սկիզբ՝ մեկ մուտքի կետ (Initial): Բայց կարող են լինել մի քանի լրացումներ (Վերջնական), բայց ոչ մեր կոնկրետ դիագրամի համար:

Բավականին շատ սլաքներ կան, մեծ թվով տարրերով և կապերով դուք կարող եք նախ բացահայտել գործընթացի փուլերը, այնուհետև կատարել այս փուլերի տարրալուծումը: Բայց պարզության համար ես կցանկանայի ցույց տալ մեր «հեքիաթային» գործընթացը ամբողջությամբ մեկ գծապատկերի վրա, մինչդեռ, իհարկե, մենք պետք է ապահովենք, որ սլաքները «միասին չկպչեն», հնարավոր կլինի ճշգրիտ հետևել, թե ինչ է կապված: ինչին.

Գործընթացի մոդելավորումից մինչև ավտոմատացված համակարգի ձևավորում (Մաս 1)

Նկար 2. Գործունեության դիագրամ - գործընթացի ընդհանուր տեսք

Որովհետեւ բանաստեղծական տողերում ընթացքի որոշ մանրամասներ բաց են թողնված, դրանք պետք է վերականգնվեին, ցուցադրվում են սպիտակ ֆոն ունեցող տարրերով։ Այս մանրամասները ներառում են «Փոխանցում/ընդունում պահպանման և մշակման համար» քայլը և մի քանի մուտքային և ելքային արտեֆակտներ: Հարկ է նշել, որ այս քայլը նույնպես ամբողջությամբ չի բացահայտում գործընթացը, քանի որ մենք պետք է առանձին նշանակենք փոխանցման քայլը և ընդունման քայլը, և նույնիսկ կեղևների համար առանձին քայլ ավելացնենք, ինչպես նաև մտածենք, որ նախ այս բոլոր նյութական արժեքները պետք է ժամանակավորապես պահվեն ինչ-որ տեղ և այլն: եւ այլն։
Նկատենք նաև, որ ընկույզների ծագման հարցը մնում է անպատասխան՝ որտեղի՞ց են դրանք և ինչպե՞ս են հասնում սկյուռին։ Իսկ այս հարցը (նշման մեջ կարմիր տառատեսակով ընդգծված է՝ Note տարրը) առանձին ուսումնասիրություն է պահանջում։ Ահա թե ինչպես է աշխատում վերլուծաբանը՝ քիչ առ քիչ տեղեկատվություն հավաքելով, ենթադրություններ անելով և առարկայի փորձագետներից «լավ» կամ «ոչ լավ» ստանալով՝ շատ կարևոր և պարզապես անփոխարինելի մարդիկ բիզնես մոդելավորման փուլում համակարգեր ստեղծելիս:

Նկատի ունեցեք նաև, որ գործընթացի քայլ P5-ը բաղկացած է երկու մասից:

Գործընթացի մոդելավորումից մինչև ավտոմատացված համակարգի ձևավորում (Մաս 1)

Եվ մենք կքայքայենք յուրաքանչյուր մասը և կդիտարկենք այն ավելի մանրամասն (Նկար 3, Նկար 4), քանի որ. այս կոնկրետ քայլերի շրջանակներում իրականացվող գործողությունները ավտոմատացված կլինեն:

Գործընթացի մոդելավորումից մինչև ավտոմատացված համակարգի ձևավորում (Մաս 1)

Նկար 3. Գործունեության դիագրամ - մանրամասնում (մաս 1)

Գործընթացի մոդելավորումից մինչև ավտոմատացված համակարգի ձևավորում (Մաս 1)

Նկար 4. Գործունեության դիագրամ - մանրամասնում (մաս 2)

Փուլ 2. Ընտրեք այն, ինչը կարելի է ավտոմատացնել

Ավտոմատացված քայլերը գունավոր ընդգծված են դիագրամների վրա (տես Նկար 3, Նկար 4):
Գործընթացի մոդելավորումից մինչև ավտոմատացված համակարգի ձևավորում (Մաս 1)

Դրանք բոլորն իրականացվում են գործընթացի մեկ մասնակցի կողմից՝ Գործավարը.

  • Հայտարարության մեջ մուտքագրում է ընկույզի քաշի մասին տեղեկատվություն.
  • Մուտքագրում է քաղվածքի մեջ ընկույզի փոխանցման մասին տեղեկությունները.
  • Արձանագրում է ընկույզի կեղևի և միջուկի վերածվելու փաստը.
  • Հայտարարության մեջ մուտքագրում է ընկույզի միջուկի մասին տեղեկությունները.
  • Ցանկում մուտքագրում է ընկույզի կեղևի մասին տեղեկությունները:

Կատարված աշխատանքի վերլուծություն. Ի՞նչ է հաջորդը:

Այսպիսով, մենք բավականին նախապատրաստական ​​աշխատանք ենք կատարել. հավաքել ենք տեղեկատվություն այն գործընթացի մասին, որը պատրաստվում ենք ավտոմատացնել. սկսեց ձևավորել համաձայնություն մոդելավորման վերաբերյալ (առայժմ միայն Գործունեության դիագրամի օգտագործման առումով); կատարեց գործընթացի մոդելավորում և նույնիսկ քայքայեց դրա մի քանի քայլերը. Մենք բացահայտել ենք գործընթացի քայլերը, որոնք մենք ավտոմատացնելու ենք: Այժմ մենք պատրաստ ենք անցնելու հաջորդ քայլերին և սկսել համակարգի ֆունկցիոնալության և ներքին կազմակերպման նախագծումը:

Ինչպես գիտեք, տեսությունն առանց պրակտիկայի ոչինչ է։ Դուք անպայման պետք է փորձեք «մոդելավորել» ձեր սեփական ձեռքերով, սա նաև օգտակար է առաջարկվող մոտեցումը հասկանալու համար: Օրինակ, դուք կարող եք աշխատել մոդելավորման միջավայրում Մոդել [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 տեղեկանք մտավոր գործունեության ստեղծագործության գրանցման և ավանդի մասին. Ալֆիմով Ռ.Վ., Զոլոտուխինա Է.Բ., Կրասնիկովա Ս.Ա. Ուսումնական օգնականի ձեռագիր «Առարկայական տարածքի մոդելավորում՝ օգտագործելով Enterprise Architect» // 2011 թ.
  7. Զոլոտուխինա E.B., Vishnya A.S., Krasnikova S.A. Բիզնես գործընթացների մոդելավորում. - M .: KURS, NITs INFRA-M, EBS Znanium.com: - 2017 թ.

Source: www.habr.com

Добавить комментарий