فایلهای مفید

فروش محصولات دانلودی و بازاریابی فایل سرو

فایلهای مفید

فروش محصولات دانلودی و بازاریابی فایل سرو

دانلود پایان نامه روشهای ارزیابی معماری نرم افزار

پایان نامه روشهای ارزیابی معماری نرم افزار

پایان نامه روشهای ارزیابی معماری نرم افزار

دانلود پایان نامه روشهای ارزیابی معماری نرم افزار

پایان نامه روشهای ارزیابی معماری نرم افزار
دسته بندی سمینار کامپیوتر
فرمت فایل doc
حجم فایل 2208 کیلو بایت
تعداد صفحات فایل 250

پایان نامه روشهای ارزیابی معماری نرم افزار

چکیده

این نوشتار، گزارش سمینار کارشناسی ارشدی است که به بررسی روشهای ارزیابی معماری نرم افزار اختصاص دارد. برای رسیدن به این منظور توضیحاتی در معرفی معماری نرم افزار، اهمیت ارزیابی معماری نرم افزار، معماری قابل اجرا و ابزار مدلسازی معماری به عنوان پیش نیاز در این چکیده آورده شده است .

معماری نرم افزار یعنی بیان ساختار یا ساختارهای سیستم که مولفه های نرم افزاری ، ویژگیهای قابل رویت از خارج این مولفه ها و روابط بین آنها را نشان می دهد. تعریف دیگری که برای معماری نرم افزار ارائه شده ، عبارت است از ساختار مولفه ها در یک سیستم ، رابطه داخلی آنها و اصول و خطوط راهنمایی که طراحی و ارزیابی سیستم را در طی زمان کنترل می کند. این تعریف جنبه های داخلی سیستم را در نظر می گیرد و بنابراین اکثر روشهای تحلیل و ارزیابی براساس آن عمل می کنند. تعریف معماری نرم افزار باید شامل دوقسمت ماکرو معماری ١و میکرو معماری ٢باشد که اولی روی محیِط سیستم متمرکز می شود و دومی ساختار داخلی یک سیستم را پوشش می دهد. البته تعاریف مختلفی برای معماری نرم افزار وجود دارد که ما در اینجا قصد ارائۀ همه آنها را نداریم و به دو تعریف فوق اکتفا می کنیم . 

معماری

تجربه های به دست آمده از سایر رشته های فنی و مهندسی نشان داده است که عواملی مانند ابعاد بزرگ ، پیچیدگی زیاد، قابلیت گسترش و ایجاد تغییرات در طی زمان ، طول عمر زیاد و نیازمندیهای خاص از مهمترین عوامل تصمیم گیری در رابطه با لزوم هر نوع معماری می باشد. به عبارت دیگر تجربه نشان داده است که هر گاه نیاز به طراحی موجودیتی (ساختمان ، مدار، سیستم و ...) با ابعداد و پیچیدگیهای زیاد یا نیازمندیهای خاص باشد، نگرش خاص و همه جانبه ای مورد نیاز است که در اصطلاح به آن «معماری » گفته می شود. 

معماری نرم افزار یک سیستم را می توان دید مشترک همۀ صاحبان سهام و توسعه دهندگان دخیل

در یک سیستم نرم افزاری دانست که همگی روی آن اتفاق نظر دارند یا حداقل آنرا پذیرفته اند.

معماری نرم افزار یک سیستم ، اطلاعات زیر را در مورد آن سیستم ارائه می دهد:

μ سازماندهی سیستم نرم افزاری

μ عناصر ساختاری و واسطهای آنها

μ ترکیب عناصر ساختاری و رفتاری درون زیر سیستمها

ویژگیهای کیفیتی از نظر ارزیابی به دو دسته تقسیم می شوند :

