بخشی از پاورپوینت
اسلاید 1 :
مقایسه ای بر متدولوژی های ساختیافته و شی گرا
اسلاید 2 :
درباره چه چیزی ؟
مقدمه – مشکل واژگان و مفاهیم
تعریف متدولوژی
یک دسته بندی متداول از متدولوژی ها
نحوه انتخاب یک متدولوژی مناسب
متدولوژی های ساختیافته
متدولوژی های شی گرا
آشنایی با متدولوژی شی گرای RUP
آشنایی با متدولوژی ساختیافته SSADM
مقایسه بین متدولوژی RUP و متدولوژی SSADM
اسلاید 3 :
مشکل واژگان و مفاهیم !
معنای واژه های کلیدی نرم افزار ممکن است از متنی به متن دیگر متفاوت باشد
اکثرا این اشتباه پیش می آید که بعضی ها متدولوژی را به جای روش و یا روش را به جای ابزار و یا بالعکس به کار می برند
اسلاید 4 :
متدولوژی یعنی چه ؟
متدولوژی ، روش شناسی ، و فرا روش همه یک مفهوم یکسانند
متدولوژی : مجموعه ای از روش ها ، فنون و ابزارهای تحلیل و طراحی سیستم که در چهارچوب یک انگاره مدلسازی مبتنی بر یک الگوی مفهومی برای ساماندهی روند توسعه سیستم ها به روشی نظام مند به کار می رود
فرآیند نرم افزار : یکسری مراحل قابل پیش بینی و نقشه مسیری است که به ما کمک می کند تا نتایجی را در زمان معین و با کیفیت بالا ایجاد کنیم
آیا متدولوژی و فرآیند نرم افزار دو مفهوم یکسانند ؟
اسلاید 5 :
دسته بندی متدولوژی ها
یک دسته بندی متداول از متدولوژی ها به این صورت است :
متدولوژی های مبتنی بر پردازش
متدولوژی های مبتنی بر داده
روش های نمونه سازی
اسلاید 6 :
دسته بندی متدولوژی ها
متدولوژی های مبتنی بر پردازش
1- طراحی ساختیافته SD (روش Yourdon-Constantine )
2- تحلیل ساختیافته SA (روش DeMarco)
3- تحلیل ساختیافته SA (روش Gane-Sarson)
4- روش YSM (Yourdon System Method)
اسلاید 7 :
دسته بندی متدولوژی ها
متدولوژی های مبتنی بر داده
1- مهندسی اطلاعات Information Engineering (روش Martin)
2- روشهای تحلیل شی گرا OOD
3- روش جکسون JSD
4- روش وارنیر-اور Warnier-Orr
5- متدولوژی BSP (Business System Planning)
اسلاید 8 :
دسته بندی متدولوژی ها
روش های نمونه سازی
1- روش توسعه سریع RAD
2- روش توسعه مشارکتی JAD
اسلاید 9 :
دسته بندی متدولوژی ها
دسته بندی دیگری از متدولوژی ها به ای صورت است :
متدولوژی های سنتی
متدولوژی های ساختیافته
متدولوژی های شی گرا
آیا می توان دسته بندی های دیگری نیز از انواع متدولوژی ها ارائه کرد ؟
اسلاید 10 :
چطور یک متدولوژی مناسب پروژه مان انتخاب کنیم ؟
انتخاب یک متدولوژی مناسب برای پروژه نرم افزاری به فاکتورهای زیادی بستگی دارد از جمله :
هدف – نوع نرم افزار نهایی
اندازه نرم افزار نهایی
فعالیت هایی که در طول پروژه انجام خواهد گرفت
. . .
ولی در نهایت با توجه به فاکتورهای متفاوت می توان یکی از متدولوژی ها و یا ترکیبی از دو یا چند متدولوژی را مورد استفاده قرار داد .
اسلاید 11 :
متدولوژی های ساختیافته
رواج روش های ساختیافته از اواخر دهه 1960
در این متدولوژی ها هم تحلیل ها ساختمندند ، هم سیستم ها
استفاده از مفهوم سیستم های ماجولار – تفکیک یک سیستم به سیستم های کوچک تر و نسبتا مستقل از بالا به پایین
اسلاید 12 :
متدولوژی های ساختیافته
مشکلات اصلی متدولوژی های ساختیافته :
پیچیدگی گذر از تحلیل به طراحی
پیچیدگی گذر از طراحی به پیاده سازی (نگاشت به کد)
عدم تاکید بر قابلیت استفاده مجدد (ReUsability)
اسلاید 13 :
متدولوژی های شی گرا
ایده روش های شی گرا در سال 1980 مطرح شد
در روش های شی گرا ، از ابتدا اشیاء مشخصی ایجاد می شوند که عملیات مختلف در مراحل مختلف (تحلیل ، طراحی و .) بر روی این اشیا انجام می گیرند
متدولوژی های شی گرا مجموعه ای از تعامل اشیا هستند
در این روش ها مشکل پیچیدگی گذرها را نداریم
قابلیت استفاده مجدد از اشیا در پروژه ها و سیستم های دیگر
اسلاید 14 :
متدولوژی های شی گرا
یکی از دسته بندی های مرسوم متدولوژی های شی گرا :
متدولوژی های اولیه (Seminal Methodology)
Shlaer-Mellor ، Coad-Youdon ، RDD ، Booch ، OMT ، OSA ، OOSE ، BON ، Hodge-Mock ، Fusion ، Syntropy
متدولوژی های مجتمع شده (Integrated Methodology)
OPM ، Catalysis ، OPEN ، RUP/USDP ، EUP ، FOOM
متدولوژی های چابک (Agile Methodology)
DSDM ، SCRUM ، XP ، ASD ، Xd ، Crystal ، FDD
اسلاید 15 :
متدولوژی شی گرای RUP
ساختار کلی RUP دارای دو بعد است :
محور افقی - بیانگر زمان است . نشاندهنده جنبه پویای متدولوژی
محور عمودی - بیانگر ترتیب منطقی فعالیت ها است . نشاندهنده جنبه ایستای متدولوژی
اسلاید 16 :
متدولوژی شی گرای RUP
ویژگی های RUP :
توسعه ی نرم افزار مبتنی بر تکرار ( Iterative )
مدیریت نیازمندی ها
استفاده از معماری Component-Base
مدلسازی بصری نرم افزار ( Visual Modeling )
کنترل مستمر کیفیت
مدیریت تغییرات برای نرم افزار
اسلاید 17 :
متدولوژی شی گرای RUP
اهداف RUP :
فراهم آوردن زبان مدلسازی بصری و گویا
فراهم آوردن مکانیزم های توسعه ، برای بسط مفاهیم اساسی
استقلال از زبانهای برنامه نویسی خاص و فرآیندهای توسعه
فراهم آوردن پایه و اصولی رسمی برای درک زبان مدلسازی
تشویق به رشد بازار ابزار OO
حساسیت و پشتیبانی از مفاهیم توسعه ی سطح بالاتر نظیر : همکاری ها ، چهارچوب ها ، الگوها ، اجزا
مجتمع سازی بهترین تجربیات
اسلاید 18 :
متدولوژی شی گرای RUP
فازهای یک پروژه در RUP :
Inception ( آغازین ) : ایجاد شناخت اولیه از صورت مساله ، شناخت و مدل کردن کلیات سیستم موجود
Elaboration ( جزئیات ): تشخیص و مستند کردن جزئیات مدل سیستم موجود ، دقیق کردن نیازمندیها ، تحلیل و طراحی کلی سیستم جدید که معمولا در طی دو چرخه انجام می گیرد
Construction ( ساخت ): توسعه ی سیستم نرم افزاری بر اساس سیستم طراحی شده ی جدید در طی چرخه های متعدد
Transition ( انتقال ): انتقال از سیستم قدیم به جدید شامل انتقال اطلاعات و گردش کار ، نصب کامل سیستم ها و آموزش کارکنان
اسلاید 19 :
متدولوژی شی گرای RUP
طرح ریزی فازها
همه ی فازها در میزان تاثیر و زمان بندی مساوی نیستند . اگرچه این تفاوت ها به پروژه بستگی دارد ، یک چرخه توسعه ی ابتدایی برای یک پروژه با سایز متوسط باید بر طبق توزیع زمانبندی و تاثیر جدول زیر پیش رود :
اسلاید 20 :
متدولوژی شی گرای RUP
فعالیت های انجام شده در هر یک از فازها :
مهندسی امور Business Modeling
نیازها Requirements
تحلیل و طراحی Analysis & Design
پیاده سازی Implementation
آزمون Test
کنترل تغییرات
Configuration & Change Management
کنترل پروژه Project Management
محیط عملیاتی Environment
گسترش Deployment