شنبه 14 تیر 1399 | Saturday 4 th of July 2020 صفحه اصلی گروه الکترونیکی کامپیوتر
1-2-1-1- زبان مدلسازیUML

       لزومی نداره در مورد فوائد طراحی شیء گرای یک سیستم نرم افزاری توضیحات مفصلی ارائهبشود.  همگی کم و بیش در این باب مطالعاتی داشتید و واضح و مبرهن است که برای پیادهسازی صحیح و استفاده بهینه منابع باید طراحی ساختارمند و شیء گرای سیستم در اولویتباشد . کلید و راهیافت طراحی شیء گرا و مناسب یک سیستم نرم افزاری  مدل است ! مدل  ابزاری بصریاست  برای چینش اجزاء مختلف سیستم نرم افزاری و نمایش روابط بین انها و سایرموجودیتهای سیستم نرم افزاری . برای اینکه طراحی مدل برای سیستمهای نرم افزاریقالبی یکدست و یکپارچه و جهان شمول داشته باشد و تبادل اطلاعات بین مدلهای طراحیشده توسط افراد مختلف امکان پذیر باشد تلاشهای متعددی صورت گرفته است کهUML یکی ازانهاست  که در حال حاضر متداولترین استاندارد تولید مدل برای سیستمهای نرم افزاریدر سراسر دنیاست.

 

 برای مدل سازیسیستمهای نرم افزاری و تسهیل طراحی شیء گرای سیستم 9 دیاگرام ( و استانداردهایمرتبط با هرکدام ) را ارائه مینماید . ! UML به عنوان استانداردیبرای طراحی و پیش بینی جزئیات فنی سیستم نرم افزاری  نحوه ارتباط اجزاء  نوع ونحوه کارکرد قسمتهای مختلف و ... یکی از ملزومات تولید کنندگان نرم افزار در دنیایامروز است . حتی اگر مستقل کار میکنید و نرم افزارهای کوچک تولید میکنید با استفادهازUML در "اغلب" موارد به بالاترین حد بهینگی مراحل طراحی و تولید نرم افزارتان خواهید رسید.

مفاهیم یو ام ال در قالب دسته هایی به نام دید(view) طبقه بندی می شوند. هر "دید" در واقع زیرمجموعه ای از ساخت‌های مدلسازی است که یک جنبه از سیستم را نمایش می دهند. در بالاترین سطح طبقه بندی دیدها به چهار حوزه کلی تقسیم بندی می شوند .

- دسته بندی ساختاری:

عناصر سیستم و ارتباط انها با سایر عناصر را توصیف می کند. برای مدل کردن عناصر سیستم از مفهوم دسته کننده  استفاده می شود. دسته کننده‌ها شامل کلاس،عامل، مورد کاربرد،گره(Node) همکاری(Collaboration) و مولفه هستند. دسته کننده‌ها پایه ای می سازند که رفتارهای پویای سیستم روی ان تعریف می شوند. حوزه طبقه بندی ساختاری شامل سه دید مختلف است:

1- دید ایستا(Static View): این دید مفاهیم مربوط به حوزه برنامه کاربردی و مفاهیم داخلی ابداع شده به عنوان  بخشی از پیاده سازی برنامه کاربردی را مدل می کند. اجزای تشکیل دهنده دید ایستا عبارتند از کلاسها و روابط(ارتباط و تعمیم) و وابستگی های(مانند realizationو usage) بین انها. دید ایستا در قالب نمودارهای کلاس نمایش داده می شود.

2- دید طراحی(Design View) این دید ساختار طراحی خود برنامه را مدل می کند. نمودارهای پیاده سازی که در این دید مورد استفاده قرار می گیرند عبارتند از : نمودار ساختار مرکب نمودار همکاری و نمودار مولفه

3- دید مورد کاربرد(Use Case view): این دید کارکرد یک موضوع(مثلا یک سیستم) راان طور که توسط عاملین خارجی که عملگر(Actor) نامیده می شوند و با موضوع مورد نظر(سیستم) در یک دیدگاه خاص تعامل دارند نمایش می دهد.

- رفتار پویا(Dynamic Behavior)

رفتار یک سیستم و سایر دسته کننده هارا در مرور زمان توصیف می کند. یک رفتار به صورت تغییراتی در وضعیت سیستم توصیف می‌شود که در دید ایستا ترسیم می شوند. حوزه رفتار پویای سیستم شامل سه دید زیر است:

1- دید ماشین وضعیت(State Machine View) : این دید حالتهای ممکن تاریخچه زندگی شیئی از یک کلاس را مدل می کند.

  • دید برهمکنش(Interaction View) : دید برهم کنش توالی پیامهای مبادله شونده بین بخشهای یک سیستم را توصیف می کند. . این دید از دو نمودار ارتباطات و نمودار توالی استفاده میکند.
  • دید فعالیت(Activity View) : یک فعالیتدر واقع گردش کنترل در میان فعالیتهای محاسباتی درگیر در انجام یک محاسبه یا گردش کار می باشد. فعالیتها با نمودار فعالیت نمایش داده می شوند.

- چیدمان فیزیکی(Physical Layout)

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

1- دید بکارگیری(Deployment View): نمودار به کارگیری مورد استفاده در این دید نمایشگر پیاده سازی فیزیکی مصنوعات زمان اجرا روی گره هاست.

- سازماندهی مدل(Model Organization)

توصیف کننده سازماندهی خود مدلها در واحدهای سلسه مراتبی می باشد. واحد ژنریک سازماندهی مدلها بسته(package) است.یک مدل در واقع سلسله مراتبی از بسته هاست که انتزاع معنایی کاملی از سیستم از یک دیدگاه خاص است. این بخش شامل یک دید است :

1- دید مدیریت مدل(Model Management View) . نمودار مورد استفاده در این دید نمودار بسته بندی است.

طی چند سال اخیر نرم افزارهای متعددی برای مدلسازی با استفاده از زبان umlتولیدوبه کار گرفته شده است.برای پیاده سازی مدلهای تحلیل این پروژه من از نرم افزار Enterprise Architectبهره بردم که در ادامه به معرفی مختصری از ان می پردازم. 

Compatability by:
آخرین به روز رسانی سایت: سه شنبه, 22 اسفند 1391 - 00:26