متدولوژی XP – عمليات (ادامه)

Download Report

Transcript متدولوژی XP – عمليات (ادامه)

‫بسمهتعالي‬
‫فصل دوازدهم‬
‫روشهای سريع االنتقال (چابک) توسعه نرم افزار‬
‫اهداف جلسه‬
‫‪‬‬
‫تقسيمبندی متدولوژيهای توسعه نرمافزار‬
‫‪‬‬
‫معيارهای مقايسه متدولوژيها با يکديگر‬
‫‪‬‬
‫مقايسه متدولوژيها بر اساس معيارهای مطرح شده‬
‫‪‬‬
‫اصول بنيادی متدولوژيهای چابک‬
‫‪‬‬
‫معرفی چند روش چابك‬
‫‪2‬‬
‫متدولوژي توسعه نرم‌افزار‬
‫‪‬‬
‫فرآيند توليد و توسعه نرمافزار ذاتا ً يك فرآيند بي‌نمم و پير هيرو و‬
‫مرو است‪ .‬براي نميم دادن بيه ايين فرآينيدت متيدولوژيهاي توسيعه‬
‫نرمافزار مطرح شدند‬
‫‪‬‬
‫متيييدولوژي توسيييعه نرمافيييزار مشييي‬
‫م‌ نيييدت چيييه فيييرآوردهاي‬
‫(‪ )What‬توسييط چييه سيي‌ (‪ )Who‬و در چييه زمييان‌ (‪ )When‬توليييد‬
‫شود‪.‬‬
‫‪3‬‬
‫تقسيم بندی متدولوژيهای توسعه نرمافزار‬
‫‪‬‬
‫متدولوژيهای سنگين وزن (‪)Heavyweight‬‬
‫‪‬‬
‫‪‬‬
‫فازها بطور امل اجرا شده و مستندات امل ايجاد م‌شود‬
‫متدولوژيهای سبک وزن (‪)Lightweight‬‬
‫‪‬‬
‫فازها به صورت وتاه و مستندات به اندازه ايجاد م‌شوند‬
‫‪‬‬
‫متدولوژيهای چابک در دسته دوم قرار دارند‬
‫‪4‬‬
‫متدولوژي سنگين وزن‬
‫‪‬‬
‫در ‪ 25‬سال ا ير روشهياي بسييار زييادي بيراي توسيعه نرمافيزار‬
‫معرف‌ شدند اما امروزه تعداد بسييار انيد ‌ از آنهيا ميورد اسيت اده‬
‫قرار م‌گيرد!‬
‫‪‬‬
‫متدولوژيهاي فعل‌ بيش از اندازه ماشيينگرا و م يانيزه هسيتند و‬
‫بصييورت فرآينييدي وارد جز يييات ريرمييروري م‌شييوندت بييه همييين‬
‫دليل اين نوع متدولوژها را سنگين وزن م‌نامند‬
‫‪5‬‬
‫مشکالت متدولوژي‌هاي سنگين وزن‬
‫‪‬‬
‫مشيييتريان نرمافزارهيييا يامييير نيسيييتند يييه بيييراي دسيييت ييييافتن بيييه‬
‫نرمافزارهاي مورد نياز ود مدت زيادي منتمر بمانند‬
‫‪‬‬
‫رقابت بسيار شديد شر تهياي تولييد نرمافيزار بيراي ارا يه يدمات‬
‫نرمافزاري به اربران‬
‫‪‬‬
‫تغييرپذيري بسيار زياد نرمافزارهاي امروزي ان ارناپذير است‬
‫‪6‬‬
‫لزوم تغييرات در توسعه نرم‌افزار‬
No Change!
•We are already running late.
•I need to meet my date.
•We worked hard to prevent
change at the start.
Customer
big cheese
Promised
date
7
‫لزوم تغييرات در توسعه نرم‌افزار‬
No Change!
•We are already running late.
•I need to meet my date.
•We worked hard to prevent
change at the start.
Change &
Rework
happens at
the most
expensive
time
Customer
big cheese
Promised
date
8
Spec signed
off here
‫لزوم تغييرات در توسعه نرم‌افزار‬
Successful
Project
Meet
Schedule
big cheese
9
No
Change!
Best
Product
Change!
Conflict*
Customer
‫معيارهای مقايسه متدولوژيها با يکديگر‬
‫‪‬‬
‫روش‬
‫‪‬‬
‫معيار موفقيت‬
‫‪‬‬
‫اندازه پروژه‬
‫‪‬‬
‫سبک مديريت‬
‫‪‬‬
‫نيوه مستندسازی‬
‫‪‬‬
‫چر هها‬
‫‪‬‬
‫اندازه تيم‬
‫‪‬‬
‫برگشت سرمايه‬
‫‪10‬‬
‫روش‬
‫‪‬‬
‫روشهای چابک بصورت ‪ Adaptive‬يا سازگار عمل ميی ننيد يعنيی‬
‫با شرايط منطبق میشوند‬
‫‪‬‬
‫روشهييييای سيييينگين وزن بصييييورت پيشييييگو يييييا ‪ Predictive‬عمييييل‬
‫است؟‬
‫پيشپيش‬
‫ابتدا راقابل‬
‫چيز از‬
‫می نند آيا‬
‫بينی نند‬
‫بينی می‬
‫همه چيز‬
‫همهآراز‬
‫يعنی در‬
‫‪Rigid,‬‬
‫‪Highly Structured‬‬
‫‪Ad hoc,‬‬
‫‪Chaotic‬‬
‫‪Process Discipline‬‬
‫‪Agile Processes‬‬
‫‪RUP‬‬
‫‪CMM - SW‬‬
‫‪11‬‬
‫معيار موفقيت‬
‫‪‬‬
‫معييييار موفقييييت در روشهيييای چابيييک دسيييتيابی بيييه ارزش ييياری‬
‫(‪ )Business Value‬است‬
‫‪‬‬
‫ندارند‬
‫معييارانعطاف‬
‫وزن وزن‬
‫سنگين‬
‫هایهای‬
‫روش‬
‫در راسيتای‬
‫پذيریرفيتن‬
‫موفقييت پييش‬
‫سينگين‬
‫در روش‬
‫طرح اوليه است‬
‫‪12‬‬
‫اندازه پروژه‬
‫‪‬‬
‫اندازه پروژه در روشهای چابک وچک است‬
‫‪ ‬انييدازه پييروژه در روشهييای سيينگين وزن مييیتوانييد بسيييار بييزر‬
‫اين مسأله از ميبوبيت روشهای چابک نمی اهد !!!‬
‫باشد‬
‫(آمار نشان میدهد ه تعداد پروژههای وچک بسيار بيشتر است)‬
‫‪13‬‬
‫سبک مديريت‬
‫‪‬‬
‫‪‬‬
‫مديريت در روشهای چابک بصورت ريرمتمر ز و آزاد است‬
‫در روشهييای سيينگين وزن مييديريت بصييورت مطلييق و اسييتبدادی‬
‫مديريت ريرمتمر ز امکان تصميمگيری بهتر را فراهم می ند‬
‫است‬
‫‪14‬‬
‫نحوه مستندسازی‌‬
‫‪‬‬
‫‪‬‬
‫مستندسييازی در روشهييای چابييک بصييورت بسيييار ميييدود انجييام‬
‫میشود‬
‫در بسياری از موارد مستند سازيهای سنگين‪ ,‬ار بسيار‬
‫در روشهييای سيينگين وزن مستندسييازی بصييورت امييل و جييام‬
‫دشوار و زمانبری است‬
‫انجام میشود‬
‫‪15‬‬
‫چرخهها‬
‫‪‬‬
‫تعداد چر هها (‪ )Cycles‬در روشهای چابک بسييار زيياد اسيت اميا‬
‫زمان آنها وتاست‬
‫‪‬‬
‫زمانبر بودن چر ههای توليد‪ ,‬موجب طوالنی شدن زمان انتمار‬
‫در روشهای سنگين وزن تعداد چر هها م است وليی زميان آنهيا‬
‫برای رسيدن به نشرها میشود‬
‫بسيار زياد است‬
‫‪16‬‬
‫اندازه تيم‬
‫‪‬‬
‫‪‬‬
‫در روشهای چابک اندازه تيم وچک است (بين ‪ 20‬تا ‪ 30‬ن ر)‬
‫در روشهای سنگين وزن اندازه تيم توسعه بزر‬
‫است‬
‫القيت و همکاری در تيم وچک بسيار بيشتر واهد بود‬
‫‪17‬‬
‫برگشت سرمايه‬
‫‪‬‬
‫‪‬‬
‫در روشهای چابک سرمايه يلی زود در طول پروژه بر میگردد‬
‫در روشهييای سيينگين وزن بييرای برگشييت سييرمايه بايييد تييا انتهييای‬
‫ردهای چابک از ليام اقتصادی بصرفهاند‬
‫پروژه صبرروش‬
‫‪18‬‬
‫مقايسه متدولوژي‌هاي سبک و سنگين‬
Approach
Success Measurement
Project Size
Management Style
Documentation
Emphasis
Cycles
Domain
Team Size
19
Agile Methods
Heavy Methods
Adaptive
Predictive
Business Value
Conformation to plan
Small
Large
Decentralized
Autocratic
Low
Heavy
People-Oriented
Process-Oriented
Numerous
Limited
Unpredictable/Exploratory
Predictable
Small/Creative
Large
‫بيانيه روش‌هاي چابک‬
‫‪‬‬
‫در سال ‪ 2001‬مت صصان روشهياي چابيک بيانييهاي را منتشير‬
‫ردنييد و اييين روشهييا را در چهييار اصييل ليي‌ بييه دنييياي نرمافييزار‬
‫معرف‌ نمودند ه عبارتند از‪:‬‬
‫‪‬‬
‫فردگراي‌ و تعامل برتر از فرآيندها و ابزارها‬
‫‪‬‬
‫نرمافزار قابل اجرا بهتر از مستندات م هوم‌‬
‫‪‬‬
‫همکاري با مشتريان بهتر از مذا رات قراردادگرا‬
‫‪‬‬
‫پاسخ به تغيير بهتر از دنبالهروي از طرح‬
‫‪20‬‬
‫معروف‌ترين روش‌هاي چابک‬

