آموزشگاه برنامه نویسی تحلیل داده
آموزشگاه برنامه نویسی تحلیل داده

مرورکلی بر ویرایش 2.0 زبان مدل سازی UML

دوره های مرتبط با این مقاله

مرورکلی بر ویرایش 2.0 زبان مدل سازی UML

UML 2.0 یک بعد کاملا متفاوتی از زبان مدل سازی یکپارچه ارائه می دهد، به گونه ای از نظر قابلیت بسیار پیچیده و غنی تر می باشد.
در این نسخه مستندسازی شکل دیگری به خود گرفته و در مقایسه با ویرایش 1.5 به طور قابل توجهی گسترش یافته است.
UML 2.0 امکاناتی به این زبان افزود که موارد کاربرد آن را نسبت به گذشته گسترده تر ساخته است.
UML 2.0 تعریف کاملا مشخص و رسمی از semantics را ارائه می دهد. این امکان نوین را می توان جهت توسعه مدل ها مورد استفاده قرار داد، سپس سیستم های مربوطه را از این مدل ها ایجاد کرد.


ابعاد جدید UML 2.0

ساختار و مستندسازی زبان مدل سازی در ویرایش 2.0 به طور بنیادی مورد بازبینی و ویرایش قرار گرفت. در حال حاضر دو نوع سند در UML موجود می باشد:
1. Infrastructure ساختارهای اولیه ای که زبان مدل سازی بر پایه ی آن بنا شده را مشخص می کند. این بخش مستقیما به کاربران UML مربوط نمی باشد، بلکه بیشتر توجه خود را به توسعه دهندگان ابزار مدل سازی متمرکز می کند. درواقع Infrastructure هسته ی metamodel که Superstructure بر پایه ی آن می باشد را تعریف می کند.
2. Superstructure که notation و semantics را برای نمودارها و المان های مدل آن ها تعریف می کند. Superstructure درواقع سازه های مورد استفاده ی کاربر را تعریف می کند. منظور از سازه های مورد استفاده کاربر آن المان هایی است که کاربر در سطوح اولیه بکار می برد. بنابراین تمرکز اصلی این بخش بر جامعه ی کاربران زبان UML می باشد.
نسخه ی ویرایش شده ی UML به منظور برآورده ساختن یک هدف که بازسازی و اصلاح UML می باشد، ایجاد شد. با ویرایش و بهبود این زبان هم اکنون قابلیت استفاده، تطبیق و پیاده سازی به مراتب آسان تر شده است.
Infrastructure زبان UML برای موارد زیر بکار می رود:
1. ارائه ی یک هسته ی meta-language که دارای قابلیت استفاده ی مجدد می باشد. Infrastructure به منظور تعریف خود UML و زیرساخت های آن بکار می رود.
2. ارائه ی مکانیزم هایی که امکان تنظیم زبان را فراهم می آورد.
Superstructure کارهای زیر را انجام می دهد:
1. ارائه ی پشتیبانی بهتر برای توسعه ی مبتنی بر component.
2. بهبود سازه هایی که برای تعریف معماری مورد استفاده قرار می گیرد.
3. ارائه ی گزینه های بهتر برای مدل سازی رفتار.
نکاتی که در بالا تشریح شد، قابلیت استفاده UML را افزایش داده و یک فهم دقیق تر از کاربرد آن ارائه می دهد.
یک بعد جدید دیگری نیز وجود دارد که در نسخه ی جدید پیشنهاد شده است. این یک پیشنهاد جدید برای OCL (Object Constraint Language) و Diagram Interchange می باشد. تمامی ویژگی های مذکور پکیج کامل UML 2.0 را تشکیل می دهند.


نمودارهای مدل سازی در ویرایش 2.0 UML

مدل سازی تعاملات و برهمکنش ها:

