روش های ارزیابی و صحه گذاری معماری نرم افزار

سیده آمین ارمان

کاربر نگاه دانلود
کاربر نگاه دانلود
عضویت
2016/05/10
ارسالی ها
1,730
امتیاز واکنش
20,744
امتیاز
795
محل سکونت
البرز
مهندسین نرم افزار برای توصیف جنبه های ایستا و پویای معماری یک سیستم نرم افزاری از مدلهای مختلف استفاده می کنند.

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

برای توصیف ساختار و رفتـار سیسـتم از شـیوه هـای مدلسازی و علامت گذاریهای مختلفی میتوان استفاده نمود

که برخی از انها زبان مدلسـازی یکپارچـه، ‫اتاماتا، جبرفرایندی، شبکه های پتری، نمودار ترتیب پیغام، نقشه مورد کاربری، زبان توصیف معماری و ماشین شیمیای انتزاعی CHAM می با شند.

در ادامه، هر یک از این علامتگذاریها بطور مختصر توضیح داده میشود

اتاماتا
با استفاده از ماشین خودکار میتوان رابـ ـطه ریاضی بامعنی برای یک سیستم بدسـت اورد کـه بـه کمـک ان همکاری و همزمانی زیرسیستمها مدل میگردد. همچنین این رابـ ـطه یک رابـ ـطه ترکیبی است؛ زیرا سیسـتم را بعنوان مجموعهای ازحالات، مدل میکند و رفتار سیستم را بوسیله گذارهای بین حالات، توصیف مـیکنـد
زبان مدلسازی یکپارچه‬
زبان مدلسازی یکپارچه یک زبان شبه رسمی و استاندارد برای توصیف اسان معماری نرم افزار است که گروه مدیریت شی ان را معرفی کرد. ایـن زبـان، مجموعـه قدرتمنـدی از عناصـر مدلسـازی، نمودارهـا و ساختارهای از پیش تعریف شده، برای توصیف ویژگیهای ساختاری و رفتاری معماری نرم افزار معرفی نموده است و ابزارهای مناسبی از ان پشتیبانی می کنند. اما اصول تعریف شده در ان نسبت به اتاماتا دقـت کمتـری دارد. زبان مدلسازی یکپارچه، ساختارهایی را بـرای مدلسـازی مولفـه هـای معمـاری، واسـط هـای انهـا و ‫استقرارشان بر روی کامپیوترهای میزبان فراهم میکند.‬
با استفاده از نمودارهای مختلف زبان مدلسازی یکپارچه می توان نرم افزار را در سطوح مختلفـی از انتـزاع و با نگرشهای متفاوتی توصیف نمود. با اینکه برای این نمودارها تعریف رسمی ارائه نگردیده اسـت؛ امـا انهـا انعطاف پذیرند و برای استفاده و نگهداری، ساده و مناسب اند.
زبان توصیف معماری
زبانهای توصیف معماری بعنوان راه حلی برای توصیف مولفه های معماری نرم افزار و تعامل بین انها بصورت انتزاعی و بدون جزئیات پیاده سازی معرفی شدند. این زبانها از مدلسازی به منظـور سـاختاربندی سیسـتم و ترکیب عناصر مختلف پشتیبانی میکنند. زبانهای توصیف معماری با نمایش ساده و انعطاف پذیر، معماری نرم افزار را رسمی میکنند و ممکن است شامل یک زبان متنی با توصیفات رسمی یـا شـبه رسـمی، یک زبان گرافیکی و یا ترکیبی از هر دو باشند. ویژگی اغلب زبانهای توصیف معماری، تمرکز بر روی توصیف ساختار ایستای یک معماری، بدون توجه به وجه پویـای معمـاری اسـت.‬

