Ji modelkirina pêvajoyê heya sêwirana pergalê ya otomatîk (Beş 1)

"Rojek di jîyana dûpişkê de" an ji pêvajoyên modelkirinê bigire heya sêwirana pergalek otomatîkî ya ji bo hesabkirina hebûnên maddî "Belka-1.0" (Beş 1)

Ji modelkirina pêvajoyê heya sêwirana pergalê ya otomatîk (Beş 1)
Ji bo "Çîroka Tsar Saltan" ji hêla A.S.

Çi pêwendiya "squirrel" bi wê re heye?

Ez ê tavilê rave bikim ka çi pêwendiya "pişk" pê re heye. Dema ku li ser Înternetê ji bo fêrbûna UML-ê li ser bingeha mijarek ku ji çîrokan hatî deyn kirin, li ser Înternetê projeyên kêfê rast hatin (mînak, vir [1]), min jî biryar da ku ji bo xwendekarên xwe mînakek bi vî rengî amade bikim da ku ew bikarin dest pê bikin tenê sê celeb diyagraman bixwînin: Diyagrama Çalakiyê, Diyagrama Bikaranînê û Diyagrama Dersê. Ez bi zanetî navên diagraman werdigerînim rûsî da ku ji nakokiyên li ser "zehmetiyên wergerê" dûr nekevin. Ez ê hinekî paşê rave bikim ka ew ji bo çi ye. Di vê nimûneyê de ez çarçoveya Enterprise Architect ji pargîdaniyek Avusturalya bikar tînim Sîstemên Sparx [2] - amûrek baş ji bo bihayek maqûl. Û wekî beşek ji dersên perwerdehiya xwe ez bikar tînim Modelio [3], amûrek sêwirana objekt-oriented a belaş a baş a ku standardên UML2.0 û BPMN piştgirî dike, bêyî zengil û bilbilên nehewce di warê kapasîteyên dîtbarî de, lê ji bo fêrbûna bingehên ziman têr dike.

Em ê çalakiya hesabkirina hebûnên maddî, ku di van pêvajoyan de derdikevin, otomatîk bikin.

...
Giravek di deryayê de ye, (E1, E2)
Li giravê rawestgeha befrê (E3, E1)
Bi dêrên qubeya zêrîn, (E4)
Bi birc û baxçeyan; (E5, E6)
Spruce li ber qesrê mezin dibe, (E7, E8)
Û di bin wê de xaniyek krîstal heye; (E9)
Dûpişk li wir dijî, tam dike, (A1)
Erê, çi şanoger e! (A1)
Squirrel stranan dibêje, (P1, A1)
Erê, ew hemî gwîzan diçikîne, (P2)
Û gwîzan ne hêsan in, (C1)
Hemî qalik zêrîn in, (C2)
Kernels safî zimrûd; (C3)
Xizmetkar qijikê diparêzin, (P3, A2)
Ji wê re xizmetê bikin wekî xizmetkarên cûrbecûr (P4)
Û karmendek hat tayîn kirin (A3)
Hesabê hişk a nûçeyên gwîzan; (P5, C1)
Rûmetê dide artêşa wê; (P6, A4)
Pereyek ji qalikan tê rijandin, (P7, C2, C4)
Bila ew li çaraliyê cîhanê bimeşin; (P8)
Keç zimrûd diavêjin (P9, A5, C3)
Di pantoran de, lê di bin çolê de; (E10, E11)
...
(A.S. Pûşkîn "Çîroka Tsar Saltan, lehengê wî yê birûmet û hêzdar Prince Guidon Saltanovich û Prensesa bedew Swan", Xebata li ser çîrokê tê texmînkirin ku di sala 1822 de dest pê kiriye, çîrok yekem car ji hêla Pûşkîn ve di berhevoka "Helbestên A. Pûşkîn" de hate weşandin (Beş III, 1832, rûp. 130-181). - Ji konseptê heta weşanê, 10 sal!)

Piçek li ser kodên ku li rastê rêzan têne nivîsandin. "A" (ji "Lîstikvan") tê vê wateyê ku di rêzê de agahdariya li ser beşdarek pêvajoyê heye. "C" (ji "Class") - agahdariya li ser tiştên çîna ku di dema pêkanîna pêvajoyan de têne kirin. "E" (ji "Jîngeh") - agahdarî li ser tiştên çîna ku ji bo pêkanîna pêvajoyên hawîrdorê diyar dikin. "P" (ji "Pêvajoya") - agahdariya li ser pêvajoyan bixwe.