نمودارهای interaction که در نسخه ی 2.0 زبان مدل سازی UML ارائه شد، با ویرایش های قبلی کمی متفاوت است. گفتنی است که مفهوم پایه ای تغییر نکرده، بلکه قابلیت ها و امکانات جدید ارائه شده که کارایی نمودارها را در نسخه ی نوین بهبود می بخشد.
UML2.0 تعامل اشیا (object interaction) را به چهار شیوه ی زیر مدل کرده و مصورسازی می نماید:
1. نمودار sequence یک نمای وابسته به زمان از تعامل بین اشیا ارائه می دهد که اهداف رفتاری یک سیستم را برآورده می سازد. توالی زمانی شباهت بسیار زیادی به ویرایش قبلی دارد. یک تعامل می تواند در هر سطحی از انتزاع در design سیستم، طراحی شود: از تعامل subsystem گرفته تا تعامل در سطح نمونه. در واقع این نوع نمودار نشان می‌دهد که اشیا چگونه با یکدیگر در قالب پیامهایی متوالی ارتباط بر قرار می‌کنند.
2. نمودار communication بر همکنش و تعامل بین اشیا و یا اجزا را در قالب توالی پیام های رد و بدل شده نمایش می‌دهد. این نمودار نمایشگر ترکیبی از اطلاعات به دست آمده از نمودارهای class، sequence و use case است و هر دوی ساختار ایستا و رفتار پویای سیستم را شرح می‌دهند. این نمودار را می توان نسخه ی ویرایش شده ی نمودار collaboration معرفی کرد.
3. نمودار کلی برهمکنش یا interaction overview یک دید کلی ارائه می‌دهد که در آن node ها نشانگر نمودارهای بر همکنش interaction هستند. نمودار ذکر شده همچنین یک دید سطح بالا از مجموعه تعاملات که در قالب یک توالی و ترتیب منطقی گنجانده شده فراهم می نماید که شامل منطق کنترل جریان برای پیمایش بین این برهمکنش ها و تعاملات می باشد.
4. نمودار timing یا زمان بندی گونه ویژه‌ای از نمودارهای برهم کنش هستند که بر روی محدودیت‌های زمانبندی تمرکز دارند. این نمودار در ویرایش 2 ارائه شد و بر محدودیت های زمانی اعمال شده بر پیام های ارسالی و دریافتی در طول یک برهمکنش تمرکز دارد.
از توصیفات بالا نتیجه می گیریم که اهداف تمامی نمودارها در ارسال/دریافت پیام ها خلاصه می شود. حال مدیریت این پیام ها به صورت داخلی در اشیا صورت می گیرد. از این رو اشیا نیز می توانند پیام ها را دریافت و ارسال کند. در این بین سخن از جنبه ی دیگری به نام interface یا رابط به میان می آید. این رابط ها مسئول مبادله ی پیام ها (دریافت و ارسال پیام ها بین یکدیگر) می باشند.
با درنظر گرفتن توضیحاتی که تا کنون ارائه شد، این مسئله روشن می شود که تعاملات و برهمکنش ها در UML 2.0 به گونه ای دیگر به تصویر کشیده می شوند و به همین منظور هم است که نمودارهای جدید به UML اضافه شدند. با این حال اگر نمودارهای جدید را مورد تجزیه و تحلیل قرار دهیم، پی می بریم که این نمودارها هم بر مبنای همان دیاگرام های نسخه ی قبلی پی ریزی و طراحی شده است. تنها تفاوت آن ها در ویژگی های جدیدی است که به نمودارهای مزبور اضافه شده که کارایی آن ها را بهبود بخشیده و آن ها را هدفمند تر ساخته.


مدل سازی همکاری:

همان طور که پیش تر تشریح شد، collaboration جهت مدل سازی تعاملات و همکاری عادی بین اشیا بکار می رود. به عبارتی روشن تر، collaboration یک برهمکنش است که طی آن مجموعه ای از پیام ها توسط یک سری اشیا که نقش های از پیش تعیین شده دارند مدیریت می شود.
مهم ترین نکته قابل توجه، تفاوتی است که بین نمودار collaboration در دو نسخه ی 2.0 و قبلی وجود دارد. برای تمایز قائل شدن بین نمودار نام برده در ویرایش قبلی و کنونی، اسم آن از collaboration به communication تغییر یافته است.
Collaboration را می توان یک کلاس تعریف کرد که دارای attributeها (خصیصه ها) رفتار یا عملیاتی می باشد. بخش های یک کلاس collaboration می تواند user defined بوده و برای نمودارهای interaction (نمودارهای sequence) و المان های ساختاری (نمودار composite structure) بکار گرفته شود.
نمودار زیر الگوی طراحی Observer را به صورت یک collaboration بین شی که نقش آیتم قابل مشاهده و تعدادی شی که نقش مشاهده گر را در آن ایفا می کند به تصویر کشیده است.


آموزش ‏ uml

مدل سازی ارتباط:

نمودار communication کمی با نمودارهای collaboration که در ویرایش قبلی مورد استفاده قرار می گرفت متفاوت است. می توان گفت که نسخه ی اصلاح شده ی آن محسوب می شود، به گونه ای که تمرکز اصلی در این نمودار بر روی پیوند (link) بین اشیا قرار گرفته است.
این link درواقع یک پیوند قابل مشاهده و دیداری می باشد که در نمودار sequence نمی توان از آن سراغی گرفت. در نمودار sequence صرفا می توان پیام هایی که بین اشیا رد و بدل می شود را مشاهده کرد، حتی اگر هیچ پیوندی بین آن ها وجود نداشته باشد.
نمودار communication در اصل برای جلوگیری از رخداد این اشتباه (استفاده از نمودار شی توسط مدل ساز به عنوان پایه ی ترسیم مبادله ی پیام ها بدون وجود هیچ گونه پیوند میان اشیا) عرضه شد.
هریک از اشیا موجود در نمودار communication را object lifeline می نامند.
انواع پیام در نمودار communication با انواع پیام در نمودار sequence یکسان می باشد. نمودار communication می تواند پیام های ایجاد شی، گم شده، یافت شده، همزمان، ناهمزمان و بازگشتی را مدل سازی نماید.
نمودار زیر یک دیاگرام شی را به نمایش می گذارد که از سه شی و دو پیوند (link) تشکیل شده. این نمودار زیرساخت و پایه ی نمودار communication را شکل می دهد. همان طور که قبلا ذکر شد، هر شی ای که در نمودار communication قابل رویت می باشد، یک object lifeline خوانده می شود.


