دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۲۹
  • دی

جلسه ۱۵-۰۵ : راهنمای سریع UML

  • دسته‌بندی‌ها :
جلسه ۱۵-۰۵ : راهنمای سریع UML
    • جزئیات
    • نوع محتواآموزشی

      مقدمه

      سلام و وقت بخیر. با آموزش زبان مدل سازی یکنواخت (UML) از وب سایت آموزشی پی وی لرن در خدمتتون خواهیم بود. مروری بر آموزش سریع UML رو در این قسمت نیز ادامه می دهیم.

      مروری بر آموزش سریع UML

      مروری بر آموزش سریع UML رو با ترسیم نمودار Interaction در UML ادامه می دهیم.

      ترسیم نمودار Interaction در UML

      interaction بخشی از رفتار پویای سیستم است. این رفتار تعاملی (interactive) در UML توسط دو نمودار معروف به نمودار توالی (sequence) و نمودار همکاری (collaboration) نشان داده شده است.

      نمودار توالی یا sequence بر توالی زمانی پیام ها تأکید دارد و نمودار همکاری (collaboration) بر سازمان دهی ساختاری اشیایی که پیغام ها را ارسال و دریافت می کنند، تأکید دارد.

      هدف از نمودارهای Interaction در UML

      هدف از نمودارهای Interaction یا تعامل، تجسم رفتار تعاملی سیستم است.

      نمودار توالی (sequence) و همکاری (collaboration) با هم، برای نمایش طبیعت یا ماهیت پویا اما از زاویه ای متفاوت استفاده می شود.

      هدف از نمودار های Interaction را می توان به شرح زیر بیان نمود:

      • برای نمایش رفتار پویای یک سیستم.
      • برای توصیف جریان پیام در سیستم.
      • برای توصیف سازمان دهی ساختاری اشیاء.
      • برای توصیف تعامل بین اشیاء.

      چگونه می توان نمودار تعامل را ترسیم کرد؟

      جنبه پویای یک سیستم را می توان به عنوان یک تصویر فوری یا لحظه ای از یک سیستم در حال اجرا در یک لحظه ی خاص تعریف کرد.

      ما در UML دو نوع نمودار تعامل داریم. یکی نمودار دنباله و دیگری نمودار همکاری است. نمودار توالی، توالی زمانی جریان پیام را از یک شی به موضوع دیگر ضبط می کند و نمودار همکاری سازماندهی اشیاء در یک سیستم شرکت کننده در جریان پیام را توصیف می کند.

      موارد زیر را باید قبل از ترسیم نمودار interaction مشخص نمود.

      • اشیاء شرکت کننده در interaction .
      • جریان پیام ها در بین اشیاء.
      • دنباله و ترتیبی که پیام ها در آن جریان دارند.
      • سازمان دهی اشیاء.

      نمودار همکاری (Collaboration)

      دومین نمودار زیر مجموعه ی interaction،  نمودار همکاری یا collaboration است. این دیاگرام سازمان دهی شی را همان طور که در نمودار زیر مشاهده می شود نشان می دهد. در نمودار collaboration ، ترتیب فراخوانی متد ها را توسط برخی از تکنیک های شماره گذاری به صورت زیر نمایش می دهد. عدد ها بیانگر چگونگی فراخوانی متد ها یکی پس از دیگری است.

      فراخوانی متد ها در دو نمودار  توالی یا sequence و همکاری یا collaboration تقریبا مشابه است. در نمودار ترتیب یا sequence ، اعمال و کارهای اشیا را در یک توالی زمانی نشان داده و بر اساس زمان تنظیم می شود و توصیف ساختار شی را نشان نمی دهد ، در حالی که نمودار collaboration یا همکاری ، بر روی ارتباط بین اشیا تاکید می کند.

      برای انتخاب بین این دو نمودار ، باید بر نوع نیاز تأکید شود. اگر ترتیب و توالی زمانی مهم باشد ، از نمودار sequence استفاده می شود. اگر رابطه ی ما بین اشیا مورد نیاز باشد ، از نمودار collaboration استفاده می شود.

      در کجا می توان از نمودارهای تعامل یا Interaction استفاده کرد؟

      • برای مدل سازی جریان کنترل بر اساس توالی و ترتیب زمانی.
      • برای مدل سازی جریان کنترل بر پایه ی رابطه ی میان اشیا و ترتیب قرار گیری شان.
      • برای مهندسی رو به جلو.
      • برای مهندسی معکوس.

      ترسیم نمودار Statechart در UML

      این نمودار حالت های مختلف یک شی در یک سیستم را توصیف می کند. یک نمودار Statechart یک ماشین حالت یا وضعیت (state machine) را توصیف می کند. ماشین حالت را می توان به عنوان دستگاهی تعریف کرد که حالات و وضعیت های مختلف یک شی را تعریف می کند و این حالت ها توسط رویداد های خارجی یا داخلی کنترل می شوند.

      همان طور که نمودار Statechart حالات و وضعیت ها را تعریف می کند ، از آن برای مدل سازی چرخه ی حیات یک شی استفاده می شود.

      با مروری بر آموزش سریع UML همراه هستیم.

      اهداف نمودارهای Statechart در UML

      در زیر اهداف اصلی استفاده از نمودار های Statechart بیان شده است.

      • برای مدل سازی جنبه ی پویای یک سیستم.
      • برای مدل سازی چرخه ی حیات یک سیستم واکنشی.
      • برای توصیف وضعیت های مختلف یک شی در طول چرخه ی حیات آن.
      • برای مدل کردن وضعیت های متفاوت یک شیء، یک دستگاه حالت یا state machine تعریف کنید.

      چگونه می توان یک نمودار Statechart را ترسیم کرد؟

      نمودارهای statechart برای توصیف وضعیت های مختلف بسیار مهم هستند.

      هنگام وقوع یک رویداد خاص ، وضعیت ها یا State ها را می توان وضعیت اشیاء تعریف نمود.

      قبل از ترسیم نمودار وضعیت یا Statechart باید نکات زیر را به روشنی تشریح کنیم.

      • اشیاء مهمی را که باید مورد تجزیه و تحلیل قرار گیرند شناسایی کنید.
      • وضعیت ها را مشخص کنید.
      • وقایع و رویدادها را مشخص کنید.

      در کجا می توان از نمودار های Statechart استفاده کرد؟

      نمودار های statechart برای مدل سازی جنبه های پویای سیستم استفاده می شود. با این حال ، این مدل دارای ویژگی های متفاوتی برای مدل سازی ماهیت پویا می باشد.

      کاربرد های اصلی نمودار Statechart را می توان به شرح زیر شرح و توضیح داد.

      • برای مدل سازی وضعیت های شیء یک سیستم.
      • برای مدل سازی سیستم واکنشی. سیستم واکنشی از اشیاء واکنشی (reactive) تشکیل شده اند.
      • برای شناسایی وقایع و رخداد هایی که مسئول این تغییر وضعیت ها می باشند.
      • مهندسی رو به جلو و مهندسی معکوس.

      مروری بر آموزش سریع UML رو ادامه می دهیم.

      ترسیم نمودار فعالیت یا Activity در UML

      نمودار فعالیت یا Activity وسیله ای برای تجزیه و تحلیل سطح های مختلف محسوب می شود. در مرحله طراحی، این نمودار کمک می کند تا عملیات ها را بهتر تعریف و توصیف کنیم.

      نمودار Activity در واقع یک نمودار برای نمایش جریان کار از یک فعالیت به فعالیت دیگر است.

      جریان کنترل از یک عمل به عمل دیگر ترسیم می شود. این جریان می تواند پی در پی و متوالی (sequential) ، انشعابی یا شاخه ای (branched) و یا همزمان (concurrent) باشد. نمودارهای فعالیت با استفاده از عناصر مختلف

      مانند انشعاب (fork) ، پیوند (join) و غیره می تواند انواع جریان کنترل را مدیریت نماید.

      اهداف نمودار Activity

      این دیاگرام رفتار دینامیکی سیستم را نشان می دهد. از نمودار activity برای نشان دادن جریان پیام از یک فعالیت به فعالیت دیگر استفاده می شود.

      activity عملیات خاص یا عملی است که سیستم قادر به انجام آن است. نمودار activity نه تنها برای تجسم ماهیت پویای یک سیستم بلکه از آن ها برای ساخت سیستم های اجرایی نیز با استفاده از تکنیک های مهندسی رو به جلو و معکوس استفاده می شود. تنها مورد از دست رفته در نمودار activity قسمت پیام است. زیرا این نمودار هیچ گونه جریان پیامی را از یک فعل به فعل دیگر نمایش نخواهد داد.

      نمودار activity گاهی اوقات به اشتباه به عنوان نمودار flowchart در نظر گرفته می شود. اگر چه نمودار های فعالیت مانند نمودار های flowchart به نظر می رسند ، اما نمی توانیم آن ها را به عنوان دیاگرام flowchart به حساب آوریم. نمودار activity جریان های مختلف مانند موازی (parallel) ، شاخه ای یا منشعب (branched) ، همروند (concurrent) و مجرد و منفرد (single) را نشان می دهد.

      چگونه می توان نمودار activity را ترسیم کرد؟

      قبل از ترسیم نمودار activity ، باید عناصر زیر را شناسایی نماییم.

      • activity ها
      • Association یا رابطه ها
      • Condition ها
      • constraint ها یا محدودیت ها

      پس از شناسایی پارامترهای فوق ، باید یک طرح ذهنی از کل جریان ایجاد کنیم. این طرح ذهنی سپس به یک نمودار activity تبدیل می شود.

      در کجا می توان از نمودار فعالیت یا Activity استفاده نمود؟

      نمودار activity را می توان برای اهداف زیر در نظر گرفت.

      • مدل سازی جریان کاری با استفاده از activity ها.
      •  مدل سازی نیاز های کسب و کار.
      • درک سطح بالا از ویژگی های سیستم.
      • شناسایی Use Case ها
      • توصیف ارتباط بین Use Case ها
      • جهت تشریح پیچیدگی و نمودار جریان کاری یک عمل در Use Case ها
      • تشریح جزئیات فرایند ها در یک Activity سطح بالا

      نمودارهای رفتاری (Behavioral Diagrams)

      هر سیستمی می تواند دارای دو جنبه ، استاتیک و پویا باشد. بنابراین ، هنگامی که هر دو جنبه کاملاً پوشش داده می شود، یک مدل کامل محسوب می شود.

      نمودارهای رفتاری اساساً جنبه پویای سیستم را ضبط می کنند. جنبه دینامیکی را می توان بیش تر به عنوان قسمت های قابل تغییر و حرکت یک سیستم توصیف کرد.

      UML دارای پنج نوع نمودار رفتاری زیر است.

      • نمودار Use case
      • نمودار توالی (Sequence)
      • نمودار همکاری (Collaboration)
      • نمودار حالت (statechart)
      • نمودار فعالیت (Activity)

      مروری بر آموزش سریع UML رو به پایان می رسونیم.

      کلام پایانی

      مروری بر آموزش سریع UML در این بخش نیز ادامه دادیم. در بخش بعدی مرور کلی بر ویرایش ۲٫۰ زبان مدل سازی UML رو مورد بررسی قرار می دهیم.

      QR:  جلسه ۱۵-۰۵ : راهنمای سریع UML
      به اشتراک بگذارید