Bi awayê, pênasekirina rastîn a pêvajoyek di heman demê de îdîa dike ku bibe sedema nakokiyên metodolojîk, heke tenê ji ber vê rastiyê be ku pêvajoyên cûda hene: karsazî, hilberîn, teknolojî, hwd. wate ya vê çîye. (hûn dikarin bibînin, wek nimûne, vir [4] û vir [5]). Ji bo ku ji nakokî dûr nekevin, bila em vê yekê li hev bikin Em ji pêvajoyê re eleqedar in ji hêla dubarebûna wê ya bi demê re û hewcedariya otomasyonê, yanî veguheztina pêkanîna her beşek ji operasyonên pêvajoyê ji bo pergalek otomatîkî.

Têbînî li ser bikaranîna diagram Çalakî

Werin em dest bi modela pêvajoya xwe bikin û ji bo vê diyagrama Çalakiyê bikar bînin. Pêşîn, bila ez rave bikim ka dê kodên jorîn di modelê de çawa werin bikar anîn. Ravekirina bi mînakek grafîkî hêsantir e, lê di heman demê de em ê hin (hema hema hemî yên ku ji me re hewce ne) hêmanên diyagrama Çalakiyê analîz bikin.
Werin em beşa jêrîn analîz bikin:

...
Squirrel stranan dibêje, (P1, A1)
Erê, ew hemî gwîzan diçikîne, (P2)
Û gwîzan ne hêsan in, (C1)
Hemî qalik zêrîn in, (C2)
Kernels safî zimrûd; (C3)
...

Du gavên me yên pêvajoyê P1 û P2, beşdar A1, û tiştên me yên sê çînên cihê hene: tişta çîna C1 têkevin gavê, tiştên çînên C2 û C3 di encama çalakiya vê gavê P2 ya me de têne derxistin. doz. Ji bo diagramê em hêmanên modela jêrîn bikar tînin.

Ji modelkirina pêvajoyê heya sêwirana pergalê ya otomatîk (Beş 1)

Parçeyek pêvajoya me dikare bi vî rengî were temsîl kirin (Wêne 1).

Ji modelkirina pêvajoyê heya sêwirana pergalê ya otomatîk (Beş 1)

Wêne 1. Parçeya diyagrama çalakiyê

Ji bo organîzekirina cîh û avahîya diyagrama Çalakîyê, em ê ji xala karanîna klasîk a nîşana UML-ê, nêzîkatiyek ne-standard bikar bînin. Lê çend sedemên vê yekê hene. Ya yekem, hema berî destpêkirina modelkirinê em ê ya ku jê re tê gotin berhev bikin peymana modelkirinê, ku tê de em hemî taybetmendiyên karanîna nîşankirinê tomar dikin. Ya duyemîn, ev nêzîkatî çend caran di qonaxa modelkirina karsaziyê de di projeyên rastîn de bi serfirazî hate sepandin da ku pergalên nermalavê biafirîne, encam ji hêla tîmê meya piçûk a nivîskaran ve di mijara mafê kopîkirinê ya têkildar de hate tomar kirin [6], û her weha di manualek perwerdehiyê de jî hate bikar anîn; 7]. Ji bo diyagrama Çalakiyê, em pênase dikin ku qada diagramê bi karanîna "rêyên avjeniyê" hatî çêkirin. Navê rêgezê dê bi celebê hêmanên nexşeyê re ku dê li ser wê rêkê bêne danîn re têkildar be.

