دسته: سمینار کامپیوتر
پایان نامه روشهای ارزیابی معماری نرم افزار
قیمت فایل فقط 7,000 تومان
پایان نامه روشهای ارزیابی معماری نرم افزار
چکیده
این نوشتار، گزارش سمینار کارشناسی ارشدی است که به بررسی روشهای ارزیابی معماری نرم افزار اختصاص دارد. برای رسیدن به این منظور توضیحاتی در معرفی معماری نرم افزار، اهمیت ارزیابی معماری نرم افزار، معماری قابل اجرا و ابزار مدلسازی معماری به عنوان پیش نیاز در این چکیده آورده شده است .
معماری نرم افزار یعنی بیان ساختار یا ساختارهای سیستم که مولفه های نرم افزاری ، ویژگیهای قابل رویت از خارج این مولفه ها و روابط بین آنها را نشان می دهد. تعریف دیگری که برای معماری نرم افزار ارائه شده ، عبارت است از ساختار مولفه ها در یک سیستم ، رابطه داخلی آنها و اصول و خطوط راهنمایی که طراحی و ارزیابی سیستم را در طی زمان کنترل می کند. این تعریف جنبه های داخلی سیستم را در نظر می گیرد و بنابراین اکثر روشهای تحلیل و ارزیابی براساس آن عمل می کنند. تعریف معماری نرم افزار باید شامل دوقسمت ماکرو معماری 1و میکرو معماری 2باشد که اولی روی محیِط سیستم متمرکز می شود و دومی ساختار داخلی یک سیستم را پوشش می دهد. البته تعاریف مختلفی برای معماری نرم افزار وجود دارد که ما در اینجا قصد ارائ? همه آنها را نداریم و به دو تعریف فوق اکتفا می کنیم .
معماری
تجربه های به دست آمده از سایر رشته های فنی و مهندسی نشان داده است که عواملی مانند ابعاد بزرگ ، پیچیدگی زیاد، قابلیت گسترش و ایجاد تغییرات در طی زمان ، طول عمر زیاد و نیازمندیهای خاص از مهمترین عوامل تصمیم گیری در رابطه با لزوم هر نوع معماری می باشد. به عبارت دیگر تجربه نشان داده است که هر گاه نیاز به طراحی موجودیتی (ساختمان ، مدار، سیستم و ...) با ابعداد و پیچیدگیهای زیاد یا نیازمندیهای خاص باشد، نگرش خاص و همه جانبه ای مورد نیاز است که در اصطلاح به آن «معماری » گفته می شود.
معماری نرم افزار یک سیستم را می توان دید مشترک هم? صاحبان سهام و توسعه دهندگان دخیل
در یک سیستم نرم افزاری دانست که همگی روی آن اتفاق نظر دارند یا حداقل آنرا پذیرفته اند.
معماری نرم افزار یک سیستم ، اطلاعات زیر را در مورد آن سیستم ارائه می دهد:
μ سازماندهی سیستم نرم افزاری
μ عناصر ساختاری و واسطهای آنها
μ ترکیب عناصر ساختاری و رفتاری درون زیر سیستمها
ویژگیهای کیفیتی از نظر ارزیابی به دو دسته تقسیم می شوند :
1- صفات کیفیتی قابل مشاهده در زمان اجرا: این صفات نشان می دهند که در طول مدت اجرا، یک سیستم چقدر خوب می تواند نیازمندیهای رفتاری خودش را تامین کند. یعنی به لحاظ رفتاری معین می کند که آیا سیستم نتایج را برآورده می کند و آیا این نتایج را در زمان درست برآورده می سازد یا خیر؟
در واقع این صفات کیفیتی مربوط به ویژگیهای قابل مشاهده در حین اجرا هستند. یعنی نرم افزار را باید اجرا کرد تا مشخص شود که در اثر اجرای آن چنین ویژگیهایی فراهم می شوند یا خیر؟
صفات کیفتی قابل مشاهده در زمان اجرا 5 مورد می باشند:
! کارایی (Performance)
! امنیت (Security)
! در دسترس بودن (Availability)
! قابلیت عملکرد یا وظیفه مندی (Functionality)
! قابلیت کاربرد و استفاده (Usability)
2- صفات کیفیتی غیر قابل مشاهد در زمان اجرا : این صفات به گونه ای هستند که با اجرای آن نمی توان تشخیص داد که به آن دست یافته ایم یا خیر و به عبارت دیگر نمی توان آن را در زمان اجرا دید و باید بعداً ارزیابی شود. این دسته از صفات نشان می دهند که جمع آوری سیستم و آزمایش و طراحی سیستم با چه میزان سهولت و راحتی انجام می شود.
فهرست مطالب
عنوان شماره صفحه
1 مفاهیم بنیادی 1
1-1 معماری 1
1-2 معماری نرم افزار 2
1-3 تصمیمات معماری 4
1-4 ویژگیهای کیفیتی معماری نرم افزار 4
1-4-1 کارایی 7
1-4-2 امنیت 8
1-4-3 در دسترس بودن 9
1-4-4 قابلیت عملکرد یا وظیفه مندی 10
1-4-5 قابلیت استفاده 11
1-4-6 قابلیت اصلاح پذیری 12
1-4-7 قابلیت حمل 14
1-4-8 قابلیت استفاده مجدد 14
1-4-9 قابلیت تجمیع پذیری 15
1-4-10 قابلیت آزمایش 16
1-5 ارزیابی و تحلیل معماری 16
1-5- 1 تکنیکهای پرسشی 18
1-5-2 تکنیکهای اندازه گیری 20
2 روشهای ارزیابی معماری نرم افزار مبتنی بر سناریو 21
2-1 روش تحلیل معماری نرم افزار (SAAM ) 21
2-1-1 ورودیها و پیش شرطهای SAAM 22
2-1-2 مراحل نشست ارزیابی SAAM 22
2-1-3 نقشهای موجود در روش SAAM 24
2-1-4 محاسن و معایب روش SAAM 25
2-1-5 روش ارزیابی SAAM بنا شده برروی سناریوهای پیچیده (SAAMCS) 26
2-1-6 روش توسعه SAAM بوسیله یکپارچگی در دامنه (ESAAMI) 27
2-1-7 روش SAAM برای سیر تکاملی و استفاده مجدد (SAAMER) 29
2-2 روش تحلیل معماری از طریق مصالحه (ATAM ) 31
2-2-1 ورودیها و پیش شرطهای ATAM 32
2-2-2 مراحل نشست ارزیابی ATAM 32
2-2-3 نقشهای موجود در ATAM 35
2-2-4 محاسن روش ATAM 35
2-3 روش تحلیل هزینه - سود (CBAM ) 36
2-3-1 ورودیها و پیش شرطهای CBAM 37
2-3-2 مراحل نشست ارزیابی CBAM 38
2-3-3 نقشهای CBAM 40
2-3-4 محاسن روش CBAM 40
2-4 روش تحلیل قابلیت اصلاح در سطح معماری ( ALMA) 41
2-4-1 ورودیها وپیش شرطهای ALMA 42
2-4-2 مراحل نشست ارزیابی ALMA 43
2-4-3 نقشهای موجود در روش ALMA 45
2-4-4 محاسن و معایب ALMA 45
2-5 روش تحلیل خانواده معماری (FAAM ) 46
2-5-1 ورودی ها و پیش شرطهای FAAM 47
2-5-2 مراحل نشست ارزیابی FAAM 48
2-5-3 نقشهای FAAM 49
2-6 روش ارزیابی بازنگری فعالانه برای طراحی میانی (ARID) 50
2-6-1 مراحل نشست ارزیابی ARID 51
2-6-2 نقشهای ARID 52
2-6-3 محاسن و معایب ARID 53
3 روشهای ارزیابی معماری نرم افزار مبتنی بر شبک? پتری رنگی 54
3-1 اساس تئوری گراف و شبکه پتری 55
3-1-1 تئوری گراف 55
3-1-2 تعریف شبکه پتری 57
3-1-3 تعریف رسمی شبکه پتری 59
3-1-4 توصیف شبک? پتری 61
3-1-5 شبکه های پتری رنگی 62
3-2 مدل معماری بر اساس شبکه پتری رنگی 65
3-3 صفات کیفیتی غیر وظیفه مندی و CPN ها 67
3-4 مشخص کردن صفات کیفی روی CPN ها 71
3-4-1 مدل شبک? پتری قابلیت اطمنیان 72
3-4-2 مدل شبک? پتری امنیت در شبکه 72
3-4-3 مدل شبک? پتری امنیت روی حافظه ها و فایل ها : 73
3-4-4 مدل شبک? پتری راندمان زمانی 74
3-4-5 مدل شبک? پتری بهره وری منابع 75
3-5 ارزیابی صفات کیفیتی مبتنی بر CPN 76
4 روش ارزیابی معماری نرم افزار SAM 77
4-1 مفاهیم اولی? SAM 78
4-1-1 شبکه های پتری زمان 80
4-1-2 منطق درخت محاسباتی بی - درنگ 82
4-2 خصوصیات SAM 82
4-3 مدل کردن رفتار معماریهای نرم افزار 84
4-4 پایه های SAM 84
4-5 مشخص کردن معماری نرم افزار یک سیستم C2 92
4-5-1 نیازمندیهای سیستم C2 94
4-5-2 رسمی کردن نیازمندیهای C2 95
4-5-3 تعریف کردن مشخصات مولفه و متصل کننده 98
4-5-4 ساختن مدلهال رفتاری مولفه و متصل کننده 100
4-5-5 پشتیبانی از طراحی افزایشی سیستم C2 107
4-6 تایید کردن سیستم C2 113
4-6-1 تایید قیدهای ماژول (مولفه . متصل کننده ) 115
4-6-2 تایید کردن قیدهای محیطی 119
4-6-3 تایید کردن قیدهای ترکیبی 119
4-6-4 تخطی از قیدها 122
4-7 نتیجه گیری 123
5 نتیجه گیری 125
کار آینده 127
فهرست منابع و مراجع 129
قیمت فایل فقط 7,000 تومان