به غیر از زبان Wright بقیه روشهای مبتنی بر زبان توصیف معماری، تفـاوتی بـین سـبکهـای مختلـف معماری قائل نمی شوند و اغلب بطور غیررسمی تعریف شده اند که این مسئله تحلیل و درستیابی صـفات معماری را مشکل میکند نمونه هایی از ایـن زبانهـای توصـیف معمـاری LILEANNA, Darwin, C SADL, Rapide, MeTaH, Wright, weaves, uniCon, ARTEk, Aesop می باشند.
نقشه مورد کاربری
نقشه مورد کاربری نیز مشابه زبان مدلسازی یکپارچه از ساختار گرافیکی برای توصیف سیستم استفاده می کند. این نوع علامتگذاری، امکان توصیف یکپارچه و سطح بالا را از رفتار سیستم در تمام فازهای توسعه و بدون درنظرگرفتن جزئیات فراهم میکند. همچنین چگونگی ساختاربندی سیستمهای پیچیده و رفتار انهـا را توصیف میکند. اما نقشه مورد کاربری در فـراهم نمـودن مشخصـه هـای کامـل رفتـاری سیسـتم، کمکـی ‫نمی کند. از معایب نقشه موردکاربری، نبود معانی خوب تعریف شده و نیاز بـه ورودیهـای ‫زیاد توسط انسان است
جبر فرایندی
هر سیستم دارای رفتاری است که این رفتار، فرایندهای دستیابی به داده ها را نشان مـیدهنـد. ایـن فراینـدها ‫می توانند بصورت موازی نیز اجرا شوند و داده ها را به ترتیب تاثیرشان برروی رفتار سیستم جابجا نمایند. در بسیاری از کاربردها ساده تر است که رفتار سیستم به صورت جبری و به شکل موردی بیـان شـود. جهت نمـایش رفتـار سیسـتمها در سـطوح مختلـف انتـزاع و بصـورت جبـری از نمـایش جبـر فراینـدی استفادهمیشود. جبرهای فرایندی مثل ‪ CSP‬وCCS روشهای مدلسـازی معـروف جهـت تحلیـل وظیفه مندی سیستمهای موازی هستند. در این روشها بـرای توصـیف رفتارهـای همزمـان از مجموعـه ای از موجودیتها، فرایندها یا اعمال اجرایی تجزیه ناپذیر استفاده میشود. فرایندها نیز با استفاده از عملگرهایی که شامل اشکال مختلف ترکیبی هستند با هم ترکیب میشوند. به کمک جبر فرایندی، یک مدل رسمی از سیستمهای همزمان ارائه میشود. این مـدل رسـمی معمـولاً بـه شکل یک سیستم گذار بر چسب دار بیان می شود کـه بـه منظـور اسـتخراج خـواص و ویژگـیهـای نا مطلوب ان از اصول و قوانین جبری استفاده می شود
شبکه های پتری
شبکه های پتری، تکنیک مدلسازی رسمی برای توصیف سیستمهای توزیعی،‬ همزمان و همگام در سطوح مختلف انتزاع بشمار میروند این شبکه ها مبتنی بر وضـعیت هسـتند نـه مبتنی بر رخداد که این مدل نمودن صریح وضعیت هر مورد را امکانپذیر میسازد. شـبکه هـای پتـری مدلهایی از جنبه های ساختاری و رفتاری یک سیستم رویداد گسسته را ارائه میدهنـد. همچنـین چـارچوبی برای تحلیل، اعتبارسنجی و ارزیابی "کارایی" و "قابلیت اطمینـان" فـراهم مـینماینـد. شـبکه هـای پتـری، گرافهای چندگانت جهتدار و شامل دو عنصر مکان و گذار هستند. شبکه های پتری، علاوه بر ساختار و تعاریف رسمی، دارای نمایش گرافیکی نیز هستند که فهم انها را ساده تر می کند. اما جدا از این سادگی، نقطه ضعفهایی برای مدلسازی و تحلیل سیستمهای بزرگ و پیچیده بـا ایـن شبکه ها وجود دارد. در همین راستا برای اینکه شبکه های پتری مفید واقع شوند، بسطهای مختلفـی از انهـا ‫ارائه گردیده است.
نمودار ترتیب پیغام
نمودار ترتیب پیغام، زبانی است که تعامل میان مولفه ها یا فرایندها و تعامل بین نمونـه هـا و محـیط را مـدل می نماید. در این مدل که مبتنی بر سناریو است؛ ارتباط میان نمونه ها یعنـی ارسـال و دریافـت پیغـام و ‫رخدادهای محلی و همچنین ترتیب بین انها توصیف میشود. این زبان ضمن تعریف رفتار جزئی سیستم، محدودیتهایی روی مقادیر داده منتقل شـده و زمـان رخـدادها اعمال میکند. از طرفی نمودار ترتیب پیغام دارای نمایش گرافیکـی اسـت. در نمودار ترتیب پیغام، سناریوهای ساده که بوسیله نمودار ترتیب پیغام پایه توصیف شده اند با هم ترکیب میشود و نمودارهای ترتیب پیغـام سـطح بـالاتری را تشکیل می دهند. به همین سبب امکان طراحی ساخت یافته را فراهم میکنند.‬
 

برخی موضوعات مشابه

بالا