١- صفات کیفیتی قابل مشاهده در زمان اجرا: این صفات نشان می دهند که در طول مدت اجرا، یک سیستم چقدر خوب می تواند نیازمندیهای رفتاری خودش را تامین کند. یعنی به لحاظ رفتاری معین می کند که آیا سیستم نتایج را برآورده می کند و آیا این نتایج را در زمان درست برآورده می سازد یا خیر؟

در واقع این صفات کیفیتی مربوط به ویژگیهای قابل مشاهده در حین اجرا هستند. یعنی نرم افزار را باید اجرا کرد تا مشخص شود که در اثر اجرای آن چنین ویژگیهایی فراهم می شوند یا خیر؟

صفات کیفتی قابل مشاهده در زمان اجرا ٥ مورد می باشند:

! کارایی (Performance)

! امنیت (Security)

! در دسترس بودن (Availability)

! قابلیت عملکرد یا وظیفه مندی (Functionality)

! قابلیت کاربرد و استفاده (Usability)

٢- صفات کیفیتی غیر قابل مشاهد در زمان اجرا : این صفات به گونه ای هستند که با اجرای آن نمی توان تشخیص داد که به آن دست یافته ایم یا خیر و به عبارت دیگر نمی توان آن را در زمان اجرا دید و باید بعداً ارزیابی شود. این دسته از صفات نشان می دهند که جمع آوری سیستم و آزمایش و طراحی سیستم با چه میزان سهولت و راحتی انجام می شود. 

فهرست مطالب

عنوان                                                                               شماره صفحه

١ مفاهیم بنیادی                                                                                  1

١-١ معماری                                                                           1

١-٢ معماری نرم افزار                                                               2

١-٣ تصمیمات معماری                                                               4

١-٤ ویژگیهای کیفیتی معماری نرم افزار                                           4

١-٤-١ کارایی                                                                  7

١-٤-٢ امنیت                                                                   8

١-٤-٣ در دسترس بودن                                                       9

١-٤-٤ قابلیت عملکرد یا وظیفه مندی                                        10

١-٤-٥ قابلیت استفاده                                                           11

١-٤-٦ قابلیت اصلاح پذیری                                                  12

١-٤-٧ قابلیت حمل                                                             14

١-٤-٨ قابلیت استفاده مجدد                                                    14

١-٤-٩ قابلیت تجمیع پذیری                                                   15

١-٤-١٠ قابلیت آزمایش                                                       16

١-٥ ارزیابی و تحلیل معماری                                                       16

١-٥- ١ تکنیکهای پرسشی                                                    18

١-٥-٢ تکنیکهای اندازه گیری                                                 20

٢ روشهای ارزیابی معماری نرم افزار مبتنی بر سناریو                                    21

٢-١ روش تحلیل معماری نرم افزار (SAAM )                                     21

٢-١-١ ورودیها و پیش شرطهای SAAM                                    22

٢-١-٢ مراحل نشست ارزیابی SAAM                                       22

٢-١-٣ نقشهای موجود در روش SAAM                                     24

٢-١-٤ محاسن و معایب روش SAAM                                       25

٢-١-٥ روش ارزیابی SAAM بنا شده برروی سناریوهای پیچیده (SAAMCS)   ٢٦

٢-١-٦ روش توسعه SAAM بوسیله یکپارچگی در دامنه (ESAAMI)     27

٢-١-٧ روش SAAM برای سیر تکاملی و استفاده مجدد (SAAMER)    29

٢-٢ روش تحلیل معماری از طریق مصالحه (ATAM )                           31

٢-٢-١ ورودیها و پیش شرطهای ATAM                                    32

٢-٢-٢ مراحل نشست ارزیابی ATAM                                       32

٢-٢-٣ نقشهای موجود در ATAM                                            35

٢-٢-٤ محاسن روش ATAM                                                 35

٢-٣ روش تحلیل هزینه - سود (CBAM )                                           36

٢-٣-١ ورودیها و پیش شرطهای CBAM                                    37

٢-٣-٢ مراحل نشست ارزیابی CBAM                                       38

