Похожие презентации:
تو پروژه بزرگ ترین وب سایت پروژه و پایان نامه
1.
www.2pro.irتو پروژه
بزرگ ترین وب
سایت پروژه و
پایان نامه
1
2pro
2. بررسی ويژگي الگوهاي معماري نرم افزار و ارزیابی ومقايسه متدولوژی فرايند چابک و (فرايند عمومیSDLC=System Development Life Cycle)
بررسی ويژگي الگوهاي معماري نرم0000
افزار و ارزيابی ومقايسه متدولوژی
فرايند چابک و (فرايند
00000
عمومی SDLC=System
2pro.ir
)Development Life Cycle
2pro
3. الگوهاي فرايند براي توسعه نرم افزار مبتني بر مؤلفه
الگوهاي فرايند براي توسعه نرم افزار مبتني بر مؤلفهProcess Patterns for Component-Based Software Development
: 3پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
4. منابع:
:منابع[1] Ambler, S. W., The Agile System Development Lifecycle (SDLC), Published on the Web at:
http://www.ambysoft.com/essays/agileLifecycle.html, 2006, visited in: November 2007.
[2] Ramsin R., The Engineering of an Object-Oriented Software Development Methodology. PhD thesis, Y. ORK. UK.
.Department of Computer Science. April 2006
[3] Ambler, S. W., More Process Patterns: Delivering Large-Scale Systems Using Object Technology. Cambridge University
Press, 1999.
[4] Craddock, A., DSDM and Scrum: FAQ's - The similarities, differences and potential inter-operability issues, published on
the Web at:
http://www.dsdm.org/news/article.asp?id=27, 2006, visited in: December 2007.
R. A. Jeff Garland, Large-Scale Software Architecture, 2003. [5]
L. B. Paul Clements, Rick Kazman, Software Architecture in Practice, Addison Wesely, April 2003 [6]
2pro
پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه: 4
5. كليّات
اتكليّ
الگوچيست؟ ايجاد الگو
تاريخچهاياز الگو
ويژگيالگوهايمعمارينرمافزار
سبكوالگو
تعاريفيازالگوها
متدولوژیهایچابکAgile Methodologies
مقايسه متدولو ژی فرايند چا بک و( فرايند عمومی)SDLC=System Development Life Cycle
ضعفهايفرايندعمومي
ارائهفرايندچابکعموميبهبوديافته
الگوهايفرايندProcess Patterns
طبقهبنديبرايالگوهايفراينديProcess Patterns
الگوهایفرايندفازPhase Process Pattern
نتيجهگيري
: 5پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
6. الگو چيست ؟
الگوچيست؟•الگوهامجموعهايازتجاربمهندسينماهرنرمافزارراشاملميشوند
•الگوهاتجاربموفّقاثباتشدهدرتوسعهنرمافزارراضبطميكنند
وبهشماكمكميكنندكهتكنيكهايطراحيتانراافزايشبدهيد
•الگوهادرمورديك مسالهخاصتكرار شوندهدرطراحيوياپيادهسازي سيستمنرمافزاريبحث
ميكند
•الگوهاميتوانندمعمارينرمافزارراباويژگيهايخاصّيبوجوداورند
•الگوهادارايراهحلهاييبرايبسياريازمشكالتطراحيهستند
كهممكناستدوبارهظاهرشوند
: 6پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
7. ايجاد الگو
ايجادالگوافزارنوعي (رفتارخبره )Expert Behaviorفكركردنبه جفت (
هامانندمعماري،اقتصاد،ومهندسينرم
دراغلب حوزه
مساله-راه حل ،)Problem-Solutionوجوددارد،اين يكروش طبيعيبرايكنارامدنباهرنوع مسالهياتعاملاجتماعي
است
توجهبهنوعمسالهوراهحلانودرنظرگرفتنبرخيفاكتورهامنجربهايجادالگوهاميشود
جفت()Problem-Solutionمنجربهتشكيلخانوادهايازمسائلمشابهوراهحلهايي
برايهرخانوادهميشودكهايننشانگريكالگوازمسائلوراهحلهااست
: 7پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
8. تاريخچه الگوها
تاريخچه الگوهاد ر اوایل ده ه ،1990افراد زیادی روی الگوهای طراحی کار میکردندّ ،اما دراواخر 1994چهار نفر به نام های ،گاما ،جاکوبسون ،هلم و
ولسایدز بیشترین تاثیر را با انتشارک تابی به نام:
" ،"Design Pattern: Elements of Reusable Object-Oriented Softwareداشتند.
این چهار نویسنده ب ه Gang-Of-Four = GOFمشهور شدند وبعضي به انها گروه گاما هم مي گويند .انها در این ک تاب ايده
استفاده از الگوها را در طراحی نرمافزار به کار بردند .و یک فرمت استاندارد را برای مستندسازی الگوها ایجاد کردند و 23نوع از الگوها را
دسته بندی کردند.
( الگوهایبوجوداورنده )Creational Pattern
یاءهستند
یجاداش
یرنددرارتباطباروشهایا
همهالگوهاکهدرایندستهقرارمیگ
( الگوهایساختاری )Structural Patten
یاءوکالسهامیتوانند
ایننوعالگوهاشرحمیدهندچگونهاش
درساختارهایبزرگترباهمترکیبشوند
( الگوهایرفتاری )Behavioral Pattern
یگرتمرکزدارند
یاءبایکد
ایننوعالگوهارویارتباطاش
: 8پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
9. ....... تقسيم بندي الگو طراحي _ گروه گاما
تقس يم بندي الگو طراحي _ گروه گاما.......Creational
Factory Method
Abstract Factory
Builder
Prototype
Singleton
الگوهایبوجوداورنده
2pro
Structural
Bridge
Composite
Decorator
Flyweight
Façade
Proxy
الگوهایساختاری
Behavioral
Interpreter
Template Method
Chain of Responsibility
Command
Iterator
Mediator
Memento
Observer
State
Strategy
Visitor
الگوهایرفتاری
پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه: 9
10. تعاريفي از الگو
تعاريفيازالگوChristopher Alexanderدركتاب The Timeless Way of Buildingمينويسد:
هرالگويكقاعدهسهبخشياستكهرابطهايبين:
يك(زمينهخاص ،)Contextيك(مساله )Problemو يك (راه حل )Solutionرا بيانميكند.
الگوبهعنوانيك(مؤلفه )Element
افتندويكپيكربنديسه
دردنيايواقعي،هرالگويكرابطهبينيكزمينهخاص،يكسيستمخاصّيازنيروهاكهمكررادراينزمينهاتفاقمي
دهدايننيروهاخودشانراتجزيهنمايند
بعديخا صكهاجازهمي
الگوبهعنوانمؤلفهزبان،يك(دستورالعمل)Instructionاست
تواندبارهاوبارهادوبارهاستفادهشود تابتواندهرجاكهزمينهانرامناسببداند،سيستم
دهداينپيكربنديسهبعديمي
كهنشانمي
نيروهاراتجزيهكند
الگويك(شي ي )Thingاست
گويدكهچگونهوچهزمانيبايدانرابسازيم
دهد،ويكقاعدهاستكهبهمامي
كهدردنيايواقعيرخمي
الگوبهعنوانيك(فرايند )Processوهميكشي:
توصيفيازيكفرايندياستكهانشي يراتوليدخواهدكرد
: 10پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
11. ويژگي الگوهاي معماري نرم افزار
ويژگيالگوهايمعمارينرمافزار• يكالگومسالهطراحي(دوبارهظاهرشوندهاي )Recurring design problemرامشخ ص ميكند
(موقعيتطراحيمشخصي )Specific design situationرخدهد،ويكراه(حل )Solution
كهدر
برايان(نشان )Presentميدهد
• الگوها(تجاربطراحيخوباثباتشدهوموجود )Existing , well-proven design experience
را(مستند )Documentميكند.
(تجريدهايي )Abstractionرا(شناسايي )Identifyو(مشخ ص )Specifyميسازند
•يكالگو
كهاينتجريدهابااليسطح(كالسهايمنفرد )Single classesو(نمونهها )Instancesويا
كامپوننتهاقرارميگيرند
• يكالگوچندينكامپوننت،كالسيااشياراتشريحميكندومسئوليتهاوروابطبينانهاونيز
نحوههمكاريانهاراباجزئياتبيانميكند
)تهيهميكند
(اصولطراحي Design principle
(واژگان )Vocabularyوفهمعموميبراي
•يك الگو
: 11پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
12. .........ويژگي الگوهاي معماري نرم افزار
........و يژگي الگوهاي معماري نرم افزار• الگوهابهشماكمكميكنندكهمعمارينرمافزارپيچيدهوناهمگنايجادنماييد
• الگوهاساختننرمافزارباويژگيهايتعريفشدهراپشتيبانيميكنند
• الگوهاكمكميكنندكهبتوانيدپيچيدگينرمافزاررامديريتنماييد
• الگوهاوسيلهايبرايمستندنمودنمعمارينرمافزارميباشند
درهنگام استفاده از يك الگو براي ّ
حل يك مساله بايدان را باويژگيهاي ّ
خاصي استفاده نمود
: 12پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
13.
سبك و الگوشوند
كيفيتعريفمي
هاي
هايمعمارينيزبههمانروشالگوهابهمنظورحلبرخيمسائلوويژگي
• سبك
هاميباشند
باشندبلكهچارچوبيبرايراهحل
هانمي
هاراهحل
•سبك
سازد
هارامشخ صمي
نمايدوالگونحوهارتباطاتوالگوريتم
•سبكچيدمانوفضايمسالهرامشخ صمي
دهد
باشد،بنابراينپيچيدگيفرايندشكلمناسبراكاهشمي
•انتخابيكسبكمحدودبهحوزهفضايراهحلمي
كند
شپيدانمي
كاه
ِمناسب
شكل
باشد،لذاپيچيدگيفرايند
•انتخابالگومحدودبهحوزهفضايراهحلنمي
بنابراين نميتوان گ فت كه الگو و سبك يكي ميباشند
: 13پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
14.
یهایچاب ک)Agile Methodologiesاشناييمختصربا(متدولوژ
متدو لو ژیه ای چابک در او اسط دهه نود معر فی شد ند و عمدتا بر پايه اصول و قواعدی بر ای طر احی ،برنامهسا زی ،و تست
میباشند که منجر به افزايش انعط اف پذيری و کاربری فرايند توسعه
سيس تم های نرمافزاری می شوند .اک ثرا متدولو ژیهای چا بک دارای فرايندی سبک وزن میباشند
متدولو ژي چا بك متعددند ،ودر اينجا نام هفت متدولو ژی های چا بک معروف را ذكرميكنيم
.1متدولو ژيDSDM
.2متدولو ژيScrum
.3متدولو ژيXP
.4متدولو ژيASD
.5متدولو ژيdX
.6متدولو ژي كريستال شفافCrystal clear
: 14پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
.7متدولو ژيFeature Driven Development FDD
2pro
15.
خالصه مقايسه ميان پشتيبانی و يا عدم پشتيبانی از فعاليتهای موجود در فازهای مختلف 7متدولو ژی فرايند چابکو (فرايند عمومی) SDLC=System Development Life Cycle
SDLC
+
+
+
+
--
--
+
+
+
--
--
--
DSDM
+
+
+
+
+
+
+
+
+
+
--
--
Scrum
+
+
+
+
+
+
+
+
+
+
+
--
XP
+
+
+
+
--
--
+
+
+
--
--
--
ASD
+
+
+
+
--
+
+
+
+
+
--
+
dX
--
+
--
+
--
--
+
+
+
+
--
--
Crystal
Clear
+
+
+
+
--
+
+
+
+
+
--
--
FDD
--
+
--
+
+
+
+
+
--
+
--
--
متدولوژي
امکان سنجی پروژه
تعامل شديد با کاربر
فراهم کردن منابع مورد
نياز پروژه
استخراج نيازمندی های
سطح باالی سيستم
استخراج نيازمندی های
غير کارکردی
اولويت بندي نيازمندي
ها
تعيين محدوده سيستم
تشکيل تيم توسعه
مدل سازي معماري
سيستم
برنامه ريزی سطح باال
فيلتر تناسب
قطعی کردن معيارهای
موفقيت
خالص هسازي و مقايسه فعاليتهاي موجود فرايندها ،فاز پيش از پرو ژ ه
: 15پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
16.
خالصه مقايسه ميان پشتيبانی و يا عدم پشتيبانی از فعاليتهای موجود در فازهای مختلف 7متدولو ژی فرايند چابکو (فرايند عمومی) SDLC=System Development Life Cycle
SDLC
--
+
+
+
+
+
+
--
+
--
DSDM
+
+
+
+
+
+
+
+
+
+
Scrum
+
+
+
+
+
+
--
--
+
+
XP
+
+
+
+
+
+
+
+
+
+
ASD
+
+
+
+
+
+
+
--
+
+
dX
+
+
+
+
+
+
+
+
+
+
Crystal
Clear
+
+
+
+
+
+
+
--
+
+
FDD
+
+
+
+
+
+
+
--
--
--
متدولوژي
برنامهريزي تكرار
تعامل شديد با کاربر
تجليل و طراحي درصورت لزوم
پيادهسازي
انجام تست بهصورت پيوسته
ارزيابي منظم و پيوسته
تجميع تدريجي نرمافزار
انتقال تدريجی سيستم
به محيط کاربری
مستند سازی
مرور تکرار
خالص هسازي و مقايسه فعاليتهاي موجود فرايندها ،فاز پرو ژ ه
: 16پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
17.
خالصه مقايسه ميان پشتيبانی و يا عدم پشتيبانی از فعاليتهای موجود در فازهای مختلف 7متدولو ژی فرايند چابکو (فرايند عمومی) SDLC=System Development Life Cycle
راه اندازی
سيستم در محيط
کاربری
تست مقبوليت
پشتيبانی
تکميل مستندات
اموزش کاربران
اعالم مرگ
محصول
فعاليت های پس
از مرگ
متدولوژي
خالص هسازي و مقايسه فعاليتهاي موجود فرايندها ،فاز پس از پرو ژ ه
SDLC
+
+
+
+
+
+
--
DSDM
+
+
+
+
+
--
--
Scrum
+
+
+
+
+
--
--
XP
+
+
+
+
+
+
+
ASD
+
+
+
+
+
--
+
dX
+
+
+
+
+
--
--
Crystal
Clear
+
+
+
+
+
--
+
FDD
--
--
--
--
--
--
--
: 17پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
18.
ايندهایچاب کتقابلباديگرفر
ايندعمومیSDLCدر
هایموجوددرفر
ضع ف
عدم انجام اولويت بندی بر روی نيازمندیهای سطح باال در فاز اغاز
عدم وجود برنامهريزی سطح باال در فاز اغاز
عدم وجود انعط افپذيری و قابليّت تنظيم پويا
عدم راه اندازی محص ول به صورت تدريجی در هرتکرار
عدم وجود فعّاليت مرور تکرار
فعاليت پس از مرگ
: 18پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
19.
ايندچاب کعموميبهبوديافتهائهفر
ار
فرايند چا بک عمومی بهبوديافته با چهارفاز:
اغاز
تکرارهای توسعه
انتشار
مرگ
فازتکرارهای توسعه ،چرخه اص لی توليد اين فرايند بوده و از چ ند تکرار تشکيل میشود
فرايندچابکعموميبهبوديافته
: 19پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
20. الگوهاي فرايندProcess Patterns
الگوهايفرايندProcess Patternsتنها ک تاب ارائهشده تاکنون در زمينه الگوهای فرايند شيئگرا ّ
توسطScott W. Ambler
ارائه شدهاست و الگوی فرايند را بدين شکل تعريف کرده است :
” الگوئی است که رهيافت يا مجموعهای از عمليات اثبات شدهی ّموفق برای
توسعه نرمافزار را تعريف میکند“
: 20پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
21.
اينديProcess Patternsايالگوهايفر
بر
بنديامبلر
طبقه
ابهسهدستهتقسيمكرد
ايندر
امبلرالگوهایفر
الگوی فرايند وظيفهTask Process Pattern
الگوی فرايند مرحلهStage Process Pattern
الگوی فرايند فازPhase Process Pattern
درهرفرايند فازها به صورت ترتيبی و مراحل درونشان به صورت تکراری اجرا ميشوند
: 21پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
22.
ايندفازPhase Process Patternالگوهایفر
خاتمه
اعالمخاتمهپروژه
تحويل
تست
مقبوليت
آغاز
چرخهتوليد
تستنهايیدر
سطحسيستم
تکميل
مستندات
اموزش
کاربران
فعاليتهایپسازمرگ
برنامهسازی
برنامهريزی
تکرار
تستوارزيابی
محصول
مستندسازی
مرور
نگهداریو
پشتيبانی
استقرار
سيستم
تجميع
تشکيلتيم
استخراجنيازمندی
هایسطحباال
واولويتبندیشده
برنامهريزی
کلی
امکانسنجی
اشنايیبا
دامنهمساله
مدلسازياولية
معمارینرمافزار
متدولو ژيالگوهای فرايند فازPhase Process Pattern
: 22پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
23. نتيجهگيري
نتيجهگيريدر اين ارائه ابتدا تعريف مفاهيم پايهاي ،وبعد از ان هفت متدولو ژی چا بک بررسي شد و در ادامه
تقابل ميان مراحل موجود در دوره عمر هريک از انها و فرايند عمومی ارائه شده توسط امبلر مورد
بررسی قرارگر فت .سپس با توجه به نتا يج بررسیها وکمبوده ای فرايند عمو می ا ين فرايند را با اعم ال حدا قل تجر يد ،توسعه د اده و
فرايند چا بک عمو می بهبوديافته ارائه گردي د .در بخش پايا نی ،بر مبن ای طبقه بندی ارائه شده توسط امبلر در زمينه ا لگوه ای
فرايند شيئگرا ،الگوهاي فرايند چا بک در سطح فاز و مرح له مورد بررسی قرار گرفت.
: 23پردازشالگوبرايتوسعهنرمافزارمبتنيبرمؤلفه
2pro
24. با تشکر از توجه شما تو پروژه
با تشکر ازتوجه شما
تو پروژه
2pro.ir
2pro