84702938-VajihAllah-Montaghami.ppt

‫دانشکده مهندس ي کامپيوتر‬
‫دانشگاه صنعتي شريف‬
‫روش ي براي ارزيابي و مقايسه معماري‬
‫سيستم هاي نرم افزاري‬
‫ارائه دهنده‪ :‬وجيه هللا منتقمي‬
‫استاد پروژه‪ :‬دکتر حسن ميريان حسين آبادي‬
‫استاد مشاور‪ :‬دکتر جعفر حبيبي‬
‫‪ 2‬آذر ‪1385‬‬
‫‪[email protected]‬‬
‫دانشکده مهندس ي کامپيوتر‬
‫دانشگاه صنعتي شريف‬
‫‪‬‬
‫اهميت ارزيابي معماري نرم افزار‬
‫ارزش اقتصادي باال‬
‫‪ ‬کشف زود هنگام مشکالت‬
‫‪ ‬کاهش خطرات و ريسک ها‬
‫‪ ‬تخمين منابع‬
‫‪‬‬
‫آماده سازي اجباري به منظور بازبيني‬
‫اثبات نيازمندي ها‬
‫يافتن داليل و مستدل نمودن فرآيند‬
‫‪‬‬
‫انتشار حس خوشبيني‬
‫‪‬‬
‫‪‬‬
‫‪2‬‬
‫روش ی برای ارزيابی معماری نرم افزار‬
‫‪ 2‬دی ‪1385‬‬
‫دانشکده مهندس ي کامپيوتر‬
‫دانشگاه صنعتي شريف‬
‫‪‬‬
‫زمان ارزيابي معماري نرم افزار‬
‫زودترين زمان ممکن‬
‫‪ ‬پيش از تکميل‬
‫‪ ‬پس از ارائه نهايي‬
‫‪‬‬
‫‪‬‬
‫تغيير سيستم هاي قديمي‬
‫نمونه سازي از معماري مرجع‬
‫‪ ‬معماري خط توليد‬
‫‪‬‬
‫خريد يک سيستم يا زير سيستم بزرگ‬
‫‪ ‬انطباق پذيري‬
‫‪3‬‬
‫روش ی برای ارزيابی معماری نرم افزار‬
‫‪ 2‬دی ‪1385‬‬
‫انواع روش هاي ارزيابي نرم افزار‬
‫دانشکده مهندس ي کامپيوتر‬
‫دانشگاه صنعتي شريف‬
‫‪‬‬
‫استفاده از تکنيک هاي پرسش گونه‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫سناريوها‬
‫پرسش نامه ها‬
‫چک ليست ها‬
‫استفاده از تکنيک هاي اندازه گيري‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫شبيه سازي‬
‫نمونه سازي‬
‫مدل سازي‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪4‬‬
‫شبکه هاي صف‬
‫زنجيره هاي مارکوف‬
‫ماشين هاي حالت‬
‫روش ی برای ارزيابی معماری نرم افزار‬
‫‪ 2‬دی ‪1385‬‬
‫روش هاي ارزيابي مبتني بر سناريو‬
‫دانشکده مهندس ي کامپيوتر‬
‫دانشگاه صنعتي شريف‬
.‫سناريو توضيحي مختصر در مورد تعامل منفرد ذينفع با سيستم مي باشد‬

SAAM


Cost Benefit Analysis Method
ARID


Architecture-centric Concern Analysis Method
CBAM


Architecture Tradeoff Analysis Method
ACCA


Aspectual Software Architecture Analysis Method
ATAM


Software Architecture Analysis Method
ASAAM



Active Reviews for Intermediate Design
ALMA