"Aserên ketin û derketinê": Ev şop dê hêmanên Objekt - tiştên ku têne bikar anîn an encama pêkanîna hin gavên pêvajoyê ne.
"Gavên pêvajoyê": Li vir em ê hêmanên Çalakiyê bi cih bikin - kiryarên beşdarên pêvajoyê.
"Beşdar": rêyek ji bo hêmanên ku dê di pêvajoya me de rola lîstikvanên çalakiyê destnîşan bikin, ji bo wan em ê heman hêmana modelê bikar bînin - Objekt, lê em ê stereotipa "Aktor" lê zêde bikin.
The track next tê gotin "Rêbazên Karsaziyê" û li ser vê rêyê em ê rêzikên pêkanîna gavên pêvajoyê di forma nivîsê de bi cih bikin, û ji bo vê yekê em ê hêmana modelkirinê Têbînî - notek bikar bînin.
Em ê li vir rawestin, her çend em dikarin rê jî bikar bînin "Alav" ji bo berhevkirina agahdarî li ser asta otomasyona pêvajoyê. Dibe ku rêyek jî bi kêr were "Position û dabeşên beşdaran", ew dikare were bikar anîn da ku rola bi pozîsyon û beşên beşdarên pêvajoyê ve girêbide.

Her tiştê ku min tenê diyar kir perçeyek e peymanên modelkirinê, ev beşa peymanê bi qaîdeyên ji bo organîzekirina yek diagramê û, li gorî, rêzikên nivîsandin û xwendina wê ve girêdayî ye.

"Reçete"

Naha em vebijarka modelkirina pergalê bi taybetî bifikirin ji diyagrama Çalakiyê. Ev tenê yek ji vebijarkan e, ez destnîşan dikim ku ew, bê guman, ne yekane ye. Diyagrama Çalakiyê dê me ji nêrîna rola wê ya di derbasbûna ji modelkirina pêvajoyê ber bi sêwirana pergalek otomatîkî ve eleqedar bike. Ji bo vê yekê, em ê li gorî pêşniyarên metodolojîk tevbigerin - celebek reçeteyek ku tenê ji pênc qonaxan pêk tê û ji bo pêşveçûna tenê sê celeb diagraman peyda dike. Bikaranîna vê reçeteyê dê ji me re bibe alîkar ku em raveyek fermî ya pêvajoya ku em dixwazin ji bo sêwirana pergalê otomatîk bikin û berhev bikin bistînin. Û ji bo xwendekarên di destpêka xwendina UML-ê de, ev celebek parastina jiyanê ye ku dê nehêle ku ew di nav cûrbecûr navgîn û teknîkên dîtbarî yên ku di UML û amûrên modela nûjen de têne dîtin de xeniqînin.

Li vir, bi rastî, reçete bixwe ye, û dûv re şemayên ku ji bo qada mijara meya "çîrok" hatine çêkirin bişopînin.

Qonaxa 1. Em pêvajoyê bi şeklê diyagrama Çalakiyê vedibêjin. Ji bo pêvajoyek ku ji 10 gavan zêdetir e, maqûl e ku meriv prensîba hilweşandina gavê ya pêvajoyê bicîh bîne da ku xwendina diagramê baştir bike.

Qonaxa 2. Hilbijêre ku çi dikare bixweber bibe (mînak, gavan dikarin li ser diagramekê werin ronî kirin).

Qonaxa 3. Pêvajoya otomatîkî divê fonksiyonek an fonksiyonên pergalê were destnîşan kirin (têkilî dikare gelek-bi-gelek be), diyagramek Bikaranînê xêz bikin. Ev fonksiyonên pergala me ne.

Qonaxa 4. Werin em organîzasyona hundurîn a AS-ê bi karanîna diyagramek polê rave bikin - Ders. Di diyagrama Çalakiyê de "Tiştên Ketin û Derketî (Belge)" swimway bingeha avakirina modelek nesne û modelek yek-têkiliyek e.

Qonaxa 5. Werin em notên li ser şopa "Qaîdeyên Karsaziyê" analîz bikin, ew cûrbecûr sînorkirin û şertan peyda dikin, ku hêdî hêdî vediguherin pêdiviyên ne-fonksîyonel.
Di encamê de komek diagraman (Çalakî, Bikaranîn, Ders) bi nîgarek pir hişk ravekirinek fermî dide me, ango. xwendinek nezelal heye. Naha hûn dikarin taybetmendiyên teknîkî pêşve bibin, taybetmendiyên hewcedariyên zelal bikin, hwd.

Ka em dest bi modelkirinê bikin.

Qonaxa 1. Pêvajoyê bi şeklê diyagrama Çalakiyê diyar bike