٢-٣-٣ نقشهای CBAM                                                        40

٢-٣-٤ محاسن روش CBAM                                                  40

٢-٤ روش تحلیل قابلیت اصلاح در سطح معماری ( ALMA)                     41

٢-٤-١ ورودیها وپیش شرطهای ALMA                                     42

٢-٤-٢ مراحل نشست ارزیابی ALMA                                       43

٢-٤-٣ نقشهای موجود در روش ALMA                                    45

٢-٤-٤ محاسن و معایب ALMA                                              45

٢-٥ روش تحلیل خانواده معماری (FAAM )                                       46

٢-٥-١ ورودی ها و پیش شرطهای FAAM                                 47

٢-٥-٢ مراحل نشست ارزیابی FAAM                                       48

٢-٥-٣ نقشهای FAAM                                                        49

٢-٦ روش ارزیابی بازنگری فعالانه برای طراحی میانی (ARID)                50

٢-٦-١ مراحل نشست ارزیابی ARID                                         51

٢-٦-٢ نقشهای ARID                                                          52

٢-٦-٣ محاسن و معایب ARID                                               53

٣ روشهای ارزیابی معماری نرم افزار مبتنی بر شبکۀ پتری رنگی                        54

٣-١ اساس تئوری گراف و شبکه پتری                                              55

٣-١-١ تئوری گراف                                                           55

٣-١-٢ تعریف شبکه پتری                                                     57

٣-١-٣ تعریف رسمی شبکه پتری                                             59

٣-١-٤ توصیف شبکۀ پتری                                                    61

٣-١-٥ شبکه های پتری رنگی                                                62

٣-٢ مدل معماری بر اساس شبکه پتری رنگی                                      65

٣-٣ صفات کیفیتی غیر وظیفه مندی و CPN ها                                     67

٣-٤ مشخص کردن صفات کیفی روی CPN ها                                     71

٣-٤-١ مدل شبکۀ پتری قابلیت اطمنیان                                       72

٣-٤-٢ مدل شبکۀ پتری امنیت در شبکه                                      72

٣-٤-٣ مدل شبکۀ پتری امنیت روی حافظه ها و فایل ها :                  73

٣-٤-٤ مدل شبکۀ پتری راندمان زمانی                                      74

٣-٤-٥ مدل شبکۀ پتری بهره وری منابع                                     75

٣-٥ ارزیابی صفات کیفیتی مبتنی بر CPN                                          76

٤ روش ارزیابی معماری نرم افزار SAM                                                    77

٤-١ مفاهیم اولیۀ SAM                                                                78

٤-١-١ شبکه های پتری زمان                                                 80

٤-١-٢ منطق درخت محاسباتی بی - درنگ                                  82

٤-٢ خصوصیات SAM                                                               82

٤-٣ مدل کردن رفتار معماریهای نرم افزار                                         84

٤-٤ پایه های SAM                                                                   84

٤-٥ مشخص کردن معماری نرم افزار یک سیستم C2                             92

٤-٥-١ نیازمندیهای سیستم C2                                                 94

٤-٥-٢ رسمی کردن نیازمندیهای C2                                         95

٤-٥-٣ تعریف کردن مشخصات مولفه و متصل کننده                       98

٤-٥-٤ ساختن مدلهال رفتاری مولفه و متصل کننده                          100

٤-٥-٥ پشتیبانی از طراحی افزایشی سیستم C2                              107

٤-٦ تایید کردن سیستم C2                                                            113

٤-٦-١ تایید قیدهای ماژول (مولفه . متصل کننده )                           115

٤-٦-٢ تایید کردن قیدهای محیطی                                            119

٤-٦-٣ تایید کردن قیدهای ترکیبی                                             119

٤-٦-٤ تخطی از قیدها                                                         122

٤-٧ نتیجه گیری                                                                       123

٥ نتیجه گیری                                                                                    125

کار آینده                                                                                 127

فهرست منابع و مراجع                                                                 129