آموزش ‏ uml

مدل سازی برهمکنش کلی (interaction overview):

نمودار sequence در اصل برای مدل سازی یک جنبه از برنامه ی کاربردی مورد نظر بکار می رود. براین اینکه بتوان کل یک برنامه را مصور سازی کرد، می بایست از چندین نمودار sequence بهره گرفت. از این رو حین مدل سازی یک جنبه از برنامه، ممکن است کل فرایند (تمامی جنبه های برنامه) را فراموش کرده و این منجر به بروز خطاهایی شود.
برای حل این مشکل، نمودار جدید interaction overview جریان کنترل را از دیاگرام activity و messaging specification را از نمودار sequence باهم ترکیب می کند.
نمودار activity از activity ها و جریان اشیا (object flow) برای توصیف فرایند استفاده می کند. نمودار Interaction overview از برهمکنش ها و نمونه های برهمکنش (interaction overview) استفاده می کند. Lifeline (اشیا) و message ها یافت شده در نمودار sequence تنها در interaction ها و نمونه های interaction یافت می شود. با این حال، lifeline هایی که در نمودار interaction overview مشارکت دارند، بایستی همراه با اسم نمودار فهرست شود.
دیاگرام زیر نمودار interaction overview را با مراحل تصمیم گیری که به صورت لوزی ترسیم شده و همچنین فریم ها و نقطه ی پایان نمایش می دهد.


آموزش ‏ uml

مدل سازی نمودار زمان بندی (timing diagram):

اسم این نمودار مورد کاربرد آن را نیز تشریح می کند. نمودار مزبور زمان رخدادها را در طی چرخه ی حیات آن توصیف می کند.
این نمودار تعامل بین اشیا را نشان داده و تاکید آن بر زمان می باشد. نمودار timing تلفیقی از دو نمودار state machine و interaction می باشد.
نمودار timing از دو خط زمانی (timeline) زیر استفاده می کند:
1. state time line
2. general value time line
نمودار timing یک فضای مستطیل شکل در ناحیه ی محتوا یک کادر یا frame ایجاد می کند. این ناحیه ی مستطیل شکل به صورت افقی ترازبندی شده و از راست به چپ خوانده می شود. ممکن است برای نمایش رابطه ی تعاملی بین آن ها، چندین lifeline به صورت پشته بر روی هم و در محدوده ی کادر انباشته شوند.


آموزش ‏ uml

در پایان باید گفت که ویرایش 2.0 ویژگی های جدیدی به مجموعه امکانات زبان UML افزوده و بدین وسیله کارایی و موارد استفاده ی آن را افزایش داده است. در UML 2.0 دو دسته ی کلی وجود دارد: superstructure و infrastructure. اگرچه نمودارهای نوینی که در این نسخه ارائه شده دارای ویژگی ها و قابلیت های جدید می باشد، اما پایه و اساس آن را همان نمودارهای ورژن قبلی تشکیل می دهند.
UML 2.0 چهار نوع نمودار interaction ارائه می دهد: sequence، communication، interaction overview و در پایان دیاگرام timing که اختیاری می باشد. هر چهار نمودار مذکور از frame notation برای محصور کردن یک interaction استفاده می کنند. استفاده از frame ها این امکان را می دهد که interaction ها را مجددا درقالب نمونه های interaction (interaction occurrences) استفاده کرد.

  • 2080
  •    1460
  • تاریخ ارسال :   1394/11/02

دانلود PDF دانشجویان گرامی اگر این مطلب برای شما مفید بود لطفا ما را در GooglePlus محبوب کنید
رمز عبور: tahlildadeh.com یا www.tahlildadeh.com
ارسال دیدگاه نظرات کاربران
شماره موبایل دیدگاه
عنوان پست الکترونیک

ارسال

آموزشگاه برنامه نویسی تحلیل داده
آموزشگاه برنامه نویسی تحلیل داده

تمامی حقوق این سایت متعلق به آموزشگاه تحلیل داده می باشد .