Bihêle ez ji we re bi bîr bînim ku me qada diyagramê bi karanîna rêçikên "swimming" ava kir (Wêne 2). Ji bilî hêmanên diagramê yên ku li jor hatine destnîşan kirin, em ê hêmanên din jî bikar bînin, werin em wan rave bikin.

Ji modelkirina pêvajoyê heya sêwirana pergalê ya otomatîk (Beş 1)

Biryar (Biryar) xala şaxkirina pêvajoya me di diagramê de, û têlên hevgirtinê (Merge) - xala yekbûna wan destnîşan dike. Şert û mercên derbasbûnê li ser veguhertinan di kevaneyên çargoşe de têne nivîsandin.

Di navbera du hevdengkeran de (Fork) em ê şaxên pêvajoya paralel nîşan bidin.
Pêvajoya me dikare tenê destpêkek hebe - yek xala têketinê (Destpêkî). Lê dibe ku çend temamkirin hebin (Dawîn), lê ne ji bo diyagrama meya taybetî.

Gelek tîrên bi hejmareke mezin a hêman û girêdan hene, hûn dikarin pêşî qonaxên pêvajoyê nas bikin, û paşê veqetandina van qonaxan bikin. Lê ji bo zelaliyê, ez dixwazim pêvajoya xweya "çîroka" bi tevahî li ser yek diagramê nîşan bidim, di heman demê de, bê guman, em hewce ne ku pê ewle bin ku tîrên "bi hev re nemînin", dê mimkun be ku tiştê ku girêdayî ye rast bişopîne. ji bo çi.

Ji modelkirina pêvajoyê heya sêwirana pergalê ya otomatîk (Beş 1)

Wêne 2. Diagrama çalakiyê - nêrîna giştî ya pêvajoyê

Bo di ristên helbestî de hin hûrgiliyên pêvajoyê ji holê hatine rakirin, diviyabû ku ew bên restorekirin, ew bi hêmanên bi paşxaneyek spî têne xuyang kirin. Van hûrguliyan pêngava Veguheztin / Resepsiyonê ji bo hilanîn û pêvajoyê û çend hunerên ketin û derketinê vedihewîne. Hêjayî gotinê ye ku ev gav jî pêvajoyê bi tevahî eşkere nake, ji ber Pêdivî ye ku em gavê veguheztinê û qonaxa wergirtinê ji hev veqetînin, û tewra ji bo şêlan jî gavek cuda lê zêde bikin, û her weha bifikirin ku pêşî divê ev hemî nirxên maddî bi demkî li cîhek bêne hilanîn, hwd. wate ya vê çîye.
Ka em vê yekê jî bidin zanîn ku pirsa eslê gûzan bêbersiv dimîne - ew ji ku têne û çawa digihîjin dûpişkê? Û ev pirs (ew di nîşeyê de bi tîpên sor tê ronî kirin - hêmana Nîşe) lêkolînek cihêreng hewce dike! Analîzek bi vî rengî dixebite - berhevkirina agahiyan piç bi bîsk, çêkirina texmînan û wergirtina "baş" an "ne baş" ji pisporên mijarê - mirovên pir girîng û bi hêsanî di qonaxa modela karsaziyê de dema ku pergalan diafirînin.

Di heman demê de bala xwe bidin ku gava pêvajoyê P5 ji du beşan pêk tê.

Ji modelkirina pêvajoyê heya sêwirana pergalê ya otomatîk (Beş 1)

Û em ê her beşê hilweşînin û bi hûrgulî binirxînin (Wêne 3, Xiflteya 4), ji ber ku çalakiyên ku di nav van gavên taybetî de têne kirin dê otomatîk bibin.

Ji modelkirina pêvajoyê heya sêwirana pergalê ya otomatîk (Beş 1)

Figure 3. Diyagrama çalakiyê - hûrgulî (beş 1)

Ji modelkirina pêvajoyê heya sêwirana pergalê ya otomatîk (Beş 1)

Figure 4. Diyagrama çalakiyê - hûrgulî (beş 2)

Qonaxa 2. Hilbijêre ku çi dikare bixweber bibe

Pêngavên ku bêne otomatîk kirin bi reng li ser diagraman têne xuyang kirin (binihêrin Xiflteya 3, Xiflteya 4).
Ji modelkirina pêvajoyê heya sêwirana pergalê ya otomatîk (Beş 1)

