نمودار حالت – آموزش سریع
نمودار حالت UML چیست؟
یک نمودار حالت (که در مشخصات UML 1.x) یک نمودار است که ماشین حالت را نشان میدهد و در UML 2.x. ماشین حالت که به آن اشاره میشود، رفتاری است که حالتهای مختلف و انتقالهای حالت یک شی را در طول چرخه زندگی آن توصیف میکند. نمودار حالت یکی از 14 نمودار UMLاست که برای مدلسازی در UML 2.0 استفاده میشود.

این نمودار حالتهای مختلف یک شی را در طول چرخه زندگی آن تعریف میکند که به پاسخ به رویدادها تغییر میکنند.نمودارهای حالتنمودارهای حالت برای مدلسازی سیستمهای واکنشی مفید هستند که میتوان آنها را به عنوان سیستمهایی تعریف کرد که به رویدادهای خارجی یا داخلی واکنش نشان میدهند. نمودار حالت جریان کنترل از یک حالت به حالت دیگر را توصیف میکند. حالت به عنوان شرایطی برای وجود یک شی تعریف میشود که زمانی که یک رویداد ایجاد میشود، تغییر میکند.
هدف نمودار حالت چیست؟
هدف مهم نمودار حالت، مدلسازی چرخه زندگی یک شی از ایجاد تا پایان است.
- جنبههای پویای سیستم را مدلسازی کرده و نمایش جامعتری از اطلاعات مربوط به سیستم ارائه میدهد.
- حالتهای مختلف یک شی را در طول چرخه زندگی آن توصیف کند، چه در حالت فعال، خوابیده یا مرده باشد.
- چرخه زندگی یک شی را مدلسازی کند که به برنامهنویس کمک میکند تا روشهای شی را طراحی کند و غیره.
- به برنامهنویسان کمک میکند تا نیازها را درک کنند و سرعت کدنویسی را افزایش دهند.
اجزای نمودار حالت UML
نمودار حالت UMLعمدتاً از پنج عنصر تشکیل شده است، به ترتیب: حالت، انتقال، رویداد، عمل و فعالیت.
در واقع، نمودارهای حالت میتوانند بسیار پیچیده باشند – میتوانید نمودارهای حالت را در هم قرار دهید، شرایط (درست/نادرست) را قبل از حالتها قرار دهید، اقداماتی را اضافه کنید که زمانی که حالت تغییر میکند اجرا میشوند، یا حتی رویدادها را به دلیل پردازش بعدی به تعویق بیندازید. این نمودارها میتوانند حجم زیادی از متن را اشغال کنند و شرایط معمولاً برای یک زبان برنامهنویسی خاص نوشته میشوند. این میتواند نمودارها را پیچیده به نظر برساند، اما میتواند برنامهنویسی (و آزمون) را سریعتر کند، زیرا احتمال اشتباه تفسیر کمتر است.

این نمودار ماشین حالت را ویرایش کنید
اجزای یک نمودار حالت UML
نمودارهای حالت UML از نمادهایی استفاده میکنند که ممکن است در نمودارهای فعالیت UML دیده باشید.
- حالت شروع: دایره پر شده.
- حالت پایان: دایره پر شده با گوشههای گرد.
- حالت: مستطیل با گوشههای گرد که نام عملیات را دارد.
- انتقال: پیکان متصل با برچسبی که نشاندهندهی فعالکنندهی انتقال است (در صورت وجود).
- حالتهایی با فعالیت داخلی: حالتهایی با خطوط افقی که رفتار آنها در نیمهی پایین لیست شده است.
- حالتهای ترکیبی: حالتهایی با خطوط افقی و نمودارهای حالت تو در تو (یا لینکهای به صفحهی دیگر draw.io) در نیمهی پایین.
- گاردها یا شرایط: الماسها.
- شاخهبندی: خط ضخیم با یک ورودی انتقال و دو یا چند خروجی.
- اتصال: خط ضخیم با بیش از یک ورودی انتقال و فقط یک انتقال.
مثال نمودار ماشین حالت – تماس تلفنی
در این مثال از نمودار حالت، خط تلفن در ابتدای تماس خاموش است. هنگامی که تلفن از گوشی برداشته میشود، صدای پیشگویی ایجاد میشود و میتواند ارقام را برای شمارهگیری قبول کند. پس از وارد کردن یک شماره معتبر، سیستم تلفن سعی میکند تماس را برقرار کند و آن را به مقصد مناسب هدایت کند. اگر شماره یا خط اصلی مشغول باشد، اتصال ممکن است ناموفق باشد. اگر اتصال موفق باشد، تلفن مورد تماس شروع به زنگ زدن میکند. هنگامی که خط دوباره قطع میشود، خط تلفن به حالت خاموش باز میگردد.

این نمودار ماشین حالت را ویرایش کنید
مثال نمودار حالت UML – کتابفروشی آنلاین















