UML و كاربرد آن
در مدلسازی شیئگرای نرم افزار با استفاده ازUML چهرههایی مختلف یك سیستم با استفاده از دیاگرامهای مختلف نمایش داده میشوند ساختار پایدار سیستم از طریق دیاگرامهای كلاس واكنش بین قطعات مختلف مدل از طریق دیاگرامهای كنش مثل دیاگرامهای توالی و دیاگرانمهای همكاری نمایش داده میشود |
دسته بندی | مطالعات ارتباطی و فناوری اطلاعات |
فرمت فایل | doc |
حجم فایل | 30 کیلو بایت |
تعداد صفحات فایل | 65 |
بنابراین یك مدل كامل شامل چندین دیاگرام از انواع مختلف میباشد. بنابراین سازگاری بین دیاگرامهای مختلف از اهمیت بسیاری برخوردار است.
در این مقاله آنالیز سازگاری بین دیاگرامهای گلاس و توالی با استفاده از گرافهای نوع ویژگی و تبدیلات آنها شرح داده شده است. اگر بخواهیم به طور صریح بگوییم دیاگرامهای كلاس به گرافهای نوع ویژگی كه به آنها گرافهای كلاس میگوییم تبدیل میگردند.همچنین چندتاییها به قیودی تبدیل میگردند كه به آنها قیود چندتایی میگوییم. دیاگرامهای توالی توسط یك گرامر گرافگونه نمایش داده میشوند كه به آنها گرامرهای گرافگونه كنش میگویم.
آنالیز سازگاری شامل موارد “ وجودی” ، “ آشكاری” و “ چند تایی” میگردد برای آنالیز سازگاری از تكنیكهای جبری موجود، برای گرامرهای گرافگونه استفاده شده است.
1ـ ممقدمه
برای ایجاد یك سیستم جدید واعمال تغییرات در یك سیستم موجود در ابتدا باید كاركرد آن سیستم تعیین گردد. درحقیقت ساختار ایستا و پویای سیستم باید كاملاً مشخص و مدلسازی گردد. بنابراین واجب است، عناصری برای نمایش ساختار داخلی، رفتار سیستم و كنش بین قطعات مختلف آن در نظر گرفته شوند. در صورتی كه از یك متد شیئگرا استفاده كنیم، در آنصورت UML برای نمایش و مدلسازی سیستم و قطعات آن انتخاب مناسبی است. UMLچند نوع مختلف دیاگرام را كه هر كدام سیستم را از زاویهای خاص نمایش میدهند،. تعریف میكند. هر دیاگرام یا ساختار ایستای سیستم، یا رفتار داخلی آن و یا كنش بین قطعات مختلف را نمایش میدهد. بنابراین مدل كامل سیستم شامل چندین دیاگرام از انواع مختلف میباشد. علاوه براینكه دیاگرامها از نظر املایی باید درست باشد و همچنین هر یك به تنهای سازگار باشند، دیاگرامهایی كه از یك نوع نیستند، نیز باید با هم سازگار باشند. برای آنالیز سازگاری دیاگرامهای كلاس و توالی از گرافهای نوع ویژگی و تبدیلات آنها استفاده شده است.
برای درك بهتر راه حل ارائه شده در بخش بعد، ابتدا دیاگرامهای كلاس و توالی و ویژگیهایی كه باید بررسی گردند، مورد مطالعه قرار می گیرند.
دیاگرامهای UML
UML یك زبان مدلسازی یكپارچه می باشد ،كه برای مدلسازی انواع سیستم های نرم افزاری مبتنی بر متدولوژی شیئی گرا در نظر گرفته شده است . این زبان برای تشریح ، نمایش ،ساخت و X مستند سازی سیستم های نرم افزاری مورد استفاده قرار می گیرد. نسخه1-1 UML در نوامبر 1997 توسطOMG مورد قبول واقع شده است و نسخه 3-1 آن از مارس 1999در دسترس میباشد. به خاطر استفاده فراوان این زبان در صنعت و تحقیقات این زبان بصورت استاندارد در آمده است.
1-2- دیاگرامهای كلاس
1-1-2- تعریف
دیاگرامهای كلاس ساختار ایستای سیستم را نمایش میدهند، یعنی عناصر موجود در سیستم، ساختار داخلی آنها و ارتباط آنها با سایر عناصر سیستم را مشخص می كنند. عناصر سیستم بصورت كلاس در دیاگرام كلاس نمایش داده میشوند.
چند نوع مارتباط ایستا بین كلاسها وجود دارد یعنی تناظر، مجتمع، تركیب، وابستگی و تعمیم .
مفهوم بستهها در UML یك مكانیزم درختی برای گروهبندی كلاسها، به دست میدهد. ساختار داخلی كلاسها با لیستهایی از متدها و ویژگیها نمایش داده میشود. جزئیات بیشتر عناصر مدل در بخش بعد تشریح شده اند. وابسته به سطح مجرد سازی و پیچیدگی سیستم ، عناصر كمتر و یا بیشتری مورد بررسی قرار می گیرند.
2-1-2 عناصر دیاگرامهای كلاس
یك كلاس یك شرح برای مجموعة اشیائی است ،كه دارای یك ساختار ، رفتار ، ارتباطها و معنی می باشند. هر كلاس دارای یك نام می باشد و می تواند متعلق به یك بسته باشد.
اشیائی كه از یك كلاس هستند دارای یك لیست ویژگیها و یك لیست متدهای یكسان میباشند،اماL1 مقادیر ویژگیها ممكن است متفاوت باشند. یك دیاگرام كلاس میتواند دارای اشیایی باشد، كه نمونههایی از كلاسها میباشند. شكل معمول تعریف یك ویژگی بصورت زیر میباشد.
Visibility name : type ?? expression
نوع ویژگی (type- expression) توسط UML تعریف نمیشود و این مقدار وابسته به زبان میباشد در حقیقت نوع متغیر، برای زبانی است، كه در نهایت كلاس مورد نظر در آن ایجاد و پیادهسازی خواهد شد. ممكن است كلاسهای موجود در دیاگرام كلاس به عنوان نوع متغیر برای ویژگیها مورد استفاده قرار گیرند. این زمانی است كه یك ویژگی یك مرجع برای یك شیء از آن كلاس نگهداری میكند. آشكاری ویژگیها شامل یكی از موارد protecded(#) , public(+) و prirate(-)میباشد. ویژگیهای عمونی (public) برای سایر كلاسها قابل دسترس هستند،ویژگیهای محافظت شده تنها برای اشیاء همان كلاس و یا زیركلاسهای آن قابل دسترس میباشند و ویژگیهای خصوصی(( prirate تنها برای خود شیء قابل دسترس میباشند. سایر جزئیات مثل مقادیر اولیه، چند تایی و رشتههای مربوط به ویژگی ها ، همگی اختیاری هستند.
یك متد در UMLتوسط یك رشته كه به شكل زیر میباشد تعریف میگردد.
Visitility name (parameter
Visibility name (parameter – list): return-type-expression
لیست پارامترهای هر متد شامل یكسری پارامتر میباشد كه همگی دارای فرمتی به شكل زیر هستند.
Name: type-expression
آشكاری متدها همانند ویژگیها مورد بررسی قرار میگیرد. متدی كه یك عملیات را محقق میسازد دارای همان خصوصیات عملیات میباشد و البته دارای یك بدنه پیادهسازی میباشد كه عملیات را پیادهسازی میكند.
كلاسها بصورت درختی توسط بستهها ؟؟سازماندهی میگردند.