Hemî ji hêla yek beşdarê pêvajoyê ve têne kirin - Karmend:

  • Agahiyên li ser giraniya gwîzê dixe nava daxuyaniyê;
  • Agahiyên li ser veguheztina gwîzê dixe nav daxuyaniyê;
  • Rastiya veguhertina gwîzê di şêl û kernelê de tomar dike;
  • Agahiyên der barê gwîzê de dixe nava daxuyaniyê;
  • Agahiyên li ser şêlên gûzan dixe nav lîsteyê.

Analîza karê ku hatiye kirin. Pêşî çi ye?

Ji ber vê yekê, me gelek xebatên amadekariyê kirine: me agahdarî li ser pêvajoya ku em ê bixweber bikin berhev kirine; dest bi avakirina peymanek li ser modelkirinê kir (heta nuha tenê di warê karanîna diyagrama Çalakiyê de); simulasyonek pêvajoyê kir û tewra çend gavên wê jî hilweşand; Me gavên pêvajoyê yên ku em ê otomatîk bikin nas kirin. Em niha amade ne ku derbasî gavên din bibin û dest bi dîzaynkirina fonksiyon û rêxistina navxweyî ya pergalê bikin.

Wekî ku hûn dizanin, teoriya bê pratîk ne tiştek e. Divê hûn bê guman "modelkirinê" bi destên xwe biceribînin, ev jî ji bo têgihîştina nêzîkatiya pêşniyarkirî bikêr e. Mînakî, hûn dikarin di hawîrdorek modelkirinê de bixebitin Modelio [3]. Me tenê beşek ji gavên diyagrama pêvajoyê ya giştî hilweşandiye (binihêre Figure 2). Wekî peywirek pratîkî, dibe ku ji we were xwestin ku hûn hemî diagramên di hawîrdora Modelio de dubare bikin û qonaxa "Veguheztin / Pêşwazîkirina ji bo hilanîn û hilanînê" hilweşînin.
Em hîna nafikirin ku di hawîrdorên modela taybetî de bixebitin, lê dibe ku ev bibe mijara gotar û nirxandinên serbixwe.

Di beşa duyemîn a gotarê de, em ê di qonaxên 3-5 de teknîkên modêlkirin û sêwiranê analîz bikin; Ez bêtir ji te hez dikim.

Lîsteya çavkaniyan

  1. Malpera "UML2.ru". Foruma Civaka Analîstê. Beşa Giştî. Examples. Nimûneyên çîrokan di forma diyagramên UML de. [Çavkaniya elektronîk] Moda gihîştinê: Înternet: http://www.uml2.ru/forum/index.php?topic=486.0
  2. Malpera Sparx Systems. [Çavkaniya elektronîk] Moda gihîştinê: Înternet: https://sparxsystems.com
  3. Malpera Modelio. [Çavkaniya elektronîk] Moda gihîştinê: Înternet: https://www.modelio.org
  4. Ferhenga Ansîklopedî ya Mezin. Pêvajo (şirovekirin). [Çavkaniya elektronîk] Moda gihîştinê: Înternet: https://dic.academic.ru/dic.nsf/enc3p/246322
  5. Malpera "Rêxistina rêveberiya bi bandor". Blog. Sernavê "Rêveberiya pêvajoya karsaziyê". Pênaseya pêvajoya karsaziyê. [Çavkaniya elektronîk] Moda gihîştinê: Înternet: https://rzbpm.ru/knowledge/pochemu-processy-stali-s-pristavkoj-biznes.html
  6. Belgeya Numreya 18249 li ser qeydkirin û razandina hilberek encama çalakiya rewşenbîrî. Alfimov R.V., Zolotukhina E.B., Krasnikova S.A. Destnivîsa alîkariya hînkirinê ya bi navê "Modelkirina qada mijarê bi karanîna Mîmarê Enterprise" // 2011.
  7. Zolotukhina E.B., Vishnya A.S., Krasnikova S.A. Modelkirina pêvajoyên karsaziyê. - M .: KURS, NITs INFRA-M, EBS Znanium.com. - 2017.

Source: www.habr.com

Add a comment