نمودار كلاس (Class Diagram)
در روش object-oriented مركزیت با نمودار كلاس است. نمودار كلاس انواع اشیاء درون سیستم و انواع مختلف ارتباطات ساختاری آنها را نمایش می دهد.
عناصر یك نمودار كلاس عبارتند از:
• كلاس ها
• روابط بین كلاس ها
كلاس خود شامل بخش های زیر است:
• صفات (Attributes)
• اعمال (Operations)
برای بیان صفات یك كلاس در UML قاعدهی زیر بكار می رود:
Visibility name [multiplicity]: type = initial-value
دید (Visibility):
- دید عمومی +
- دید محافظت شده #
- دید خصوصی -
نوع (type):
- Boolean
- Long
- Integer
- String
- Date
مقدار اولیه در صفات(initial-value)
روابط بین كلاسها
1.رابطهی انجمنی (Association)
• رابطهی تجمع (Aggregation)
• رابطهی تركیب (Composition)
2.رابطهی وابستگی (Dependency)
3.رابطهی تعمیم (Generalization)
رابطه ی انجمنی
رابطهی تجمیع (Aggregation)
• یك حالت خاص از رابطهی انجمنی است.
• زمانی كه بخواهیم نشان دهیم كه اجتماع چند شی، یك شیء كلان تر بوجود می آورد؛ از این نوع رابطه استفاده میكنیم.
• در صورت از بین رفتن كلاس، كلاس های جزء از بین نمی روند.
• ارتباط كلاس های دیگر با كلاس جزء می تواند بدون ارتباط و دخالت كلاس كل برقرار شود.
رابطهی ترکیب (Composition)
• علاوه بر مفهوم كلی رابطه تجمع كه از اجتماع چند شیء یك شیء كلی تر تشكیل می شود، بیانگر آن است كه با از بین رفتن شیء كلی تر كلیه اشیاء جزئی اش نیز از بین می رود.
• هر كلاس كه بخواهد با كلاس های جزء از یك كلاس كل ارتباط برقرار كند، بدون واسطه و دخالت كلاس كل این امر امكان پذیر نیست.
مثال:
رابطهی وابستگی (Dependency)
بیان كننده نوعی وابستگی بین دو كلاس است.
رابطهی تعمیم (Generalization)
برای خلاصه سازی در بیان صفات و اعمال استفاده می شود و دارای خواص توارث و جایگزینی است.
• توارث: كلاسهای تخصیص همه صفات، اعمال و ارتباطات كلاس تعمیم را به ارث می برند و می توانند دارای صفات، اعمال و ارتباطات خاص خود باشند.
• جایگزینی: هر كلاس یا شیء تخصیص می تواند در هر جا كه كلاس یا شیء تعمیم وجود دارد، بجای آن بنشیند.
مثال:
نمودار شیء (Object Diagram)
- وضعيت اشیاء درون سیستم را در نقطه ای از زمان نشان می دهد.
- كاملا مشابه یك نمودار كلاس است كه بجای كلاس و ارتباطات به ترتیب نمونه كلاس(شیء) و نمونه ارتباط رسم میشود.
- برای كنترل صحت نمودارهای كلاس می توان وضعیت خاصی را از نحوهی ارتباطات اشیاء به وسیلهی نمودارش ایجاد كرد تا ببینیم كه آیا در نمودار كلاس نیز چنین ارتباطی داریم یا نه!
- در حالتی كه نام شیء مهم نباشد و فقط می خواهیم یك شیء از كلاس خاصی را بیان كنیم، می توان تنها نام كلاس را ذكر كرد.
نمودار قطعات (Component Diagram)
مدل سازی وضعیت نرم افزاری سیستم
قطعه: بخشی نرم افزاری، فیزیكی و قابل جایگزین است كه مجموعه ای از یك یا چند واسط را پیاده سازی می كند.
هر قطعه دارای نامی است كه آنرا از سایر قطعات متمایز می كند.
هر قطعه واسط های خاصی را پیاده سازی می كند.
قطعه خود می تواند دارای نمونه باشد.
واسطها همیشه یك رفتار را بیان می كنند و می توانند به شكل های مختلف پیادهسازی شوند.
قطعات می توانند همانند هر عنصر دیگرuml در بسته ها قرار گیرند و از پیچیدگی سیستم بكاهند.
روابط در قطعات: تعمیم، انجمنی، وابستگی
واسطها مجموعه ای از اعمال هستند كه خدمتی از یك كلاس یا قطعه را مشخص می كنند.
دو قطعه بدون استثناء به وسیلهی یك واسط به هم مرتبط می شوند.
مثال:
زبان مدلسازی یکپارچه (UML)
امروزه با توجه به پیشرفت های موجود در حوزهی فناوری، امکان پیگیری پروژهها به صورت ذهنی و به موفقیت رساندن آنها از این طریق، بسیار دشوار و ناممکن به نظر میرسد؛ حتی پیگیری پروژه از طریق یک متن نامنظم هم نمیتواند به موفقیت منجر شود. برای موفقیت پروژه باید یک روند مدون ایجاد کرده و در طول پروژه آن را مد نظر داشته باشید؛ به این منظور بهترین ابزار موجود، استفاده از زبان مدلسازی یکپارچه (UML) میباشد.