دانلود پایان نامه روشهای ارزیابی معماری نرم افزار

دانلود پایان نامه روشهای ارزیابی معماری نرم افزار

پایان نامه روشهای ارزیابی معماری نرم افزار

پایان نامه روشهای ارزیابی معماری نرم افزار

دانلود پایان نامه روشهای ارزیابی معماری نرم افزار

پایان نامه روشهای ارزیابی معماری نرم افزار
دسته بندی سمینار کامپیوتر
فرمت فایل doc
حجم فایل 2208 کیلو بایت
تعداد صفحات فایل 250

پایان نامه روشهای ارزیابی معماری نرم افزار

چکیده

این نوشتار، گزارش سمینار کارشناسی ارشدی است که به بررسی روشهای ارزیابی معماری نرم افزار اختصاص دارد. برای رسیدن به این منظور توضیحاتی در معرفی معماری نرم افزار، اهمیت ارزیابی معماری نرم افزار، معماری قابل اجرا و ابزار مدلسازی معماری به عنوان پیش نیاز در این چکیده آورده شده است .

معماری نرم افزار یعنی بیان ساختار یا ساختارهای سیستم که مولفه های نرم افزاری ، ویژگیهای قابل رویت از خارج این مولفه ها و روابط بین آنها را نشان می دهد. تعریف دیگری که برای معماری نرم افزار ارائه شده ، عبارت است از ساختار مولفه ها در یک سیستم ، رابطه داخلی آنها و اصول و خطوط راهنمایی که طراحی و ارزیابی سیستم را در طی زمان کنترل می کند. این تعریف جنبه های داخلی سیستم را در نظر می گیرد و بنابراین اکثر روشهای تحلیل و ارزیابی براساس آن عمل می کنند. تعریف معماری نرم افزار باید شامل دوقسمت ماکرو معماری ١و میکرو معماری ٢باشد که اولی روی محیِط سیستم متمرکز می شود و دومی ساختار داخلی یک سیستم را پوشش می دهد. البته تعاریف مختلفی برای معماری نرم افزار وجود دارد که ما در اینجا قصد ارائۀ همه آنها را نداریم و به دو تعریف فوق اکتفا می کنیم . 

معماری

تجربه های به دست آمده از سایر رشته های فنی و مهندسی نشان داده است که عواملی مانند ابعاد بزرگ ، پیچیدگی زیاد، قابلیت گسترش و ایجاد تغییرات در طی زمان ، طول عمر زیاد و نیازمندیهای خاص از مهمترین عوامل تصمیم گیری در رابطه با لزوم هر نوع معماری می باشد. به عبارت دیگر تجربه نشان داده است که هر گاه نیاز به طراحی موجودیتی (ساختمان ، مدار، سیستم و ...) با ابعداد و پیچیدگیهای زیاد یا نیازمندیهای خاص باشد، نگرش خاص و همه جانبه ای مورد نیاز است که در اصطلاح به آن «معماری » گفته می شود. 

معماری نرم افزار یک سیستم را می توان دید مشترک همۀ صاحبان سهام و توسعه دهندگان دخیل

در یک سیستم نرم افزاری دانست که همگی روی آن اتفاق نظر دارند یا حداقل آنرا پذیرفته اند.

معماری نرم افزار یک سیستم ، اطلاعات زیر را در مورد آن سیستم ارائه می دهد:

μ سازماندهی سیستم نرم افزاری

μ عناصر ساختاری و واسطهای آنها

μ ترکیب عناصر ساختاری و رفتاری درون زیر سیستمها

ویژگیهای کیفیتی از نظر ارزیابی به دو دسته تقسیم می شوند :

١- صفات کیفیتی قابل مشاهده در زمان اجرا: این صفات نشان می دهند که در طول مدت اجرا، یک سیستم چقدر خوب می تواند نیازمندیهای رفتاری خودش را تامین کند. یعنی به لحاظ رفتاری معین می کند که آیا سیستم نتایج را برآورده می کند و آیا این نتایج را در زمان درست برآورده می سازد یا خیر؟