XP (Extreme Programming)

Scrum

Crystal Family

FDD (Feature Driven Development)

Dynamic System Development

Adaptive Software Development

Open Source Software Development
21
‫متدولوژی ‪)Extreme Programming( XP‬‬
‫‪‬‬
‫بر مبنای اصول سادگیت همکاری و باز ورد سري استوار است‬
‫‪‬‬
‫ايده اين روش توسط ‪ Kent Beck‬در سال ‪ 2000‬ارا ه شده است‬
‫‪‬‬
‫مبتنی بر آزمايش (‪)Test-Driven‬‬
‫‪‬‬
‫نقش مشتريان بسيار پررنگ است‬
‫‪‬‬
‫فرآيند آن شامل ‪ 12‬فعاليت و ‪ 5‬فاز است‬
‫‪22‬‬
‫متدولوژی ‪ – XP‬چرخه حيات‬
‫‪23‬‬
‫ – فازها‬XP ‫متدولوژی‬
‫شامل پنج فاز است‬
24

Exploration

Planning

Iterations To Release

Product Tionizing

Maintenance and Dead
XP
‫چر ه ييات‬

‫متدولوژی ‪ – XP‬نقش‌ها و مسئوليت‌ها‬
‫‪‬‬
‫برنامهنويس‬
‫‪‬‬
‫مشتري‬
‫‪‬‬
‫آزمايش ننده‬
‫‪‬‬
‫پ‌گيري ننده (‪)Tracker‬‬
‫‪‬‬
‫مرب‌‬
‫‪‬‬
‫مشاور‬
‫‪‬‬
‫مدير (ر يس ارشد)‬
‫‪25‬‬
‫متدولوژی ‪ – XP‬فرآوردهها‬
‫‪‬‬
‫‪User Stories‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫معموالً بشکل متنی بوده و توسط مشتريان نوشته میشوند‬
‫از طريق آنها نيازمنديهای سيستم مش‬
‫میشود‬
‫‪Iteration Plan‬‬
‫‪‬‬
‫مجموعهای از ‪ User Story‬هاست ه توسط مشتری انت اب میشوند‬
‫‪‬‬
‫در يک تکرار ه معموالً دو ه ته طول می شدت توليد میشود‬
‫‪‬‬
‫طرحهای تکرار بيا توجيه بيه اولوييت مشي‬
‫شيده توسيط مشيتری اجيرا‬
‫میشوند‬
‫‪‬‬
‫انت اب براساس بودجه تعيينشده توسط توسعهدهندگان واهد بود‬
‫‪26‬‬
‫متدولوژی ‪ – XP‬فرآوردهها‬
‫‪‬‬
‫‪Release Plan‬‬
‫‪‬‬
‫‪‬‬
‫(ادامه)‬
‫مجموعهای از طرحهای تکرار را در قالب يک نقشه ليی بيرای رسييدن‬
‫به نشرها نمايش میدهد‬
‫‪Task‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫زيرمجموعهای از ‪ User Story‬ها هستند‬
‫‪Task‬هييا از نميير تکنيکييی و يياری اولويييت بيشييتری دارنييد و بايييد سييري‬
‫انجام شوند‬
‫‪Task‬هيا در مريليه طيرحرييزی تکرارهيا (‪ )Iteration Planning‬مشي‬
‫میشوند‬
‫‪27‬‬
‫متدولوژی ‪ – XP‬فرآوردهها‬
‫‪‬‬
‫(ادامه)‬
‫‪Metaphore‬‬
‫‪‬‬
‫نشاندهنده يک تصوير لی از سيستم است‬
‫‪‬‬
‫برای هر عنصر در سيستم يک نام در نمر گرفته میشود‬
‫‪‬‬
‫ارتبييياط بيييين عناصييير درگيييير در سيسيييتم از طرييييق ‪ Metaphore‬مشييي‬
‫میشود‬
‫‪‬‬
‫‪Spike‬‬
‫‪‬‬
‫يک راهيل مربتی (‪)Spike Solution‬ت برنامه سيادهايسيت يه بوسييله آن‬
‫میتوان راهيلهای بالقوه را شف رد‬
‫‪‬‬
‫در مواردی ه ‪ User Story‬ها يساس و مهمند از آن است اده میشود‬
‫‪28‬‬
‫متدولوژی ‪ – XP‬عمليات‬
‫‪‬‬
‫‪Planning Game‬‬
‫‪‬‬
‫يييک تعامييل ميصييور (‪ )Close Interaction‬بييين مشييتری و برنامييهنييويس‬
‫بدست میآيد‬
‫‪‬‬
‫برنامهنيويس يار الزم بيرای پييادهسيازی گيزارشهيای مشيتری را ت ميين‬
‫میزند و مشتری در مورد يوزه و زمان نشرها تصميمگيری می ند‬
‫‪‬‬
‫‪Simple Design‬‬
‫‪‬‬
‫تأ يد اصلی در اين روش بر روی طرايی سادهترين راهيل ممکين اسيت‬
‫و پيچيدگ‌های ريرمروری و دهای امافی به سرعت يذف میشوند‬
‫‪29‬‬
‫متدولوژی ‪ – XP‬عمليات‬
‫‪‬‬
‫‪Testing‬‬
‫‪‬‬
‫توسعه نرمافزار يک فرآيند آزمايشگراست (‪)Test-Driven‬‬
‫‪‬‬
‫‪‬‬
‫قبل از اينکه برنامهنويس يک اصيت را اميافه نيدت بيرای آن ييک تسيت طراييی‬
‫می ند ه بصورت پيوسته اجرا میگردد‬
‫‪Refactoring‬‬
‫‪‬‬
‫‪‬‬
‫(ادامه)‬
‫بازسازی سيستم با يذف موارد تکراریت بهبود ارتباطاتت سادهسيازی و‬
‫افزايش انعطافپذيری سيستم‬
‫‪Pair Programming‬‬
‫‪‬‬
‫دو ن ييير يييد را روی ييييک يييامپيوتر ميييینويسيييند (ييييک يييدنويس و ييييک‬
‫مت ص استراتژی)‬
‫‪30‬‬
‫متدولوژی ‪ – XP‬عمليات‬
‫‪‬‬
‫‪Collective Ownership‬‬
‫‪‬‬
‫‪‬‬
‫(ادامه)‬
‫هر فردی میتواند د را در هر زمانی تغيير دهد‬
‫‪Continuous Integration‬‬
‫‪‬‬
‫د جديد در يداقل زميان ممکين بيه يد اولييه ميیپيونيددت بنيابراين سيسيتم‬
‫دفعات زيادی در روز يکپارچه شده و سا ته میشود‬
‫‪‬‬
‫‪40 Hour Week‬‬
‫‪‬‬
‫يدا ثر چهل ساعت ار در ه ته افی است‬
‫‪‬‬
‫اين مورد اجباری است و بيشتر از اين ساعات ار مجاز نمیباشد‬
‫‪31‬‬
‫متدولوژی ‪ – XP‬عمليات‬
‫‪‬‬
‫‪On- Site Customer‬‬
‫‪‬‬
‫‪‬‬
‫(ادامه)‬
‫مشتری بايد بصورت تمام وقت برای تيم توسعه در دسترس باشد‬
‫‪Coding Standards‬‬
‫‪‬‬
‫قواعد دنويسی بايد توسط برنامهنويسان رعايت شود و ارتباط بين دها‬
‫مورد توجه قرار گيرد‬
‫‪32‬‬
‫متدولوژی ‪)Feature Driven Development( FDD‬‬
‫‪‬‬
‫تمام فرآيند توسعه نرم افزار را پوشش نمیدهيد و بيشيتر روی دو‬
‫فاز طرايی و پيادهسازی متمر ز میشود‬
‫‪‬‬
‫برای است اده بهمراه ساير فعاليتهای يک پروژه توسعه نرمافيزار‬
‫طرايی شده است و هيچ مدل فرآيند اصی الزم ندارد‬
‫‪‬‬
‫مبتنييييی بيييير توسييييعه تکييييراری بييييا انت يييياب بهتييييرين و مييييوثرترين‬
‫فعاليتهاست‬
‫‪‬‬
‫روی جنبييههييای ي تييی تأ يييد دارد و شييامل نشييرهای ميسييوس و‬
‫پيگيری دقيق پيشرفت پروژه است‬
‫‪33‬‬
‫فرآيندهای ‪FDD‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫شييامل پيينج فرآينييد ترتيبييی اسييت ييه از طريييق آنهييا فعاليييتهييای‬
‫طرايی و پيادهسازی انجام میشود‬
‫قسمت تکراری فرآيند ‪( FDD‬طراييی و سيا ت) از توسيعه چابيک‬
‫يمايت می ند‬
‫هر تکرار از يک اصيتت معموالً ‪ 2‬تا ‪ 3‬ه ته زمان میبرد‬
‫‪34‬‬
‫متدولوژی ‪ – FDD‬نقشها‬
‫‪‬‬
‫‪ FDD‬نقشهای ود را به سه دسته لی تقسيم می ند‬
‫‪‬‬
‫نقشهای ليدی‬
‫‪‬‬
‫نقشهای يمايتی‬
‫‪‬‬
‫نقشهای امافی‬
‫‪35‬‬
‫متدولوژی ‪ – FDD‬نقشهاي کليدي‬
‫‪‬‬
‫مدير پروژه‬
‫‪‬‬
‫معمار ارشد‬
‫‪‬‬
‫مدير توسعه‬
‫‪‬‬
‫برنامهنويس ارشد‬
‫‪‬‬
‫مالك الس (‪)Class Owner‬‬
‫‪‬‬
‫مت ص‬
‫دامنه (‪)Domain Manager‬‬
‫‪36‬‬
‫ – نقشهاي حمايتي‬FDD ‫متدولوژی‬
37
)Release Manager( ‫مدير نشر‬

)Language Guru( ‫مشاور زبان‬

)Build Engineer( ‫مهندس سا ت‬

)Toolsmith( ‫مس ول ابزار‬

)System Administrator( ‫مدير سيستم‬

‫متدولوژی ‪ – FDD‬نقشهاي اضافي‬
‫‪‬‬
‫‪‬‬
‫سه نقش امافی ه در همه پروژهها وجود دارند‬
‫‪‬‬
‫آزمايش ننده (‪)Tester‬‬
‫‪‬‬
‫مستقر ننده (‪)Deployer‬‬
‫‪‬‬
‫نويسنده فن‌ (‪)Technical Writer‬‬
‫هر عمو میتواند چندين نقش بازی نيد و هير نقيش ممکين اسيت‬
‫به چند عمو نسبت داده شود‬
‫‪38‬‬
‫متدولوژی ‪ – FDD‬بهترين تجربيات‬
‫‪‬‬
‫‪Domain Object Modeling‬‬
‫‪‬‬
‫‪‬‬
‫شامل است راو و توميح دامنه مسأله میباشد‬
‫‪Developing By Feature‬‬
‫‪‬‬
‫توسعه و بررسی ميزان پيشرفت پروژه از طريق دنبال ردن پيادهسازی‬
‫ليست ومايف و وا‬
‫‪‬‬
‫مش‬
‫شده‬
‫‪Individual Class Ownership‬‬
‫‪‬‬
‫برای هر الس ش ص‌ وجود داشته باشد ه مسي ول سيازگاریت يارايی‬
‫و صيت آن باشد‬
‫‪39‬‬
‫متدولوژی ‪ – FDD‬بهترين تجربيات‬
‫‪‬‬
‫‪Feature Teams‬‬
‫‪‬‬
‫‪‬‬
‫‪Inspection‬‬
‫‪‬‬
‫‪‬‬
‫تيم وچ ‌ ه بهصورت پويا ش ل گرفتهاند‬
‫است اده از معروفترين و بهترين م انيزهاي شناساي‌ طاها‬
‫‪Regular Builds‬‬
‫‪‬‬
‫تممين اين ه هميشه ييك سيسيتم قابيل اجيرا و قابيل نميايش دادن (‪)Demo‬‬
‫وجود دارد‬
‫‪‬‬
‫‪Configuration Management‬‬
‫‪‬‬
‫داشتن تاري چه تغييرات و نس ههاي م تلف (بهمراه د منب )‬
‫متدولوژی ‪ – FDD‬بهترين تجربيات‬
‫‪‬‬
‫‪Progress Reporting‬‬
‫‪‬‬
‫رونييد اجييراي فعاليتهييا بييه صييورت امييل و در سييطوح م تلييف سييازمان‌‬
‫گزارش شود‬
‫متدولوژي ‪Scrum‬‬
‫‪‬‬
‫از يک استراتژی در بازی راگب‌ اقتباس شده است‬
‫‪‬‬
‫تأ يد روی اصول انعطافپذيریت سازگاری و سودمندی است‬
‫‪‬‬
‫تمر ز‪ :‬چگونه اعمای تيم بايد عمل ننيد تيا سيسيتم تولييد شيدهت در ييک‬
‫مييط امالً تغييرپذيرت انعطافپذيری افی داشته باشد‬
‫‪‬‬
‫ايده اصلی‪ :‬توسعه سيستمها شامل چندين متغير مييطی و تکنيکيی اسيت‬
‫(نيازهييات زمييانت منيياب و تکنولييوژی) ييه ايتميياالً در طييول فرآينييد توسييعه‬
‫تغيير می نند‬
‫‪‬‬
‫اين موموع فرآيند توسعه را پيچيده و ريرقابل پيشبينی می ند‬
‫‪42‬‬
‫ فرآورده‌ها‬- Scrum ‫متدولوژي‬
‫ به سه دسته اصلی تقسيم میشوند‬Scrum ‫فرآوردههای‬
43
Product Backlog

Sprint Backlog

Sprint BurnDown Chart


‫متدولوژي ‪Product Backlog - Scrum‬‬
‫‪‬‬
‫شييييييامل يييييييک صييييييف اولويييييييتبنييييييدی شييييييده اسييييييت ييييييه در آن‬
‫ومي ييهمنييديهييای تکنيکييی و يرفييه نمييايش داده شييدهانييد ييه بايييد‬
‫توسعه داده شوند‬
‫‪‬‬
‫بييرای هيير مييورد مش ي‬
‫شييده در اييين فييرآوردهت واصييی ماننييد‬
‫ومعيتت اولويت و ت مين اری وجود دارد‬
‫‪44‬‬
‫متدولوژي ‪Sprint Backlog - Scrum‬‬
‫‪‬‬
‫مجموعييييهای از مييييوارد يرفييييه و فنيييي‌ ييييه بييييرای تکييييرار جيييياری‬
‫(‪ )Current Iteration‬زمانبنيدی شيدهانيد در ايين فيرآورده نميايش‬
‫داده میشوند‬
‫‪‬‬
‫‪‬‬
‫نيازها در اين فرآورده به ومايف تبديل می شوند‬
‫برای هر ومي يه ييک شيرح وتياه وجيود دارد و مشي‬
‫ميیشيود‬
‫ييه چييه سييی مس ي ول انجييام آن اسييت و همچنييين ومييعيت و تعييداد‬
‫سييياعات باقيمانيييده تيييا تکمييييل شيييدن هييير ومي يييه در ايييين فيييرآروده‬
‫مش‬
‫میشود‬
‫‪45‬‬
‫متدولوژي ‪Sprint BurnDown Chart - Scrum‬‬
‫‪‬‬
‫سياعات باقيمانييده بييرای تکمييل شييدن همييه وميايف مربييوط بييه يييک‬
‫‪ Sprint‬را در قالب يک گراف بصورت برجسته نمايش میدهد‬
‫‪46‬‬
‫ نقش‌ها‬- Scrum ‫متدولوژي‬

Scrum Master

Product owner

Scrum team

Manager
47
‫متدولوژي‌هاي خانواده ‪Crystal‬‬
‫‪‬‬
‫شامل مجموعهای از متيدولوژيهيای مت ياوت اسيت يه مناسيبترين‬
‫آنها برای هر پروژه منيصر به فرد انت اب میشود‬
‫‪‬‬
‫دارای اصيييولی اسيييت يييه متيييدولوژيهيييا را بيييرای شيييرايط م تليييف‬
‫موجود در پروژهها س ارشی می ند‬
‫‪‬‬
‫روش ‪ Crystal‬پيشنهاد می ند ه يک متدولوژی مناسب براساس‬
‫اندازه و ميزان بيرانیبودن پروژه انت اب شود‬
‫‪48‬‬
‫متدولوژي‌هاي‬
‫‪‬‬
‫خانواده ‪( Crystal‬ادامه)‬
‫هر عميو از يانواده ‪ Crystal‬بيا ييک رنيگ مشي‬
‫میشيود يه‬
‫ميزان سنگينی متيدولوژی را نشيان ميیدهيد‪ .‬رنيگ تياريکتر نشيان‬
‫دهنده متدولوژی سنگينتر است‬
‫‪C: Comfort‬‬
‫‪D: Discretionary Money‬‬
‫‪E: Essential Money‬‬
‫‪L: Life‬‬
‫‪49‬‬
‫متدولوژي‌هاي خانواده‬
‫‪‬‬
‫‪( Crystal‬ادامه)‬
‫تمامی پيروژههيا از توسيعه افزايشيی بيا بيازه زميانی ييدا ثر ‪ 4‬مياه‬
‫است اده می نند‬
‫‪‬‬
‫تأ يد روی ارتباطات و همکاری بين افراد درگير در پروژه است‬
‫‪‬‬
‫هيچ فعاليت يا ابزاری را برای توسعه ميدود نمی ند‬
‫‪‬‬
‫مثالً ميیتيوان از فعالييتهيای ‪ XP‬و ‪ Scrum‬بيا هيم در ايين روش اسيت اده‬
‫رد‬
‫‪50‬‬
‫مزايای روشهای سريع االنتقال‬
‫‪‬‬
‫تأ يد روی شر تدادن مشتری در پروژهها است ه در پروژههای‬
‫اربردی بسيار م يد است‬
‫‪‬‬
‫تأ يييد روی ييارگروهی و ارتبيياط متقابييل ييه در بيياال بييردن رانييدمان‬
‫اری نقش مهمی دارد‬
‫‪‬‬
‫همه افراد درگير در پروژه در قبال ي يت ميصول مس ولند‬
‫‪‬‬
‫سيينجش مسييتمر ارهييای انجييام شييده از مزايييای بسيييار م يييد اييين‬
‫روشها است‬
‫‪51‬‬
‫مزايای روشهای سريع‬
‫‪‬‬
‫االنتقال (ادامه)‬
‫توسعه افزايشی يه بيا روشهيای ميدرن توسيعه نيرمافيزار سيازگار‬
‫است‬
‫‪‬‬
‫طرايی ساده و روشن برای فرآيند توسعه‬
‫‪‬‬
‫بييازبينیهييای مسييتمر ييه بييه بيياال رفييتن ي يييت ييار برنامييهنويسييان‬
‫مک می ند‬
‫‪52‬‬
‫معايب روشهای سريع االنتقال‬
‫‪‬‬
‫بدليل مبود فعاليتهيای طراييی در ايين روشهيات اگير يد بييش از‬
‫چند هزار ط باشد ممکن است فرآينيد توسيعه بيا مواني‬
‫طرنيا ی‬
‫بر ورد ند‬
‫‪‬‬
‫مبييود مسييتندات مربييوط بييه طرايييی در اييين روشهييا آنهييا را بييه‬
‫پروژههای وچک ميدود می ند و قابليتهای است اده مجدد را در‬
‫آنها ميدود می ند‬
‫‪‬‬
‫مبود فرآيندهای بازبينی سا تيافته‬
‫‪53‬‬
‫معايب روش‌های سريع االنتقال‬
‫‪‬‬
‫(ادامه)‬
‫مبييييود فرآينييييد طرايييييی ميييينمم و اسييييت اده از بييييازبينیهييييای رييييير‬
‫سا تيافته باعث اتالف زمان و هزينه میشود‬
‫‪‬‬
‫مبييود طييرح ي يييت‪ .‬در اييين روشهييا هيييچ نييوع طييرح اسييتانداردی‬
‫برای ارزيابی ي يت وجود ندارد‬
‫‪‬‬
‫مبود راهنماهای آموزشی برای است اده از اين روشها‬
‫‪54‬‬
‫پرسش و پاسخ‬
‫‪55‬‬