Architecture-Level Modifiability Analysis
1385 ‫ دی‬2
‫روش ی برای ارزيابی معماری نرم افزار‬
6
‫دانشکده مهندس ي کامپيوتر‬
‫دانشگاه صنعتي شريف‬
‫‪‬‬
‫روش ارزيابي معماري ‪ATAM‬‬
‫هدف‬
‫‪ ‬ميزان دستيابي يك معماري به اهداف كيفي‬
‫‪ ‬تعامالت اين اهداف کيفی‬
‫‪‬‬
‫خروجي هاي ارزيابي‬
‫‪ ‬ارائه دقيق معماري‬
‫‪ ‬تفصيل اهداف كسب و كار‬
‫‪ ‬نيازهاي كيفي به صورت مجموعه هايي از سناريوها‬
‫‪ ‬مجموعه از نقاط حساس و پاياپاي‬
‫‪ ‬نگاشت تصميمات معماري به نيازمندي هاي معماري‬
‫‪7‬‬
‫روش ی برای ارزيابی معماری نرم افزار‬
‫‪ 2‬دی ‪1385‬‬
‫دانشکده مهندس ي کامپيوتر‬
‫دانشگاه صنعتي شريف‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫عدم دستيابي به ريشه مشکالت در روش هاي موجود‬
‫گسترش ي بر روش هاي معمول چون ‪ATAM‬‬
‫مفهوم وابسته هر جنبه نامطلوب معماري نرم افزار‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫نگاشت قابليت رديابي ‪CT-map‬‬
‫ساخت و تكميل ‪ CT-map‬به صورت دستي‬
‫‪‬‬
‫‪8‬‬
‫تصميم نادرست‬
‫نقاط حساس‬
‫نقاط پاياپاي‬
‫ريسک در سطح مفهومي‬
‫مستندسازي تمام فرآيندهاي تصميم گيري‬
‫‪‬‬
‫‪‬‬
‫روش ارزيابي معماري مبتني بر وابسته ها‬
‫زمان بر و پرهزينه‬
‫روش ی برای ارزيابی معماری نرم افزار‬
‫‪ 2‬دی ‪1385‬‬
‫دانشکده مهندس ي کامپيوتر‬
‫دانشگاه صنعتي شريف‬
‫‪‬‬
‫روش ارزيابي معماري جنبه گرا‬
‫مجموعه مولفه ها بر مجموعه وابسته ها پوشا نيست‪.‬‬
‫‪ ‬عدم شناخت وابسته هاي فراگير‬
‫‪ ‬کدهاي درهم تنيده‬
‫‪ ‬عدم درستي يابي تمام ويژگي هاي کيفي‬
‫‪‬‬
‫گسترش ي بر ‪SAAM‬‬
‫‪ ‬تعريف مكانيزم هاي صريحي براي شناخت‪:‬‬
‫‪‬‬
‫‪‬‬
‫جنبه هاي معماري‬
‫مولفه هاي درهم تنيده مرتبط‬
‫‪ ‬تعريف ابتکاراتي براي شناخت جنبه هاي معماري‬
‫‪9‬‬
‫روش ی برای ارزيابی معماری نرم افزار‬
‫‪ 2‬دی ‪1385‬‬
‫روش ارزيابي کارايي نرم افزار بوسيله معماري‬
‫دانشکده مهندس ي کامپيوتر‬
‫دانشگاه صنعتي شريف‬
‫‪‬‬
‫پشتيباني مدلهاي اوليه تحليل كارايي مبتني بر مدلهاي شبكه صف حين فرآيند‬
‫توسعه‬
‫‪ ‬ضرورت وجود اطالعاتي راجع به زيرساخت سخت افزاري‬
‫‪‬‬
‫تبديل معماري نرم افزار به مدل شبکه صف‬
‫‪ ‬ديدهاي رفتاري‬
‫‪‬‬
‫‪‬‬
‫نمودار ترتيب پيام‬
‫‪UML 2.0‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪10‬‬
‫نمودار مورد استفاده‬
‫نمودار ترتيبي‬
‫نمودار مولفه ها‬
‫روش ی برای ارزيابی معماری نرم افزار‬
‫‪ 2‬دی ‪1385‬‬
‫دانشکده مهندس ي کامپيوتر‬
‫دانشگاه صنعتي شريف‬
‫مدل يکپارچه تحليل امنيت‪ ،‬کارايي و اطمينان‬
‫پذيري‬
‫‪ ‬عدم انجام تحليل چند بعدي‬
‫‪ ‬ارزيابي چند معيار بر اساس مدلي مرجع‬
‫مارکوف زمان گسسته ‪DTMC‬‬
‫‪ ‬زنجيره هاي‬
‫ِ‬
‫‪ ‬ساختار سلسله مراتبي‬
‫‪ ‬متوسط دفعات اجرا و واريانس آن‬
‫‪ ‬عدم پشتيباني از جريان هاي کنترلي همزمان‬
‫‪12‬‬
‫روش ی برای ارزيابی معماری نرم افزار‬
‫‪ 2‬دی ‪1385‬‬
‫دانشکده مهندس ي کامپيوتر‬
‫دانشگاه صنعتي شريف‬
‫دستيابي به روش ارزيابي مناسب‬
‫‪ ‬هر روش جنبه هاي متفاوتي را تحت تاثير قرار مي دهد‬
‫‪ ‬توصيف‬
‫‪ ‬کاربرد تکنيک ها‬
‫‪ ‬ابزارها‬
‫‪ ‬تحليل ها‬
‫‪ ‬هر سازمان روش مربوط به خود را دارد‬
‫‪ ‬ارزيابي روش ها‬
‫‪ ‬ساخت روش جديد‬
‫‪13‬‬
‫روش ی برای ارزيابی معماری نرم افزار‬
‫‪ 2‬دی ‪1385‬‬
‫دانشکده مهندس ي کامپيوتر‬
‫دانشگاه صنعتي شريف‬
‫‪‬‬
‫مقايسه روش هاي ارزيابي‬
‫وجود بسترهاي مختلف براي مقايسه روش ها‬
‫‪ ‬کار ‪ Grima´n‬در سال ‪2005‬‬
‫‪ ‬کار ‪ Babar‬در سال ‪2004‬‬
‫‪ ‬کار ‪ Dobrica‬و ‪ Nielmela‬در سال ‪2002‬‬
‫‪‬‬
‫بررس ي معيارهاي پايه‬
‫‪ ‬شناسايي هدف و محيط‬
‫‪ ‬تمركز خصوصيت دهي بوسيله آزمون‬
‫‪ ‬پشتيباني از تحليل‬
‫‪ ‬تعيين خروجي هاي تحليل‬
‫‪14‬‬
‫روش ی برای ارزيابی معماری نرم افزار‬
‫‪ 2‬دی ‪1385‬‬
‫دانشکده مهندس ي کامپيوتر‬
‫دانشگاه صنعتي شريف‬
‫‪‬‬
‫ساخت روش ارزيابي با استفاده از مولفه ها‬
‫روال مشترک در تمام روش ها‬
‫‪ ‬تکنيک هاي مشترک‬
‫‪‬‬
‫اصول تعريف و کاربرد معماري‬
‫‪‬‬
‫شناخت تكنيك هاي خوش تعريف و زمان بندي شده‬
‫تحليل و طراحي معماري با چابكي بيشتر‬
‫‪ ‬معماري نرم افزار به عنوان مجموعه عناصري كه از فهم پذيري کافي و از جزئيات كافي‬
‫براي استدالل منطقي برخوردار است‪.‬‬
‫‪ ‬اهداف كسب و كار‪ ،‬نيازمندي هاي كيفي را تعيين مي كند‪.‬‬
‫‪ ‬نيازمندي هاي كيفي تحليل و طراحي معماري نرم افزار را هدايت مي كند‪.‬‬
‫‪‬‬
‫‪ ‬بيشترين تطابق را با شرايط محيط‬
‫‪15‬‬
‫روش ی برای ارزيابی معماری نرم افزار‬
‫‪ 2‬دی ‪1385‬‬
‫نتيجه گيري‬
‫دانشکده مهندس ي کامپيوتر‬
‫دانشگاه صنعتي شريف‬
‫‪‬‬
‫روش هاي مبتني بر سناريو‬
‫‪ ‬فرآيندهاي انساني‬
‫‪ ‬مستندسازي تصميمات معماري‬
‫‪ ‬پيگيري ميزان دستيابي به اهداف کيفي‬
‫‪ ‬عدم ارزيابي دقيق و رسمي معماري‬
‫‪‬‬
‫‪‬‬
‫عدم جامعيت تحليل هاي عددي‬
‫انتخاب روش ارزيابي مناسب‬
‫‪ ‬خط توليد‬
‫‪16‬‬
‫روش ی برای ارزيابی معماری نرم افزار‬
‫‪ 2‬دی ‪1385‬‬
‫دانشکده مهندس ي کامپيوتر‬
‫دانشگاه صنعتي شريف‬
‫‪‬‬
‫کارهاي آتي‬
‫روش تحليلي بر اساس‬
‫‪ ‬کتابخانه تکنيک ها‬
‫‪ ‬تقابل نقاط پاياپاي‬
‫‪‬‬
‫زمان بندي‬
‫‪ ‬بررس ي و مطالعه بيشتر بر روي مدل هاي ارزيابي رسمي (‪ 1.5‬ماه)‬
‫‪ ‬مقايسه مدل هاي رسمي و تفکيک موارد استفاده آن ها (‪ 1.5‬ماه)‬
‫‪ ‬تعريف دقيق مولفه هاي اساس ي فرآيند ارزيابي (‪ 2‬ماه)‬
‫‪ ‬تعريف يک مطالعه موردي و بررس ي نتايج براساس مدل ارزيابي ارائه شده‪ 1( .‬ماه)‬
‫‪ ‬جمع بندي‪ ،‬ارائه مقاله و تدوين پايان نامه (‪ 2‬ماه)‬
‫‪17‬‬
‫روش ی برای ارزيابی معماری نرم افزار‬
‫‪ 2‬دی ‪1385‬‬
‫دانشکده مهندس ي کامپيوتر‬
‫دانشگاه صنعتي شريف‬
‫‪18‬‬
‫روش ی برای ارزيابی معماری نرم افزار‬
‫‪ 2‬دی ‪1385‬‬