در واقع این صفات کیفیتی مربوط به ویژگیهای قابل مشاهده در حین اجرا هستند. یعنی نرم افزار را باید اجرا کرد تا مشخص شود که در اثر اجرای آن چنین ویژگیهایی فراهم می شوند یا خیر؟

صفات کیفتی قابل مشاهده در زمان اجرا ٥ مورد می باشند:

! کارایی (Performance)

! امنیت (Security)

! در دسترس بودن (Availability)

! قابلیت عملکرد یا وظیفه مندی (Functionality)

! قابلیت کاربرد و استفاده (Usability)

٢- صفات کیفیتی غیر قابل مشاهد در زمان اجرا : این صفات به گونه ای هستند که با اجرای آن نمی توان تشخیص داد که به آن دست یافته ایم یا خیر و به عبارت دیگر نمی توان آن را در زمان اجرا دید و باید بعداً ارزیابی شود. این دسته از صفات نشان می دهند که جمع آوری سیستم و آزمایش و طراحی سیستم با چه میزان سهولت و راحتی انجام می شود. 

فهرست مطالب

عنوان                                                                               شماره صفحه

١ مفاهیم بنیادی                                                                                  1

١-١ معماری                                                                           1

١-٢ معماری نرم افزار                                                               2

١-٣ تصمیمات معماری                                                               4

١-٤ ویژگیهای کیفیتی معماری نرم افزار                                           4

١-٤-١ کارایی                                                                  7

١-٤-٢ امنیت                                                                   8

١-٤-٣ در دسترس بودن                                                       9

١-٤-٤ قابلیت عملکرد یا وظیفه مندی                                        10

١-٤-٥ قابلیت استفاده                                                           11

١-٤-٦ قابلیت اصلاح پذیری                                                  12

١-٤-٧ قابلیت حمل                                                             14

١-٤-٨ قابلیت استفاده مجدد                                                    14

١-٤-٩ قابلیت تجمیع پذیری                                                   15

١-٤-١٠ قابلیت آزمایش                                                       16

١-٥ ارزیابی و تحلیل معماری                                                       16

١-٥- ١ تکنیکهای پرسشی                                                    18

١-٥-٢ تکنیکهای اندازه گیری                                                 20

٢ روشهای ارزیابی معماری نرم افزار مبتنی بر سناریو                                    21

٢-١ روش تحلیل معماری نرم افزار (SAAM )                                     21

٢-١-١ ورودیها و پیش شرطهای SAAM                                    22

٢-١-٢ مراحل نشست ارزیابی SAAM                                       22

٢-١-٣ نقشهای موجود در روش SAAM                                     24

٢-١-٤ محاسن و معایب روش SAAM                                       25

٢-١-٥ روش ارزیابی SAAM بنا شده برروی سناریوهای پیچیده (SAAMCS)   ٢٦

٢-١-٦ روش توسعه SAAM بوسیله یکپارچگی در دامنه (ESAAMI)     27

٢-١-٧ روش SAAM برای سیر تکاملی و استفاده مجدد (SAAMER)    29

٢-٢ روش تحلیل معماری از طریق مصالحه (ATAM )                           31

٢-٢-١ ورودیها و پیش شرطهای ATAM                                    32

٢-٢-٢ مراحل نشست ارزیابی ATAM                                       32

٢-٢-٣ نقشهای موجود در ATAM                                            35

٢-٢-٤ محاسن روش ATAM                                                 35

٢-٣ روش تحلیل هزینه - سود (CBAM )                                           36

٢-٣-١ ورودیها و پیش شرطهای CBAM                                    37

٢-٣-٢ مراحل نشست ارزیابی CBAM                                       38

٢-٣-٣ نقشهای CBAM                                                        40

٢-٣-٤ محاسن روش CBAM                                                  40

