صفحهٔ منبع 241Synch
توضیح
Synch State برای نشاندادن Synchronization مسیرهای Concurrent در StateMachine مفید است. از آن برای Split و Rejoin کردن دورههای Parallel Processing استفاده میشود. پس از رسیدن Pathها به Synch State، Transition خروجی حرکت هماهنگ را نشان میدهد.
عنصر تصویری اصلی — صفحه 241عنصر تصویری اصلی — صفحه 241© Sparx Systems 2026 — صفحهٔ 241 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 242System Boundary
توضیح
System Boundary عنصر غیر-UML برای تعریف Boundary مفهومی است. میتوانید عناصر منطقی مرتبط را از نظر بصری Group کنید، بدون اینکه بخشی از UML Model Ownership باشد. در مشخصات UML، System Boundary معمولاً در زمینهٔ Use Case برای نشاندادن Application Use Case به Entity دیگر استفاده میشود.
در این Context، System Boundary Use Case را محصور میکند و از طریق «Select <Item>» با Classifier مانند Class، Component یا Subsystem (Actor) مرتبط میشود. Association دادن Boundary ــ نه Use Case ــ به Classifier باعث میشود Classifier User آن Use Case باشد نه Owner آن.
میتوان یک Use Case را Classifier خود Boundary قرار داد تا عناصر داخل Boundary، مانند بخشهای Activity Diagram، به بازنمایی منطقی Use Case متصل شوند. Propertyهای Boundary شامل Name، Border Style و تعداد Horizontal/Vertical Swimlane است. Shape را میتوان تغییر داد، Lineهای تقسیمکننده افزود و Opacity را از شفاف تا کدر تنظیم کرد.
Boundary میتواند با Context Menu به حالت «Selectable» یا غیرقابل انتخاب تغییر کند. در حالت غیرقابل انتخاب، کلیک روی عناصر داخل فضای Boundary آن را انتخاب نمیکند.
عنصر تصویری اصلی — صفحه 242عنصر تصویری اصلی — صفحه 242عنصر تصویری اصلی — صفحه 242© Sparx Systems 2026 — صفحهٔ 242 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 243یادداشتها
- System Boundary مبنای Image Element است؛ Image Element امکان افزودن Icon یا Background به Diagram را فراهم میکند و Image Manager را برای انتخاب Image باز میکند.
- System Boundary با Boundary Element مورد استفاده برای ثبت User Interaction در Analysis Diagram یکسان نیست.
مشخصات OMG UML
UML 2.5.1 صفحهٔ 641 میگوید Subject یک مجموعه UseCase، که گاهی System Boundary نامیده میشود، میتواند Rectangleای با Name در بالا-چپ باشد و UseCase Ellipseها داخل آن قرار گیرند. یک UseCase مدلشده میتواند بهصورت Ellipseهای جدا در چند Subject Rectangle نمایش داده شود.
© Sparx Systems 2026 — صفحهٔ 243 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 244Propertyهای System Boundary
System Boundary مجموعهٔ کوچکی از Propertyهای عمدتاً ظاهری دارد. کنترلهای عمومی Element مانند Default Appearance، Lock و Image نیز قابل اعمالاند. عنصر باید Selectable باشد تا Propertyهایش قابل تغییر شوند.
دسترسی
- Right-click Boundary | Properties | Properties
- Alt+Enter
- Properties Window با Ctrl+2 و زبانهٔ Boundary
تنظیم Propertyها
| Option | Action |
|---|
| Name | اختیاری؛ نام Element را وارد کنید. این Field در زبانهٔ Boundary از Properties Window وجود ندارد. |
| Shape | یکی از Rectangle، Rounded Rectangle، Ellipse، User Defined - Orthogonal، User Defined - Freeform یا User Defined - Custom Grid را انتخاب کنید. Orthogonal/Freeform امکان Drag-pointهای Border برای Shape سفارشی را میدهد. Custom Grid امکان Lineهای افقی/عمودی داخل Boundary را فراهم میکند و Swimlaneها را غیرفعال میکند. |
| Style | Solid، Dotted، Dashed یا Solid - No Fill را انتخاب کنید. گزینهٔ No Fill اعمال Fill Opacity را مسدود میکند. |
© Sparx Systems 2026 — صفحهٔ 244 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 245| Horizontal Swim Lanes | تعداد Segmentهای افقی را برای Group کردن Contextها وارد کنید؛ مثلاً Client، Application و Database Tier. Default برابر 1 است. اگر Custom Grid میخواهید همان 1 بماند. ارتفاع Swimlaneها برابر است. |
| Vertical Swim Lanes | تعداد Segmentهای عمودی، مثلاً Start/Progress/Terminate. Default برابر 1؛ در Custom Grid روی 1 بماند. عرض Segmentها برابر است. |
| Instance Classifier | در Properties Window Classifier Boundary را نشان میدهد؛ برای تغییر، دکمهٔ Browse را بزنید و Classifier را از Select Element انتخاب کنید. Features Window نیز نمایش داده میشود. |
| Multiplicity | تعداد Instanceهای مجاز را مشخص میکند؛ از فهرست مقدار مناسب را انتخاب کنید. |
Customize System Boundary — Orthogonal/Freeform
با انتخاب Shape نوع User Defined میتوانید Way-point روی Sideهای Boundary ایجاد و Drag کنید تا Shape نامنظم بسازید. Orthogonal فقط Lineهای Horizontal/Vertical و Freeform Lineهای Diagonal را نیز پشتیبانی میکند.
- افزودن Way-point: Shift+Click، Ctrl+Click یا Ctrl+Q روی Edge.
- حذف: همان ترکیب روی Way-point.
- حرکت: Boundary را انتخاب کنید، Cursor را روی Way-point ببرید تا Green شود و Drag کنید. روی Border، Way-pointهای دو طرف Cursor Green میشوند و میتوانید Segment را Drag کنید.
تبدیل Freeform به Orthogonal Lineهای Diagonal را به Vertical/Horizontal تبدیل میکند و ممکن است نیاز به اصلاح Shape باشد. Drag مورب Way-point Orthogonal نیز Lineها را طوری تنظیم میکند که زاویهٔ قائم حفظ شود.
Custom Grid
عنصر تصویری اصلی — صفحه 245© Sparx Systems 2026 — صفحهٔ 245 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 246Custom Grid جایگزین Swimlane است و هر دو همزمان استفاده نمیشوند. Lineهای Custom به Lineهای موجود متصل میشوند؛ میتوان از Border به Border یا درون Cellهای موجود Line کشید و Groupهای نامنظم مانند Business Model Canvas ساخت. Elementها نیز مانند Swimlane بین Cellها قابل Drag هستند.
- Shape را روی «User Defined - Custom Grid» بگذارید.
- به Diagram بازگردید.
- Shift را نگه دارید و Mouse را روی Boundary Drag کنید؛ Guideline نقطهچین محل Line را نشان میدهد.
- Mouse را رها کنید تا Line Solid شود.
برای Move، Cursor را روی Line ببرید تا Double-arrow ظاهر شود و Drag کنید؛ Lineهای متصل برای حفظ Join Extend/Retract میشوند. برای Delete، روی Line راستکلیک و «Delete Region» را انتخاب و تأیید کنید؛ Region Highlight میشود و Lineهای متصل تا Line عمود بعدی Extend میشوند.
Resize Boundary همهٔ Cellها را متناسب Resize میکند. اگر Shift را هنگام Resize نگه دارید، فقط Lineهای متصل به Border Extend میشوند و Cellهای داخلی Size خود را حفظ میکنند.
Fill Opacity
برای کنترل میزان دیدهشدن عناصر پشت Boundary، Opacity را تغییر دهید. ابتدا مطمئن شوید Fill Color وجود دارد و Style روی Solid - No Fill نیست.
عنصر تصویری اصلی — صفحه 246© Sparx Systems 2026 — صفحهٔ 246 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 247Opacity از Toolbar شناور Element قابل تنظیم است:
- 100%: کاملاً کدر؛ عناصر پشت Boundary مخفی میشوند. برای نمایش مورد خاص میتوان Z-Order | Bring to Top را اعمال کرد.
- 0%: بدون Opacity؛ Fill Color اعمال نمیشود و پشت Boundary کاملاً دیده میشود.
- 75%، 50% یا 25%: درجات میانی، عناصر دیده میشوند ولی Shade میگیرند.
نمونهٔ Shapeها
منبع چند Example Shape برای Boundary نمایش میدهد.
عنصر تصویری اصلی — صفحه 247عنصر تصویری اصلی — صفحه 247عنصر تصویری اصلی — صفحه 247عنصر تصویری اصلی — صفحه 247عنصر تصویری اصلی — صفحه 247© Sparx Systems 2026 — صفحهٔ 247 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 248یادداشتها
- Optionهای Diagram-specific Boundary مانند Shape، Border Style و Swimlane Count اگر Diagram Lock باشد یا User Permission Update Diagram نداشته باشد قفل هستند؛ Name همچنان ممکن است قابل Update باشد.
- Name Boundary اگر خود Element Lock باشد یا User Permission Update Element نداشته باشد قفل است؛ Fieldهای دیگر ممکن است قابل تغییر باشند.
عنصر تصویری اصلی — صفحه 248عنصر تصویری اصلی — صفحه 248© Sparx Systems 2026 — صفحهٔ 248 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 249Terminate
توضیح
Terminate Pseudostate نشان میدهد بهمحض ورود به این Pseudostate، Execution کل StateMachine پایان مییابد.
عنصر تصویری اصلی — صفحه 249عنصر تصویری اصلی — صفحه 249© Sparx Systems 2026 — صفحهٔ 249 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 250Trigger
توضیح
Trigger Eventای را نشان میدهد که Actionای را آغاز میکند و ممکن است از Completion Action قبلی ناشی شود. Trigger در چهار روش اولیه قابل تعریف است:
- Property یک Transition Relationship
- Property یک Accept Event Action در زبانهٔ Triggers
- Event در StateMachine Table
- مستقیماً بهصورت Trigger Element از New Element یا Diagram Toolbox صفحهٔ State Additional
پس از Save، Trigger به Elements Parent Package در Browser اضافه میشود. با انتخاب آن و Ctrl+2، Properties Window را میتوان برای مشاهده/ویرایش Trigger بهعنوان Element باز کرد. Triggerهایی که بهصورت Event ساخته شدهاند Event Element باقی میمانند؛ سایر موارد Trigger Element با زبانهٔ Trigger هستند.
| Field | Action |
|---|
| Type | نوع Trigger را Call، Change، Signal یا Time انتخاب کنید. Call یک CallEvent است؛ Change تغییر Attribute Value؛ Signal دریافت Asynchronous Signal؛ Time لحظهای در زمان. |
| Specification | Event آغازکننده Trigger را وارد یا انتخاب کنید. |
| Ports | با Add، Port مناسب را از Select Port انتخاب کنید. برای ساخت Port جدید، Trigger باید Child یک Class یا Component باشد. برای چند Port Ctrl را نگه دارید. برای یافتن Location Port، روی Name آن راستکلیک و Find in Project Browser را بزنید. |
یادداشتها
- Trigger Element موجود را میتوان روی Diagram دیگر Drag کرد، هرچند کاربرد آن محدود است.
- این Element با Trigger Operation پایگاهداده که در اثر تغییر Data اجرا میشود متفاوت است.
عنصر تصویری اصلی — صفحه 250عنصر تصویری اصلی — صفحه 250© Sparx Systems 2026 — صفحهٔ 250 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 251مشخصات OMG UML
UML 2.5.1 صفحهٔ 300 بیان میکند Eventها میتوانند Execution Behavior را سبب شوند؛ برای مثال Effect Activity یک Transition در StateMachine. Trigger Eventی را که ممکن است Behavior Execution را Trigger کند، و Constraintهای لازم برای Filter کردن Eventهای نامرتبط، مشخص میکند.
عنصر تصویری اصلی — صفحه 251© Sparx Systems 2026 — صفحهٔ 251 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 252Use Case
توضیح
Use Case یک UML Modeling Element است که توصیف میکند User سیستم پیشنهادی چگونه با System تعامل میکند تا یک واحد کار مجزا انجام شود. یک Interaction معنادار برای End User ــ انسان، Machine یا System دیگر ــ را در طول زمان توصیف میکند و باید System را در State کامل باقی بگذارد؛ Interaction یا کامل میشود یا به Initial State Rollback میشود.
Use Case معمولاً Requirement و Constraintهایی برای Featureها و Ruleهای اساسی دارد، میتواند Sequence Diagram مرتبط برای Behavior در زمان داشته باشد، و معمولاً Scenarioهایی دارد که Workflow منتهی به نتیجه را توضیح میدهند؛ Alternative Workflowها مانند Exception نیز قابل ثبتاند.
Example Use Case Diagram
برای Extend کردن Use Case میتوان Extension Point تعیین کرد. برای نمایش Attribute، Operation یا Constraint روی Use Case از Rectangle Notation استفاده کنید. Enterprise Architect دو Use Case Stereotypeشدهٔ Test Case و Business Use Case نیز ارائه میکند.
عنصر تصویری اصلی — صفحه 252عنصر تصویری اصلی — صفحه 252عنصر تصویری اصلی — صفحه 252© Sparx Systems 2026 — صفحهٔ 252 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 253مشخصات OMG UML
UML 2.5.1 صفحهٔ 649 میگوید UseCase مجموعهای از Actionها را مشخص میکند که توسط Subjectهایش انجام میشوند و نتیجهای Observable و دارای Value برای یک یا چند Actor یا Stakeholder هر Subject تولید میکنند.
© Sparx Systems 2026 — صفحهٔ 253 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 254Use Case Extension Pointها
Behavior یک Use Case میتواند Behavior Use Case دیگری را افزایش دهد؛ Use Case اول Use Case دوم را Extend میکند. در Model این رابطه با Extend Connector از Extending Use Case به Extended Use Case نمایش داده میشود. اگر Extension در نقطهٔ مشخصی اعمال شود، آن نقطه را بهعنوان Extension Point روی Extended Use Case تعریف میکنید. Name/Description آن میتواند بهاندازهٔ لازم Informal یا Precise باشد.
یک Use Case میتواند چند Extension Point داشته باشد تا چند Source Use Case یا Constraintهای متفاوت را پشتیبانی کند. Extend Connector نیز Extension Point فعال را مشخص میکند.
دسترسی
Right-click extended Use Case | Advanced | Edit Extension Points
افزودن Extension Point
| Field/Button | Action |
|---|
| Defined Extension Points | Extension Pointهای موجود را فهرست میکند. |
| Add | Prompt نام Point جدید را باز میکند؛ نام را وارد و OK کنید. |
| Edit | Point موجود را انتخاب و نام آن را تغییر دهید. |
| Remove | Point انتخابشده را فوراً حذف میکند. |
| OK | تغییرات را Save و Dialog را میبندد. Extension Pointها روی Use Case Element نمایش داده میشوند. |
عنصر تصویری اصلی — صفحه 254© Sparx Systems 2026 — صفحهٔ 254 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 255© Sparx Systems 2026 — صفحهٔ 255 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 256Value Lifeline
توضیح
Lifeline مسیر Object در طول Measure زمان، یعنی محور x، است. دو نوع State Lifeline و Value Lifeline وجود دارد که هر دو در Timing Diagram استفاده میشوند. Value Lifeline State را در طول Diagram با Lineهای موازی برای State پایدار نمایش میدهد و Cross میان Lineها Transition یا تغییر State را نشان میدهد.
منبع به شکل 14.30 از UML 2.5.1 صفحهٔ 520 ارجاع میدهد.
Propertyهای Transition Point
Value Lifeline از مجموعهای Transition Point تشکیل شده است:
| Property | Description |
|---|
| At time | زمان آغاز Change State. |
| Transition to | State مقصد Lifeline. |
| Event | Event رخداده. |
| Timing constraints | زمان Change State یا انتقال Message را Constraint میکند. |
| Timing observations | زمان Change State یا Sent Message را ثبت میکند. |
| Duration constraints | مدت حضور Lifeline در State را محدود میکند. |
| Duration observations | Interval حضور Lifeline در State را ثبت میکند. |
عنصر تصویری اصلی — صفحه 256عنصر تصویری اصلی — صفحه 256© Sparx Systems 2026 — صفحهٔ 256 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 257نمونهٔ Propertyها
در Example Diagram، Transition Point با زمان 10ms این مقادیر را دارد:
| At Time | 10ms |
|---|
| Transition to | Waitcard |
|---|
| Event | Switch |
|---|
| Timing constraints | — |
|---|
| Timing observations | — |
|---|
| Duration constraints | d..3*d |
|---|
| Duration observations | — |
|---|
مشخصات OMG UML
UML 2.5.1 صفحهٔ 604 میگوید Value یک Connectable Element را بهعنوان Function زمان نشان میدهد. Value صریحاً با Text نمایش داده میشود و Crossing Eventای را نشان میدهد که Value تغییر کرده است.
عنصر تصویری اصلی — صفحه 257© Sparx Systems 2026 — صفحهٔ 257 از ۴۲۲ — ایجادشده با Enterprise Architect