صفحهٔ منبع 15نمودار ساختار مرکب (Composite Structure Diagram)
نمودار ساختار مرکب همکاری داخلی کلاسها، رابطها یا مؤلفهها و ویژگیهای آنها را برای توصیف یک قابلیت بازتاب میدهد. این نمودارها شبیه نمودارهای کلاساند، اما در حالی که نمودار کلاس نمایی ایستا از ساختار کلاسها، شامل صفات و رفتارها، ارائه میکند، نمودار ساختار مرکب کاربردی مشخص از ساختار را مدل میکند. میتوان از آن برای بیان معماریهای زمان اجرا، الگوهای استفاده و روابط عناصر مشارکتکنندهای بهره گرفت که ممکن است در نمودارهای ایستا بازتاب نیابند.
در نمودار ساختار مرکب، کلاسها بهصورت Part یا نمونههای زمان اجرا که نقشی مشخص را ایفا میکنند مورد دسترسی قرار میگیرند. اگر نقش یک کلاس به چند نمونه نیاز داشته باشد، Partها میتوانند چندگانگی (Multiplicity) داشته باشند. Portهایی که توسط کلاس یک Part تعریف شدهاند باید در ساختار مرکب نمایش داده شوند تا همه Partهای متصل، رابطهای موردنیازِ تعیینشده توسط Port را فراهم کنند. مدلسازی ساختارهای مرکب انعطاف بسیار و در نتیجه پیچیدگی قابلتوجهی دارد. برای بهینهکردن مدلسازی، ساخت Collaborationها را برای نمایش Patternهای قابلاستفاده مجدد که به مسائل طراحی پاسخ میدهند در نظر بگیرید.
عناصر و اتصالدهندههای نمودار ساختار مرکب را از صفحات «Composite» جعبهابزار نمودار ایجاد میکنید.
نمودار نمونه
این نمودار یک Collaboration را در نمودار ساختار مرکب نشان میدهد که برای نمایش رابطهای جهت انجام یک نصب استفاده شده است. Collaborationها اغلب برای مدلسازی الگوهای رایج بهکار میروند.
نمودار بعدی از همین Collaboration با نام Install در یک Collaboration Use استفاده میکند و آن را از طریق رابطه «represents» به کلاس UtilLoad اعمال میکند. این نشان میدهد طبقهبند UtilLoad، الگوی Collaboration را در پیادهسازی خود بهکار میبرد.
آیکونهای جعبهابزار عناصر نمودار ساختار مرکب
عنصر تصویری اصلی — صفحه 15عنصر تصویری اصلی — صفحه 15© Sparx Systems 2026 — صفحهٔ 15 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 16عناصر و اتصالدهندههای ساختار مرکب
| عنصر | توضیح |
|---|
| Class | کلاس بازنمایی نوعی شیء است که ساختار و رفتار چنین اشیایی را در سیستم منعکس میکند. |
| Interface | رابط، مشخصه رفتار یا قراردادی است که پیادهسازان توافق میکنند آن را رعایت کنند. |
| Part | Partها نمونههای زمان اجرای کلاسها یا رابطها هستند. |
| Port | Portها تعامل بین یک طبقهبند و محیط آن را تعریف میکنند. |
| Collaboration | یک Collaboration مجموعهای از نقشهای همکار و اتصالدهندههای آنها را تعریف میکند. |
| Collaboration Use | برای اعمال الگویی که توسط یک Collaboration تعریف شده است به یک وضعیت مشخص در نمودار ساختار مرکب استفاده میشود. |
| Expose Interface | روش گرافیکی نمایش رابطهای موردنیاز یا ارائهشده یک Component، Class یا Part در نمودار Component یا Composite Structure است. |
آیکونهای جعبهابزار اتصالدهندهها
| اتصالدهنده | توضیح |
|---|
| Connector | پیوندهای ارتباطی میان Partها را برای تحقق هدف ساختار نشان میدهد و معمولاً در نمودار Composite Structure استفاده میشود. |
| Assembly | رابط موردنیاز یک Component را با رابط ارائهشده Component دیگر متصل میکند. |
| Delegate | مونتاژ داخلی Portها و Interfaceهای خارجی یک Component را تعریف میکند. |
| Role Binding | نگاشت بین نقشهای داخلی یک Collaboration Use و Partهای متناظر لازم برای پیادهسازی یک وضعیت مشخص است. |
| Represents | نشان میدهد یک Collaboration در یک طبقهبند استفاده شده است. |
| Occurrence | نشان میدهد یک Collaboration نماینده یک طبقهبند است. |
عنصر تصویری اصلی — صفحه 16عنصر تصویری اصلی — صفحه 16عنصر تصویری اصلی — صفحه 16عنصر تصویری اصلی — صفحه 16عنصر تصویری اصلی — صفحه 16عنصر تصویری اصلی — صفحه 16عنصر تصویری اصلی — صفحه 16عنصر تصویری اصلی — صفحه 16عنصر تصویری اصلی — صفحه 16عنصر تصویری اصلی — صفحه 16عنصر تصویری اصلی — صفحه 16عنصر تصویری اصلی — صفحه 16عنصر تصویری اصلی — صفحه 16© Sparx Systems 2026 — صفحهٔ 16 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 17ویژگیها (Properties)
یک Property ساختاری تودرتو درون یک طبقهبند ــ معمولاً Class یا Interface ــ در نمودار Composite Structure است. ساختار دربرگرفتهشده نمونهها و روابطی را بازتاب میدهد که در طبقهبند دربرگیرنده منعکس شدهاند. Propertyها میتوانند چندگانگی داشته باشند و به دو شکل نمایش داده شوند:
- Partها (روش ترجیحی)
- نقشهای Association
Partها
در این نمودار دو Part با نامهای libBooks و records وجود دارد که بهترتیب نمونههایی متناظر با کلاسهای Books و Computer هستند. رابطه بین این دو Part با یک Connector نشان داده شده است و بازتاب میدهد که ارتباط بین Partها از طریق بارکد انجام میشود. این ساختار دربرگرفتهشده و Partهای آن، Propertyهایی هستند که مالکشان کلاس Library است.
پس از کشیدن Partها از Diagram Toolbox روی Class، روی یک Part راستکلیک کرده و «Advanced | Set Property Type» را انتخاب کنید تا آن را به یک طبقهبند متصل کنید. اگر Partها هنگام کشیدن روی Class ناپدید شدند، ترتیب Z کلاس را تنظیم کنید تا پشت Partها قرار گیرد؛ روی Class راستکلیک و گزینه «Z-Order» را انتخاب کنید.
برای نشاندادن Propertyای که از طریق Composition متعلق به طبقهبند دربرگیرنده نیست، از نماد کادر با خطچین استفاده کنید تا Association را نشان دهد. برای این کار:
- روی Part راستکلیک کرده و گزینه «Properties» را انتخاب کنید.
- صفحه «Advanced» در گفتوگوی Properties را انتخاب کنید.
- گزینه «IsReference» را روی True تنظیم کنید.
نقشهای Association
Propertyها را همچنین میتوان با یک ساختار مرکب معمولی، بدون قراردادن آن داخل Class، نمایش داد؛ Connectorها، Partها و روابط مناسب از طریق اتصال به Class نشان داده میشوند.
نمایش جایگزین در شکل منبع آمده است؛ با این حال این نمایش، مالکیتی را که در روش قراردادن Propertyها داخل یک طبقهبند فوراً قابل مشاهده است، بیان نمیکند.
عنصر تصویری اصلی — صفحه 17© Sparx Systems 2026 — صفحهٔ 17 از ۴۲۲ — ایجادشده با Enterprise Architect
صفحهٔ منبع 18عنصر تصویری اصلی — صفحه 18© Sparx Systems 2026 — صفحهٔ 18 از ۴۲۲ — ایجادشده با Enterprise Architect