٢-٤ روش تحلیل قابلیت اصلاح در سطح معماری ( ALMA)                     41

٢-٤-١ ورودیها وپیش شرطهای ALMA                                     42

٢-٤-٢ مراحل نشست ارزیابی ALMA                                       43

٢-٤-٣ نقشهای موجود در روش ALMA                                    45

٢-٤-٤ محاسن و معایب ALMA                                              45

٢-٥ روش تحلیل خانواده معماری (FAAM )                                       46

٢-٥-١ ورودی ها و پیش شرطهای FAAM                                 47

٢-٥-٢ مراحل نشست ارزیابی FAAM                                       48

٢-٥-٣ نقشهای FAAM                                                        49

٢-٦ روش ارزیابی بازنگری فعالانه برای طراحی میانی (ARID)                50

٢-٦-١ مراحل نشست ارزیابی ARID                                         51

٢-٦-٢ نقشهای ARID                                                          52

٢-٦-٣ محاسن و معایب ARID                                               53

٣ روشهای ارزیابی معماری نرم افزار مبتنی بر شبکۀ پتری رنگی                        54

٣-١ اساس تئوری گراف و شبکه پتری                                              55

٣-١-١ تئوری گراف                                                           55

٣-١-٢ تعریف شبکه پتری                                                     57

٣-١-٣ تعریف رسمی شبکه پتری                                             59

٣-١-٤ توصیف شبکۀ پتری                                                    61

٣-١-٥ شبکه های پتری رنگی                                                62

٣-٢ مدل معماری بر اساس شبکه پتری رنگی                                      65

٣-٣ صفات کیفیتی غیر وظیفه مندی و CPN ها                                     67

٣-٤ مشخص کردن صفات کیفی روی CPN ها                                     71

٣-٤-١ مدل شبکۀ پتری قابلیت اطمنیان                                       72

٣-٤-٢ مدل شبکۀ پتری امنیت در شبکه                                      72

٣-٤-٣ مدل شبکۀ پتری امنیت روی حافظه ها و فایل ها :                  73

٣-٤-٤ مدل شبکۀ پتری راندمان زمانی                                      74

٣-٤-٥ مدل شبکۀ پتری بهره وری منابع                                     75

٣-٥ ارزیابی صفات کیفیتی مبتنی بر CPN                                          76

٤ روش ارزیابی معماری نرم افزار SAM                                                    77

٤-١ مفاهیم اولیۀ SAM                                                                78

٤-١-١ شبکه های پتری زمان                                                 80

٤-١-٢ منطق درخت محاسباتی بی - درنگ                                  82

٤-٢ خصوصیات SAM                                                               82

٤-٣ مدل کردن رفتار معماریهای نرم افزار                                         84

٤-٤ پایه های SAM                                                                   84

٤-٥ مشخص کردن معماری نرم افزار یک سیستم C2                             92

٤-٥-١ نیازمندیهای سیستم C2                                                 94

٤-٥-٢ رسمی کردن نیازمندیهای C2                                         95

٤-٥-٣ تعریف کردن مشخصات مولفه و متصل کننده                       98

٤-٥-٤ ساختن مدلهال رفتاری مولفه و متصل کننده                          100

٤-٥-٥ پشتیبانی از طراحی افزایشی سیستم C2                              107

٤-٦ تایید کردن سیستم C2                                                            113

٤-٦-١ تایید قیدهای ماژول (مولفه . متصل کننده )                           115

٤-٦-٢ تایید کردن قیدهای محیطی                                            119

٤-٦-٣ تایید کردن قیدهای ترکیبی                                             119

٤-٦-٤ تخطی از قیدها                                                         122

٤-٧ نتیجه گیری                                                                       123

٥ نتیجه گیری                                                                                    125

کار آینده                                                                                 127

فهرست منابع و مراجع                                                                 129

دانلود پایان نامه روشهای ارزیابی معماری نرم افزار