SlideShare ist ein Scribd-Unternehmen logo
1 von 87
AGILE SOFTWARE
MANAGEMENT WITH
SCRUM IN TFS
‫رحیمی‬ ‫رضا‬
‫تابستان‬96
‫زنجان‬ ‫فناوری‬ ‫و‬ ‫علم‬ ‫پارک‬
AGILE SOFTWARE
MANAGEMENT WITH
SCRUM IN TFS
AGILE SOFTWARE
MANAGEMENT WITH
SCRUM IN TFS
AGILE SOFTWARE
MANAGEMENT WITH
SCRUM IN TFS
AGILE SOFTWARE
MANAGEMENT WITH
SCRUM IN TFS
Reza Rahimy
16 year Experience
rtwo.ir
jobfa.com@gmail.com
@ZanjanDotNet
Agile , Scrum , TDD , DevOps
”
“
WELCOME TO AGILE
‫چابک‬ ‫مطالب‬ ‫عنوان‬
•‫افزاری‬ ‫نرم‬ ‫های‬ ‫پروژه‬ ‫شکست‬ ‫اصلی‬ ‫دلیل‬ ‫شش‬
•‫؟‬ ‫چیست‬ ‫متدولوژی‬
•‫متدولوژی‬ ‫تاریخچه‬
•‫متدولوژی‬‫نرم‬ ‫تولید‬ ‫های‬‫افزار‬
•‫بر‬ ‫مبتنی‬ ‫های‬ ‫متدولوژی‬Agile
•Agile‫؟‬ ‫چیست‬
•Agile Manifesto
•‫نرم‬ ‫های‬ ‫پروژه‬ ‫مشکالت‬ ‫و‬ ‫چابکی‬‫افزاری‬
‫تجربه‬
•‫هایی‬ ‫ویژگی‬ ‫ساخت‬ ‫نشانگر‬ ‫ایرانی‬ ‫های‬ ‫شرکت‬ ‫تجربه‬
‫سیستم‬ ‫پایین‬ ‫کیفیت‬ ‫و‬ ‫دیرهنگام‬ ‫تحویل‬ ،‫خواهان‬ ‫بدون‬
‫افزاریست‬ ‫نرم‬ ‫محصوالت‬ ‫و‬ ‫ها‬.
•‫یکدیگر‬ ‫به‬ ‫شبیه‬ ‫بیش‬ ‫و‬ ‫کم‬ ‫ایرانی‬ ‫های‬ ‫شرکت‬ ‫عملکرد‬
‫می‬ ‫ادامه‬ ‫خود‬ ‫بقای‬ ‫به‬ ‫کماکان‬ ‫دلیل‬ ‫همین‬ ‫به‬ ‫و‬ ‫است‬
‫دهند‬.
•‫اند‬ ‫نشده‬ ‫رفع‬ ‫تنها‬ ‫نه‬ ، ‫سالها‬ ‫از‬ ‫پس‬ ‫ها‬ ‫شرکت‬ ‫مشکالت‬
‫مانده‬ ‫الینحل‬ ‫تقریبا‬ ‫و‬ ‫یافته‬ ‫تشدید‬ ‫شدت‬ ‫به‬ ‫بلکه‬
‫اند‬.
‫نرم‬ ‫توسعه‬ ‫در‬ ‫کارهایتان‬ ‫نتایج‬ ‫از‬ ‫آیا‬
‫هستید؟‬ ‫راضی‬ ‫افزار‬
•‫باالست‬ ‫قبولی‬ ‫غیرقابل‬ ‫میزان‬ ‫به‬ ‫خورده‬ ‫شکست‬ ‫های‬ ‫پروژه‬ ‫درصد‬
•‫شوند‬ ‫می‬ ‫تحویل‬ ‫دیر‬ ‫محصوالت‬
•‫است‬ ‫انتظار‬ ‫از‬ ‫کمتر‬ ‫سرمایه‬ ‫بازگشت‬ ‫غالبا‬
•‫است‬ ‫پائین‬ ‫افزار‬ ‫نرم‬ ‫کیفیت‬
•‫است‬ ‫آور‬ ‫خجالت‬ ‫وری‬ ‫بهره‬ ‫میزان‬
•‫گیرد‬ ‫نمی‬ ‫عهده‬ ‫بر‬ ‫رو‬ ‫نتایج‬ ‫مسئولیت‬ ‫کس‬ ‫هیچ‬
•‫است‬ ‫پایین‬ ‫کارمندان‬ ‫انگیزه‬
•‫به‬ ‫کارمندان‬ ‫خروج‬ ‫و‬ ‫ورود‬ ‫میزان‬/‫است‬ ‫زیاد‬ ‫بسیار‬ ‫شرکت‬ ‫از‬
•‫است‬ ‫شده‬ ‫شرکت‬ ‫عادی‬ ‫روال‬ ، ‫ریزی‬ ‫برنامه‬ ‫تغییر‬
‫بود‬ ‫بهتر‬ ‫وضعمان‬ ، ‫داشتیم‬ ‫بقالی‬ ‫اگر‬!
‫نرم‬ ‫های‬ ‫پروژه‬ ‫شکست‬ ‫اصلی‬ ‫دلیل‬ ‫شش‬
‫افزاری‬
1-‫نشدن‬ ‫درگیر‬‫مشتری‬
2-‫نیازمندها‬ ‫درست‬ ‫درک‬ ‫عدم‬
3-‫واقعی‬ ‫غیر‬ ‫بندی‬ ‫زمان‬
4-‫تغییرات‬ ‫مدیریت‬ ‫و‬ ‫پذیریش‬ ‫عدم‬
5-‫افزار‬ ‫نرم‬ ‫تست‬ ‫کمبود‬
6-‫دار‬ ‫باد‬ ‫و‬ ‫منعطف‬ ‫غیر‬ ‫فرآیندهای‬
Methodology‫؟‬ ‫چیست‬
A methodology is a formalized process or set of practices for creating software
• A set of rules you have to follow
• A set of conventions the organization decides to follow
• A systematical, engineering approach for organizing software projects
‫تاریخچ‬‫ۀ‬‫متدولوژی‬
‫دوران‬‫پیش‬‫متدولوژی‬(‫دهه‬‫های‬60‫و‬70)
•‫روشهای‬‫موردی‬(Ad hoc)‫برای‬‫توسع‬‫ۀ‬‫نرم‬‫افزار‬(Cowboy coders)
•‫بحران‬‫نرم‬‫افزار‬(1969)(Software Crisis)
‫دوران‬‫متدولوژیهای‬‫اولیه‬(‫دهه‬‫های‬70‫و‬80)
•‫تأکید‬‫روی‬‫مراحل‬‫توسع‬‫ۀ‬‫نرم‬‫افزار‬
•‫مدل‬‫آبشاری‬(Waterfall Model)
‫دوران‬‫متدولوژیها‬(‫دهه‬‫های‬80‫و‬90)
•‫ارائ‬‫ۀ‬‫تعریف‬‫برای‬‫متدولوژی‬
•‫معرفی‬‫چون‬‫متدولوژیهایی‬‫چون‬Structured,Prototyping,OO
‫دوران‬‫پسا‬‫متدولوژی‬(‫اواخر‬‫ده‬‫ۀ‬90)
•‫دیدگاه‬‫اول‬:‫بازگشت‬‫به‬‫روشهای‬‫موردی‬‫یا‬‫سعی‬‫و‬‫خطا‬
•‫دیدگاه‬‫دوم‬:‫جستجوی‬‫روشهای‬‫دیگر‬،‫مثل‬‫متدولوژیهای‬‫چابک‬،‫بهبود‬‫روشهای‬‫شیء‬‫گراء‬
‫یا‬‫انتخاب‬‫یک‬‫متدولوژی‬‫خاص‬‫هر‬‫پروژه‬!
‫انواع‬‫متدولوژی‬‫نرم‬ ‫تولید‬ ‫های‬‫افزار‬
‫وزن‬ ‫منظر‬ ‫از‬
‫وزن‬ ‫سنگین‬ ‫متدولوژیهای‬
‫چابک‬ ‫های‬ ‫متدلوژی‬
‫ها‬ ‫نسل‬ ‫منظر‬ ‫از‬
‫اول‬ ‫نسل‬(‫بر‬ ‫مبتني‬ ‫هاي‬ ‫متدولوژي‬
‫چرخ‬‫ۀ‬‫عمر‬)
‫دوم‬ ‫نسل‬(‫یافته‬ ‫ساخت‬ ‫هاي‬ ‫متدولوژي‬)
‫سوم‬ ‫نسل‬(‫نمایه‬ ‫هاي‬ ‫متدولوژي‬
‫ساز‬prototyping)
‫چهارم‬ ‫نسل‬(‫تكنیكي‬ ‫متدولوژي‬/‫اجتماعي‬
‫مشاركتي‬)
‫پنجم‬ ‫نسل‬(‫مساله‬ ‫حل‬ ‫هاي‬ ‫متدولوژي‬)
‫بر‬ ‫مبتنی‬ ‫های‬ ‫متدولوژی‬Agile
• eXtreme Programming (XP)
• Pair Programming
• Test Driven Development
• Continuous Integration
• Refactoring, Coding Standards,
etc…
• Scrum
• Crystal family of methodologies
• Feature-Driven Development (FDD)
• Adaptive Software Development (ASD)
• Dynamic System Development Model
(DSDM)
• Agile Unified Process (AUP)
AGILE DEVELOPMENT
Agile‫؟‬ ‫چیست‬
‫سال‬ ‫در‬1995Preiss,Nagel,Golman‫کتاب‬ ‫نویسندگان‬Agile Competitors
and Virtual Organizations‫پیشنهاد‬ ‫چابکی‬ ‫برای‬ ‫را‬ ‫زیر‬ ‫تعریف‬
‫کردند‬:
‫بی‬ ‫پذیریش‬ ، ‫شرایط‬ ‫به‬ ‫توجه‬ ، ‫پویایی‬ ‫از‬ ‫عبارتست‬ ‫چابکی‬
‫گرایی‬ ‫ترقی‬ ‫و‬ ‫تغییرات‬ ‫باکانه‬.
‫است‬ ‫پیروزی‬ ‫و‬ ‫موفقیت‬ ‫درباره‬ ‫چابکی‬:‫درباره‬
‫در‬ ‫پیروزی‬ ‫و‬ ‫نوظهور‬ ‫رقابتی‬ ‫های‬ ‫عرصه‬ ‫در‬ ‫موفقیت‬
‫طوفانهای‬ ‫اوج‬ ‫در‬ ‫مشتریان‬ ‫و‬ ‫بازار‬ ‫سهم‬ ، ‫سود‬ ‫کسب‬
‫است‬ ‫رقابتی‬ ‫بازارهای‬....
Agile‫افزار‬ ‫نرم‬ ‫صنعت‬ ‫در‬
•Agile‫از‬ ‫ای‬ ‫مجموعه‬‫ارزش‬ ‫و‬ ‫اصول‬‫ها‬‫می‬
‫که‬ ‫باشد‬‫توسعه‬ ‫محیط‬ ‫در‬ ‫آنها‬ ‫بستن‬ ‫کار‬ ‫به‬ ‫با‬‫نرم‬ ‫محصوالت‬
‫مانند‬ ‫نتایجی‬ ‫به‬ ‫توان‬ ‫می‬ ‫افزاری‬‫کارآمد‬ ‫محصوالت‬
‫با‬ ‫کار‬ ‫نیروی‬ ، ‫خوشحال‬ ‫مشتری‬ ،
‫انگیزه‬‫دست‬‫یافت‬.
•‫ارزش‬‫اصول‬ ‫و‬ ‫ها‬Agile‫در‬‫سال‬2001‫توسط‬17‫نفر‬
‫طی‬ ‫افزار‬ ‫نرم‬ ‫توسعه‬ ‫صنعت‬ ‫جهانی‬ ‫معتبر‬ ‫اساتید‬ ‫از‬
‫عنوان‬ ‫با‬ ‫بیانیه‬ ‫یک‬‫چابک‬ ‫توسعه‬ ‫بیانیه‬‫و‬ ‫تنظیم‬
‫گردید‬ ‫ارائه‬.
AGILE MANIFESTO ‫افراد‬‫تعامالت‬ ‫و‬‫از‬ ‫باالتر‬
‫ابزارها‬ ‫و‬ ‫فرآیندها‬
‫نرم‬‫کارکننده‬ ‫افزار‬‫از‬ ‫باالتر‬
‫مستندات‬‫جامع‬
‫مشارکت‬‫کار‬ ‫انجام‬ ‫در‬ ‫مشتری‬‫باالتر‬
‫قرارداد‬ ‫از‬‫کار‬
‫پاسخگویی‬‫تغییرات‬ ‫به‬‫از‬ ‫باالتر‬
‫طرح‬ ‫یک‬ ‫پیروی‬
‫وجود‬ ‫با‬‫نیز‬ ‫چپ‬ ‫سمت‬ ‫موارد‬ ‫اینکه‬
‫ولی‬ ‫هستند‬ ‫ارزشمند‬
‫ارزش‬ ‫راست‬ ‫سمت‬ ‫موارد‬ ‫برای‬ ‫ما‬
‫هستیم‬ ‫قائل‬ ‫بیشتری‬
‫تکاملی‬ ‫و‬ ‫تدریجی‬ ‫توسعه‬
‫نرم‬ ‫های‬ ‫پروژه‬ ‫شکست‬ ‫اصلی‬ ‫دلیل‬ ‫شش‬
‫افزاری‬
1-‫نشدن‬ ‫درگیر‬‫مشتری‬
2-‫نیازمندها‬ ‫درست‬ ‫درک‬ ‫عدم‬
3-‫واقعی‬ ‫غیر‬ ‫بندی‬ ‫زمان‬
4-‫تغییرات‬ ‫مدیریت‬ ‫و‬ ‫پذیریش‬ ‫عدم‬
5-‫افزار‬ ‫نرم‬ ‫تست‬ ‫کمبود‬
6-‫دار‬ ‫باد‬ ‫و‬ ‫منعطف‬ ‫غیر‬ ‫فرآیندهای‬
‫افزاری‬ ‫نرم‬ ‫های‬ ‫پروژه‬ ‫مشکالت‬ ‫و‬ ‫چابکی‬
•‫است‬ ‫پادشاه‬ ‫مشتری‬!
•‫ویژگی‬ ‫صورت‬ ‫به‬ ‫باید‬ ‫شده‬ ‫کسب‬ ‫نیازمندیهای‬‫هایی‬
‫قابل‬ ‫مشخصی‬ ‫معیارهای‬ ‫اساس‬ ‫بر‬ ‫که‬ ‫شوند‬ ‫تعریف‬
‫باشند‬ ‫پذیرش‬.
•‫سفارش‬ ‫و‬ ‫توسعه‬ ‫تیم‬ ‫بین‬ ‫مذاکره‬ ‫با‬ ‫زمانبندی‬
‫تنظیم‬ ‫دهنده‬‫می‬‫شود‬
•‫هیچ‬‫تاریخ‬ ‫مگر‬ ،‫است‬ ‫نشده‬ ‫حک‬ ‫سنگ‬ ‫روی‬ ‫چیزی‬‫تحویل‬
•‫تست‬‫ها‬‫می‬ ‫نوشته‬ ‫کد‬ ‫از‬ ‫قبل‬‫خودکار‬ ‫کامال‬ ‫و‬ ‫شوند‬
‫هستند‬
‫افزاری‬ ‫نرم‬ ‫های‬ ‫پروژه‬ ‫مشکالت‬ ‫و‬ ‫چابکی‬
•‫نیست‬ ‫جداگانه‬ ‫فعالیت‬ ‫یک‬ ‫پروژه‬ ‫مدیریت‬
•‫توسعه‬ ‫گیری‬ ‫کار‬ ‫به‬‫چابک‬
WHAT IS SCRUM?
‫اسکرام‬ ‫مطالب‬ ‫عنوان‬
•‫نقش‬‫های‬‫اسکرام‬
•‫اسکرام‬ ‫های‬ ‫آرتیفکت‬
•‫اسکرام‬ ‫رویدادهای‬
•‫های‬ ‫چالش‬‫اسکرام‬
•‫آبکی‬ ‫اسکرام‬
•‫و‬ ‫اسکرام‬XP
•‫چابک‬ ‫تیم‬ ‫صحنه‬ ‫پشت‬
•‫وین‬ ‫کانه‬ ‫چهارچوب‬
•‫چابک‬ ‫متدهای‬ ‫و‬ ‫ساده‬ ‫حوزه‬
•‫متدهای‬ ‫و‬ ‫دشوارفهم‬ ‫حوزه‬
‫چابک‬
•‫متدهای‬ ‫و‬ ‫پیچیده‬ ‫حوزه‬
‫چابک‬
•‫متدهای‬ ‫و‬ ‫نظم‬ ‫بی‬ ‫حوزه‬
‫چابک‬
•‫اسکرام‬‫چیست‬‫؟‬
•‫گرا‬ ‫وقفه‬ ‫کار‬
•‫متدهای‬ ‫و‬ ‫وین‬ ‫کانه‬ ‫چارچوب‬
‫چابک‬
Scrum‫چیست؟‬
‫اسکرام‬‫که‬ ‫است‬ ‫چابک‬ ‫توسعه‬ ‫برای‬ ‫ورکی‬ ‫فریم‬
‫نقش‬ ،‫فرآیندها‬ ‫تعریف‬ ‫با‬‫آرتیفکت‬ ‫و‬ ‫ها‬‫های‬
‫تیم‬ ‫به‬ ‫مشخص‬‫می‬ ‫کمک‬ ‫افزاری‬ ‫نرم‬ ‫های‬‫تا‬ ‫کند‬
‫شوند‬ ‫چابک‬.‫صورت‬ ‫به‬ ‫افزار‬ ‫نرم‬ ،‫اسکرام‬ ‫در‬
‫می‬ ‫پیدا‬ ‫توسعه‬ ‫مرحله‬ ‫به‬ ‫مرحله‬‫کند‬.
•‫سبک‬‫است‬ ‫وزن‬.
•‫است‬ ‫ساده‬ ‫آن‬ ‫یادگیری‬.
•‫است‬ ‫دشوار‬ ‫آن‬ ‫بر‬ ‫تسلط‬.
‫چارچوب‬‫کانه‬
‫وین‬
‫چابک‬ ‫متدهای‬ ‫و‬
”
“
‫حوز‬ ‫ی‬ ‫همه‬ ‫برای‬ ‫چابک‬ ‫متدهای‬‫های‬ ‫ه‬‫کاری‬
‫نیست‬ ‫مناسب‬
‫اسکرام‬:‫ارزش‬ ‫بر‬ ‫مبتنی‬ ‫توسعه‬
Constraints
Variable
Plan Driven
Value Driven
Features Cost Schedule
FeaturesCost Schedule
Traditional Scrum
‫های‬ ‫نقش‬‫اسکرام‬
•‫محصول‬ ‫صاحب‬
•‫اسکرام‬ ‫گر‬ ‫تسهیل‬
•‫توسعه‬ ‫تیم‬
‫محصول‬ ‫مالک‬
•‫مشتریها‬ ‫یا‬ ‫مشتری‬ ‫نماینده‬
•‫های‬ ‫ویژگی‬ ‫تعیین‬‫محصول‬
•‫مدیریت‬ ‫خصوص‬ ‫در‬ ‫مسئول‬ ‫فرد‬ ‫تنها‬‫محصول‬ ‫الگ‬ ‫بک‬(‫محصول‬ ‫الگ‬ ‫بک‬ ‫ایجاد‬+‫اولویت‬
‫مداوم‬ ‫بطور‬ ‫ها‬ ‫داستان‬ ‫تغییر‬ ‫و‬ ‫بندی‬)
•‫ها‬ ‫ایده‬ ‫آوری‬ ‫جمع‬
•‫پیشرفت‬ ‫پیگیری‬
•‫نشر‬ ‫زمان‬ ‫درباره‬ ‫گیری‬ ‫تصمیم‬
•‫محصول‬ ‫آوری‬ ‫سود‬ ‫مسئول‬
•‫کار‬ ‫نتایج‬ ‫رد‬ ‫یا‬ ‫پذیرش‬
•‫سرمایه‬ ‫بازگشت‬ ‫سازی‬ ‫حداکثر‬ ‫مسئول‬
‫اسکرام‬ ‫گر‬ ‫تسهیل‬(‫اسکرام‬ ‫مربی‬)
•‫مستر‬ ‫اسکرام‬‫آن‬ ‫شدن‬ ‫عملیاتی‬ ‫و‬ ‫اسکرام‬ ‫درک‬ ‫از‬ ‫اطمینان‬ ‫حصول‬ ‫مسئول‬‫است‬
•‫مستر‬ ‫اسکرام‬‫رهبر‬ ‫یک‬‫برای‬ ‫خدمتگزار‬‫میرود‬ ‫شمار‬ ‫به‬ ‫اسکرام‬ ‫تیم‬
•‫خدمات‬‫مستر‬ ‫اسکرام‬‫مالک‬ ‫برای‬‫محصول‬
•‫خدمات‬‫مستر‬ ‫اسکرام‬‫تیم‬ ‫برای‬‫توسعه‬
•‫خدمات‬‫مستر‬ ‫اسکرام‬‫سازمان‬ ‫برای‬
‫توسعه‬ ‫تیم‬
•‫سازمانده‬ ‫خود‬ ‫اسکرام‬ ‫تیمهای‬‫و‬‫فراوظیفه‬‫ای‬‫هستند‬.
•‫تیمهای‬‫بجای‬ ‫میکنند‬ ‫انتخاب‬ ‫را‬ ‫کار‬ ‫انجام‬ ‫روش‬ ‫بهترین‬ ‫خودشان‬ ‫خودسازمانده‬
‫شوند‬ ‫مدیریت‬ ‫تیم‬ ‫خارج‬ ‫از‬ ‫دیگری‬ ‫کس‬ ‫توسط‬ ‫اینکه‬.
•‫تیمهای‬‫وابستگی‬ ‫بدون‬ ‫را‬ ‫کارها‬ ‫تکمیل‬ ‫جهت‬ ‫الزم‬ ‫توانمندیهای‬ ‫تمام‬ ‫فراوظیفه‬
‫هستند‬ ‫دارا‬ ‫تیم‬ ‫از‬ ‫خارج‬ ‫اجزای‬ ‫به‬.
‫برای‬‫جز‬ ‫به‬ ‫عنوانی‬ ‫تیم‬ ‫اعضای‬ ‫همه‬
«‫دهنده‬ ‫توسعه‬»
‫وجود‬‫ندارد‬
‫اسکرام‬ ‫های‬ ‫آرتیفکت‬
•‫الگ‬ ‫بک‬‫محصول‬
•‫الگ‬ ‫بک‬‫اسپرینت‬
•Burndown Chart
‫محصول‬ ‫الگ‬ ‫بک‬
‫الگ‬ ‫بک‬‫لیست‬ ‫یک‬ ‫محصول‬‫بندی‬ ‫رتبه‬‫است‬ ‫نیاز‬ ‫که‬ ‫است‬ ‫چیزی‬ ‫آن‬ ‫هر‬ ‫از‬ ‫شده‬
‫جهت‬ ‫نیازمندیها‬ ‫منبع‬ ‫تنها‬ ‫و‬ ‫شود‬ ‫گنجانده‬ ‫محصول‬ ‫در‬‫تغییری‬ ‫هر‬‫در‬
‫است‬ ‫محصول‬.
‫از‬ ‫قلم‬ ‫هر‬‫الگ‬ ‫بک‬‫و‬ ‫برآورد‬ ،‫رتبه‬ ،‫شرح‬ ‫مانند‬ ‫ویژگیهایی‬ ‫دارای‬ ‫محصول‬
‫است‬ ‫آن‬ ‫ارزش‬.
‫شوند‬ ‫می‬ ‫پاالیش‬ ‫الگ‬ ‫بک‬ ‫های‬ ‫آیتم‬ ‫سازی‬ ‫آشکار‬ ‫جلسات‬ ‫در‬
‫یک‬‫الگ‬ ‫بک‬‫نیست‬ ‫کامل‬ ‫هیچوقت‬ ‫محصول‬.
As a <user role>,
I can <functionality>
so that <value>
DOD
‫هنگامیکه‬‫الگ‬ ‫بک‬ ‫قلم‬ ‫یک‬‫یک‬ ‫یا‬ ‫محصول‬‫فرآورده‬«‫شده‬ ‫تکمیل‬»‫همه‬ ،‫میشود‬ ‫توصیف‬
‫منظور‬ ‫که‬ ‫بدانند‬ ‫باید‬‫از‬«‫شده‬ ‫تکمیل‬»‫چیست‬
‫اسپرینت‬ ‫الگ‬ ‫بک‬
‫الگ‬ ‫بک‬‫اقالم‬ ‫از‬ ‫مجموعهای‬ ‫اسپرینت‬‫شده‬ ‫انتخاب‬‫از‬‫الگ‬ ‫بک‬‫به‬ ‫اسپرینت‬ ‫برای‬ ‫محصول‬
‫همراه‬‫هایی‬ ‫برنامه‬‫اسپرینت‬ ‫هدف‬ ‫تحقق‬ ‫برای‬‫ارائه‬ ‫و‬‫است‬ ‫فرآورده‬
BURNDOWN CHART
‫هدف‬ ‫یک‬ ‫به‬ ‫نسبت‬ ‫پیشرفت‬ ‫پایش‬
‫اسکرام‬ ‫رویدادهای‬
•‫محصول‬ ‫سبد‬ ‫ریزی‬ ‫برنامه‬
•‫محصول‬ ‫ریزی‬ ‫برنامه‬
•‫انتشار‬ ‫ریزی‬ ‫برنامه‬
•‫اسپرینت‬
•‫اسپرینت‬ ‫ریزی‬ ‫برنامه‬
•‫روزانه‬ ‫ریزی‬ ‫برنامه‬
•‫اسپرینت‬ ‫بازبینی‬
•‫بازاندیشی‬‫اسپرینت‬
•‫آشکار‬ ‫جلسات‬‫سازی‬
‫محصول‬ ‫سبد‬ ‫ریزی‬ ‫برنامه‬
•‫ریزی‬ ‫برنامه‬ ‫افق‬:‫بیشتر‬ ‫یا‬ ‫سال‬ ‫یک‬
•‫گنندگان‬ ‫شرکت‬:‫محصول‬ ‫مالکان‬ ‫و‬ ‫ذینعفان‬
•‫تمرکز‬ ‫نقطه‬:‫محصول‬ ‫سبد‬ ‫مدیریت‬
•‫ها‬ ‫دادنی‬ ‫تحویل‬:‫جاری‬ ‫محصوالت‬ ‫و‬ ‫محصول‬ ‫سبد‬ ‫الگ‬ ‫بک‬
‫محصول‬ ‫ریزی‬ ‫برنامه‬
•‫ریزی‬ ‫برنامه‬ ‫افق‬:‫ماه‬ ‫چندین‬
•‫گنندگان‬ ‫شرکت‬:‫محصول‬ ‫مالکان‬ ‫و‬ ‫ذینعفان‬
•‫تمرکز‬ ‫نقطه‬:‫محصول‬ ‫تکامل‬ ‫مسیر‬ ‫و‬ ‫انداز‬ ‫چشم‬
•‫ها‬ ‫دادنی‬ ‫تحویل‬:‫محصول‬ ‫کالن‬ ‫های‬ ‫ویژگی‬ ‫و‬ ‫راه‬ ‫نقشه‬ ،‫محصول‬ ‫انداز‬ ‫چشم‬
‫انتشار‬ ‫ریزی‬ ‫برنامه‬
•‫ریزی‬ ‫برنامه‬ ‫افق‬:‫ماه‬ ‫نه‬ ‫تا‬ ‫کمتر‬ ‫یا‬ ‫ماه‬ ‫سه‬ ‫بین‬
•‫گنندگان‬ ‫شرکت‬:‫ذینعفان‬‫اسکرام‬ ‫تیم‬ ‫اعضای‬ ‫همه‬ ‫و‬
•‫تمرکز‬ ‫نقطه‬:‫یک‬ ‫از‬ ‫کیفیت‬ ‫و‬ ‫مشتری‬ ‫به‬ ‫ارائه‬ ‫قابل‬ ‫های‬ ‫ارزش‬ ‫بین‬ ‫توازن‬ ‫حفظ‬
‫دیگر‬ ‫طرف‬ ‫از‬ ‫بودجه‬ ‫و‬ ‫زمان‬ ،‫محدود‬ ‫قیدهای‬ ‫و‬ ‫طرف‬
•‫ها‬ ‫دادنی‬ ‫تحویل‬:‫انتشار‬ ‫طرح‬
‫اسپرینت‬
‫است‬ ‫اسکرام‬ ‫قلب‬ ‫اسپرینت‬
‫یک‬ ،‫کمتر‬ ‫یا‬ ‫ماه‬ ‫یک‬ ‫مدت‬ ‫به‬ ‫ثابت‬ ‫زمان‬ ‫بازه‬ ‫یک‬ ‫طی‬ ‫در‬‫تکمیل‬ ‫فرآورده‬
‫کاربردی‬ ، ‫شده‬‫و‬‫عرضه‬ ‫قابل‬ ‫بالقوه‬‫میشود‬ ‫ساخته‬ ،‫مشتری‬ ‫به‬.
‫هر‬‫و‬ ‫طرح‬ ‫یک‬ ،‫میشود‬ ‫ساخته‬ ‫آن‬ ‫در‬ ‫ازآنچه‬ ‫تعریف‬ ‫یک‬ ‫شامل‬ ‫اسپرینت‬
‫پذیر‬ ‫انعطاف‬ ‫برنامه‬‫بعالوه‬ ،‫بود‬ ‫خواهد‬ ‫آن‬ ‫ساختن‬ ‫چگونگی‬ ‫راهنمای‬ ‫که‬
‫است‬ ‫نهایی‬ ‫محصول‬ ً‫نهایتا‬ ‫و‬ ‫کارها‬ ‫از‬ ‫مجموعهای‬
‫اسپرینت‬ ‫ریزی‬ ‫برنامه‬
•‫ریزی‬ ‫برنامه‬ ‫افق‬:‫تکرار‬ ‫هر‬ ‫در‬(‫تقویمی‬ ‫ماه‬ ‫یک‬ ‫تا‬ ‫هفته‬ ‫یک‬ ‫بین‬)
•‫گنندگان‬ ‫شرکت‬:‫اسکرام‬ ‫تیم‬ ‫اعضای‬ ‫همه‬
•‫تمرکز‬ ‫نقطه‬:‫شوند‬ ‫داده‬ ‫تحویل‬ ‫جاری‬ ‫اسپرینت‬ ‫در‬ ‫باید‬ ‫که‬ ‫هایی‬ ‫ویژگی‬
•‫ها‬ ‫دادنی‬ ‫تحویل‬:‫اسپرینت‬ ‫هدف‬‫و‬‫اسپرینت‬ ‫الگ‬ ‫بک‬
‫روزانه‬ ‫ریزی‬ ‫برنامه‬ ‫جلسات‬
•‫ریزی‬ ‫برنامه‬ ‫افق‬:‫روز‬ ‫هر‬
•‫گنندگان‬ ‫شرکت‬:‫توسعه‬ ‫تیم‬ ‫و‬ ‫اسکرام‬ ‫استاد‬
•‫تمرکز‬ ‫نقطه‬:‫شده‬ ‫تعهد‬ ‫های‬ ‫ویژگی‬ ‫تکمیل‬ ‫روش‬
•‫ها‬ ‫دادنی‬ ‫تحویل‬:‫دهی‬ ‫سازمان‬ ‫ی‬ ‫شیوه‬ ‫بهترین‬ ‫با‬ ‫تطبیق‬ ‫و‬ ‫کار‬ ‫پیشرفت‬ ‫بررسی‬
‫روزانه‬ ‫کارهای‬
‫روزانه‬ ‫ریزی‬ ‫برنامه‬ ‫جلسات‬
‫دهد‬ ‫می‬ ‫توضیح‬ ‫تیم‬ ‫اعضای‬ ‫از‬ ‫یک‬ ‫هر‬
:
•‫چه‬ ‫حاال‬ ‫تا‬ ‫قبلی‬ ‫روزانه‬ ‫اسکرام‬ ‫از‬
‫است‬ ‫داده‬ ‫انجام‬ ‫کارهایی‬.
•‫برنامه‬ ‫امروز‬ ‫برای‬ ‫را‬ ‫کارهایی‬ ‫چه‬
‫است‬ ‫کرده‬ ‫ریزی‬.
•‫رو‬ ‫روبه‬ ‫موانعی‬ ‫و‬ ‫مشکالت‬ ‫چه‬ ‫با‬
‫اسپرینت‬ ‫بازبینی‬
‫بازبینی‬ ‫طی‬،‫اسپرینت‬‫کاری‬ ‫روی‬ ‫بر‬ ‫اسکرام‬ ‫تیم‬ ‫و‬ ‫ذینفعان‬
‫که‬‫طی‬ ‫در‬‫اسپرینت‬‫شده‬ ‫انجام‬‫تعامل‬ ،‫است‬‫میکنند‬‫یک‬ ‫این‬
‫از‬ ‫هدف‬ ‫و‬ ‫سنجی‬ ‫وضعیت‬ ‫جلسه‬ ‫نه‬ ،‫است‬ ‫غیررسمی‬ ‫جلسه‬‫و‬ ‫ارائه‬
‫و‬ ‫بازخورد‬ ‫دریافت‬ ،‫آن‬ ‫در‬ ‫فرآورده‬ ‫نمایش‬‫تعامل‬ ‫برانگیختن‬
‫است‬
«‫مواردی‬ ‫چه‬ ‫که‬ ‫میدهد‬ ‫توضیح‬ ‫همه‬ ‫به‬ ‫محصول‬ ‫مالک‬‫مواردی‬ ‫چه‬ ‫و‬ ‫شده‬ ‫تکمیل‬
‫است‬ ‫نشده‬ ‫تکمیل‬.
‫مشکالت‬ ،‫است‬ ‫رفته‬ ‫پیش‬ ‫خوب‬ ‫اسپرینت‬ ‫طول‬ ‫در‬ ‫که‬ ‫مواردی‬ ‫خصوص‬ ‫در‬ ‫توسعه‬ ‫تیم‬‫پیش‬
‫آمده‬‫میکند‬ ‫بحث‬ ‫آنها‬ ‫حل‬ ‫چگونه‬ ‫و‬
‫اسپرینت‬ ‫بازاندیشی‬
•‫به‬ ‫تا‬ ‫است‬ ‫اسکرام‬ ‫تیم‬ ‫برای‬ ‫مناسب‬ ‫مجال‬ ‫یک‬ ‫اسپرینت‬ ‫بازاندیشی‬
‫اسپرینت‬ ‫در‬ ‫اجرا‬ ‫جهت‬ ‫بهبود‬ ‫طرح‬ ‫یک‬ ‫و‬ ‫پرداخته‬ ‫خود‬ ‫بازرسی‬‫بعدی‬
‫آماده‬‫کند‬.
•‫و‬ ‫فرآیند‬ ،‫آنها‬ ‫روابط‬ ،‫افراد‬ ‫به‬ ‫توجه‬ ‫با‬ ‫قبل‬ ‫اسپرینت‬ ،‫اینکه‬ ‫بررسی‬
‫است‬ ‫شده‬ ‫طی‬ ‫چگونه‬ ‫ابزارها‬.
•‫شناسایی‬‫و‬‫بندی‬ ‫طبقه‬‫خوب‬ ‫که‬ ‫مواردی‬ ‫و‬ ‫بالقوه‬ ‫اصالحات‬‫اند‬ ‫پیشرفته‬.
•‫برای‬ ‫طرح‬ ‫یک‬ ‫ایجاد‬‫سازی‬ ‫پیاده‬‫در‬ ‫اسکرام‬ ‫تیم‬ ‫که‬ ‫شکلی‬ ‫به‬ ‫اصالحات‬
‫کند‬ ‫عملیاتی‬ ‫را‬ ‫آنها‬ ‫کارهایش‬ ‫انجام‬ ‫مسیر‬.
”
“
،‫سریع‬ ‫یادگیری‬ ‫هدف‬ ‫با‬
‫در‬ ‫و‬ ‫کنید‬ ‫ریزی‬ ‫برنامه‬
‫تغییر‬ ‫را‬ ‫مسیر‬ ‫لزوم‬ ‫صورت‬
‫دهید‬
‫سازی‬ ‫آشکار‬ ‫جلسات‬
‫جلسه‬ ‫این‬ ‫طی‬
•‫الگ‬ ‫بک‬ ‫های‬ ‫آیتم‬ ‫به‬ ‫جزئیات‬ ‫افزودن‬
•‫برآورد‬‫و‬‫بندی‬ ‫رتبه‬‫درون‬ ‫اقالم‬‫الگ‬ ‫بک‬‫محصول‬
‫میشود‬ ‫انجام‬.
‫فرآیندی‬ ،‫فعالیت‬ ‫این‬‫بر‬ ‫توسعه‬ ‫تیم‬ ‫و‬ ‫محصول‬ ‫مالک‬ ‫آن‬ ‫در‬ ‫که‬ ‫است‬ ‫مداوم‬
‫اقالم‬ ‫جزئیات‬ ‫روی‬‫الگ‬ ‫بک‬‫میپردازند‬ ‫تعامل‬ ‫به‬ ‫محصول‬.‫طی‬‫الگ‬ ‫بک‬ ‫پاالیش‬
‫میشوند‬ ‫اصالح‬ ‫و‬ ‫مرور‬ ‫اقالم‬ ،‫محصول‬.‫میگیرد‬ ‫تصمیم‬ ‫که‬ ‫است‬ ‫اسکرام‬ ‫تیم‬
‫بپذیرد‬ ‫انجام‬ ‫چگونه‬ ‫و‬ ‫زمانی‬ ‫چه‬ ‫در‬ ‫پاالیش‬.‫فرآیند‬
‫پاالیش‬‫از‬ ‫بیش‬ ً‫معموال‬10%‫تیم‬ ‫منابع‬ ‫و‬ ‫توان‬ ‫از‬
‫نمیدهد‬ ‫اختصاص‬ ‫خود‬ ‫به‬ ‫را‬ ‫توسعه‬.
INVEST
• Independent
• Negotiable
• Valuable
• Estimable
• Small
• Testable
‫اسکرام‬ ‫های‬ ‫چالش‬
•‫مشتری‬ ‫همکاری‬–‫اسکرام‬ ‫فرض‬ ‫پیش‬:‫همه‬ ‫در‬ ‫و‬ ‫است‬ ‫توسعه‬ ‫تیم‬ ‫از‬ ‫عضوی‬ ‫مشتری‬
‫کند‬ ‫می‬ ‫کمک‬ ‫تیم‬ ‫به‬ ‫کار‬ ‫مراحل‬
•‫چابکی‬ ‫فرهنگ‬ ‫نداشتن‬‫تیم‬ ‫و‬ ‫شرکت‬ ‫در‬
•‫جابکی‬ ‫راستای‬ ‫در‬ ‫فنی‬ ‫های‬ ‫تکنیک‬ ‫از‬ ‫استفاده‬
•‫ضعیف‬ ‫سازی‬ ‫مستند‬
•‫چابکی‬ ‫برای‬ ‫فنی‬ ‫ابزارهای‬ ‫از‬ ‫استفاده‬
”
“
‫یاد‬ ‫کارتان‬ ‫از‬
‫بگیرید‬
‫بتونید‬ ‫بهتر‬ ‫تا‬
‫اجرا‬‫کنید‬
”
“
،‫نیست‬ ‫کافی‬ ‫اسکرام‬
‫باشید‬ ‫چابک‬!
”
“
‫اسکرام‬‫مسائل‬ ‫حوزه‬ ‫در‬
‫گوید‬ ‫نمی‬ ‫سخنی‬ ‫فنی‬
‫و‬ ‫اسکرام‬XP
•‫جفتی‬ ‫نویسی‬ ‫برنامه‬
•‫سازی‬ ‫یکپارچه‬‫مداوم‬
•‫محور‬ ‫تست‬ ‫توسعه‬
•‫کد‬ ‫جمعی‬ ‫مالکیت‬
‫جفتی‬ ‫نویسی‬ ‫برنامه‬
‫ه‬‫ر‬‫از‬ ‫باید‬ ‫میاد‬ ‫بیرون‬ ‫نفر‬ ‫یک‬ ‫ذهن‬ ‫از‬ ‫که‬ ‫فکری‬
‫شود‬ ‫منتقل‬ ‫کامپیوتر‬ ‫به‬ ‫دیگری‬ ‫فردی‬ ‫طریق‬
‫خوان‬ ‫نقشه‬ ً‫اصطالحا‬ ‫نفر‬ ‫یک‬ ‫روش‬ ‫این‬ ‫در‬(navigator)‫به‬ ‫و‬ ‫میشود‬
‫راننده‬(driver)‫کند‬ ‫چکار‬ ‫که‬ ‫میگوید‬ ،‫نشسته‬ ‫کامپیوتر‬ ‫پشت‬ ‫که‬.
‫مشخص‬ ‫زمانی‬ ‫مدت‬ ‫تا‬ ‫کار‬ ‫این‬(‫حدود‬15‫دقیقه‬)‫دارد‬ ‫ادامه‬
‫شود‬ ‫عوض‬ ‫جاها‬ ‫اینکه‬ ‫تا‬.‫مقدار‬ ‫یک‬ ‫به‬ ‫نفر‬ ‫دو‬ ‫هر‬ ‫اینکار‬ ‫با‬
‫آموختن‬ ‫فرصت‬ ‫تجربه‬ ‫کم‬ ‫فرد‬ ،‫میشوند‬ ‫شریک‬ ‫نویسی‬ ‫برنامه‬ ‫در‬
‫دارد‬ ‫فرصتی‬ ‫نیز‬ ‫تجربه‬ ‫با‬ ‫فرد‬ ‫و‬ ‫میکند‬ ‫پیدا‬ ‫عملی‬ ‫صورت‬ ‫به‬
‫نگاه‬ ‫متفاوت‬ ‫دید‬ ‫با‬ ‫را‬ ‫کار‬ ‫تا‬‫کند‬.
‫مداوم‬ ‫سازی‬ ‫یکپارچه‬
‫سرور‬build‫نقطه‬ ‫یا‬ ‫داور‬ ‫عنوان‬ ‫به‬ ‫خودکار‬
‫می‬ ‫عمل‬ ‫مرجع‬‫و‬ ‫کند‬‫می‬ ‫تشخیص‬ ‫را‬ ‫کد‬ ‫سالمت‬-
‫دهد‬.
‫ایجاد‬ ‫کدی‬ ‫در‬ ‫تغییری‬ ‫که‬ ‫بار‬ ‫هر‬‫شود‬‫سرور‬
build‫خودکار‬‫می‬ ‫بیدار‬‫از‬ ‫را‬ ‫چیز‬ ‫همه‬ ‫و‬ ‫شود‬
‫ابتدا‬build‫می‬‫کند‬‫تست‬ ‫همه‬ ‫سپس‬ ‫و‬‫را‬ ‫ها‬
‫می‬ ‫انجام‬‫دهد‬.‫اگر‬‫کل‬ ‫به‬ ،‫گردد‬ ‫ظاهر‬ ‫خطایی‬
‫می‬ ‫داده‬ ‫اطالع‬ ‫ایمیل‬ ‫طریق‬ ‫از‬ ‫تیم‬‫شود‬.
‫دالیل‬ ‫و‬ ‫خطا‬ ‫کامل‬ ‫مشخصات‬ ‫شامل‬ ‫ایمیل‬ ‫محتوای‬
‫محور‬ ‫تست‬ ‫توسعه‬
• Red
•‫مشتری‬ ‫داستان‬ ‫های‬ ‫خواسته‬ ‫اساس‬ ‫بر‬ ‫ها‬ ‫تست‬ ‫نوشتن‬
• Green
•‫ها‬ ‫تست‬ ‫شدن‬ ‫پاس‬ ‫برای‬ ‫کد‬ ‫حداقل‬ ‫نوشتن‬
• Refactor
•‫کدها‬ ‫اصالح‬ ‫و‬ ‫بازبینی‬
‫نظر‬ ‫یک‬
‫متد‬ ‫دو‬ ‫هر‬ ‫از‬ ‫مهمتر‬ ‫من‬ ‫برای‬ ‫روش‬ ‫این‬
‫و‬ ‫اسکرام‬xp‫باشد‬ ‫می‬.‫توانید‬ ‫می‬ ‫شما‬
، ‫بگیرید‬ ‫را‬ ‫من‬ ‫سگ‬ ، ‫تلویزیون‬ ، ‫خانه‬
‫انجام‬ ‫از‬ ‫را‬ ‫من‬ ‫نکنید‬ ‫سعی‬ ‫اما‬TDD
‫کنید‬ ‫منصرف‬.‫به‬ ‫شما‬ ‫اگر‬TDD‫عالقه‬
‫محول‬ ‫من‬ ‫به‬ ‫را‬ ‫محصولتان‬ ‫ساخت‬ ‫ندارید‬
‫روش‬ ‫این‬ ‫از‬ ‫دزدکی‬ ‫من‬ ‫زیرا‬ ‫نکنید‬
‫کرد‬ ‫خواهم‬ ‫استفاده‬...
‫کد‬ ‫جمعی‬ ‫مالکیت‬
feature team
component team
single-function
‫چابک‬ ‫تیم‬ ‫صحنه‬ ‫پشت‬
•‫بود‬ ‫کرده‬ ‫هزینه‬ ‫تیم‬ ‫ساخت‬ ‫برای‬ ‫که‬ ‫سازمانی‬
•‫سازمانی‬‫منجر‬ ‫تعامل‬ ‫از‬ ‫شکلی‬ ‫به‬ ‫بود‬ ‫توانسته‬ ‫که‬
‫برسد‬ ‫فرما‬ ‫کار‬ ‫با‬ ،‫شدن‬ ‫موفق‬ ‫به‬
•‫سازمانی‬‫مشتری‬ ‫موفقیت‬ ‫در‬ ‫را‬ ‫خودش‬ ‫پیروزی‬ ‫که‬
‫بود‬ ‫کرده‬ ‫تعریف‬
•‫سازمانی‬‫و‬ ‫کمتر‬ ‫چیزی‬ ‫نه‬ ،‫بود‬ ‫اتالف‬ ‫عدم‬ ‫هدفش‬ ‫که‬
‫تولید‬ ‫در‬ ‫بیشتر‬ ‫چیزی‬ ‫نه‬
•‫سازمانی‬‫کارش‬ ‫و‬ ‫کسب‬ ‫چرخه‬ ‫تمام‬ ‫به‬ ‫را‬ ‫چابکی‬ ‫که‬
‫های‬ ‫تیم‬ ‫از‬ ،‫بود‬ ‫داده‬ ‫تعمیم‬‫مشتری‬ ‫تا‬ ‫اش‬ ‫تولید‬
‫اش‬
TEAM FOUNDATION SERVICE
‫مطالب‬ ‫عنوان‬TFS
•TFS‫؟‬ ‫چیست‬
•Demo
TFS‫چیست؟‬
”
“
Demo
•‫کنترل‬ ‫سورس‬
•‫کارها‬ ‫مدیریت‬(‫انتشار‬ ‫ریزی‬ ‫برنامه‬–‫محصول‬ ‫الگ‬ ‫بک‬–‫اسپرینت‬ ‫الگ‬ ‫بک‬–‫کار‬ ‫چرخه‬
‫اسکرام‬(
•Build
•‫تست‬
•‫فیدبک‬
•‫داشبورد‬
‫منابع‬
•‫اس‬ ‫کنی‬.‫روبین‬-Essential Scrum–‫علیرضا‬ ،‫باالن‬ ‫بی‬ ‫مهرداد‬ ‫یوسف‬ ‫مهندس‬ ‫ترجمه‬
‫راد‬ ‫معصومی‬ ‫مریم‬ ،‫اسماعیلی‬
http://manifesto.softwarecraftsmanship.org/
http://scrumguides.org/
http://scrum.ir
https://www.visualstudio.com/docs/vsts-tfs-overview
‫شما‬ ‫توجه‬ ‫از‬ ‫تشکر‬ ‫با‬
‫چابک‬‫موفق‬ ‫و‬ ‫بمانید‬

Weitere ähnliche Inhalte

Ähnlich wie agil software managment by scrunm in tfs

Software Requirements Analysis - course overview
Software Requirements Analysis - course overviewSoftware Requirements Analysis - course overview
Software Requirements Analysis - course overviewsoftwareacademy
 
3- Agile Development - Ruhollah delpak
3- Agile Development - Ruhollah delpak3- Agile Development - Ruhollah delpak
3- Agile Development - Ruhollah delpakAli Moghadam
 
Agile Development | By Ruhollah Delpak
Agile Development | By Ruhollah DelpakAgile Development | By Ruhollah Delpak
Agile Development | By Ruhollah DelpakIran Agile Community
 
Devops Time - ebps8
Devops Time - ebps8Devops Time - ebps8
Devops Time - ebps8Amid Borhani
 
2- Agile BABOK - Ali Razi
2- Agile BABOK - Ali Razi2- Agile BABOK - Ali Razi
2- Agile BABOK - Ali RaziAli Moghadam
 
Scrum Challenges | By Yaghob Yavari
Scrum Challenges | By Yaghob YavariScrum Challenges | By Yaghob Yavari
Scrum Challenges | By Yaghob YavariIran Agile Community
 
معماری استایل‌های بزرگ اندازه
معماری استایل‌های بزرگ اندازهمعماری استایل‌های بزرگ اندازه
معماری استایل‌های بزرگ اندازهWeb Standards School
 
مراحل تولید نرم افزار
مراحل تولید نرم افزارمراحل تولید نرم افزار
مراحل تولید نرم افزارMeysam Hooshmand
 
oCCc_24_Cloud_Design_Patterns
oCCc_24_Cloud_Design_PatternsoCCc_24_Cloud_Design_Patterns
oCCc_24_Cloud_Design_PatternsMorteza Javan
 
Scrum based methodology for distributed software development
Scrum based methodology for distributed software developmentScrum based methodology for distributed software development
Scrum based methodology for distributed software developmentNavid Sedighpour
 
طرح چارچوب متن باز تولید نرم افزار
طرح چارچوب  متن باز تولید نرم افزار طرح چارچوب  متن باز تولید نرم افزار
طرح چارچوب متن باز تولید نرم افزار عباس بني اسدي مقدم
 
ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری
 ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری
ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاریArash Bande Khoda
 
توسعه نرم‌افزارهای مقیاس‌پذیر بر اساس معماری ریزسرویسها (Microservices) و اجر...
توسعه نرم‌افزارهای مقیاس‌پذیر بر اساس معماری ریزسرویسها (Microservices) و اجر...توسعه نرم‌افزارهای مقیاس‌پذیر بر اساس معماری ریزسرویسها (Microservices) و اجر...
توسعه نرم‌افزارهای مقیاس‌پذیر بر اساس معماری ریزسرویسها (Microservices) و اجر...Web Standards School
 
برنامه مدیریت ارتباط با مشتری مایکروسافت CRM
برنامه مدیریت ارتباط با مشتری مایکروسافت CRMبرنامه مدیریت ارتباط با مشتری مایکروسافت CRM
برنامه مدیریت ارتباط با مشتری مایکروسافت CRMJavad Pourhosaini
 
ابزارهای مدیریت معماری سازمانی
ابزارهای مدیریت معماری سازمانیابزارهای مدیریت معماری سازمانی
ابزارهای مدیریت معماری سازمانیArash Pourdamghani
 
مهاجرت به متن باز در شرکت توزیع برق مشهد
مهاجرت به متن باز در شرکت توزیع برق مشهدمهاجرت به متن باز در شرکت توزیع برق مشهد
مهاجرت به متن باز در شرکت توزیع برق مشهدعباس بني اسدي مقدم
 

Ähnlich wie agil software managment by scrunm in tfs (20)

Software Requirements Analysis - course overview
Software Requirements Analysis - course overviewSoftware Requirements Analysis - course overview
Software Requirements Analysis - course overview
 
3- Agile Development - Ruhollah delpak
3- Agile Development - Ruhollah delpak3- Agile Development - Ruhollah delpak
3- Agile Development - Ruhollah delpak
 
Agile Development | By Ruhollah Delpak
Agile Development | By Ruhollah DelpakAgile Development | By Ruhollah Delpak
Agile Development | By Ruhollah Delpak
 
Devops Time - ebps8
Devops Time - ebps8Devops Time - ebps8
Devops Time - ebps8
 
2- Agile BABOK - Ali Razi
2- Agile BABOK - Ali Razi2- Agile BABOK - Ali Razi
2- Agile BABOK - Ali Razi
 
Agile & BABOK | By Ali Razi
Agile & BABOK | By Ali RaziAgile & BABOK | By Ali Razi
Agile & BABOK | By Ali Razi
 
Scrum Challenges | By Yaghob Yavari
Scrum Challenges | By Yaghob YavariScrum Challenges | By Yaghob Yavari
Scrum Challenges | By Yaghob Yavari
 
Agile
AgileAgile
Agile
 
معماری استایل‌های بزرگ اندازه
معماری استایل‌های بزرگ اندازهمعماری استایل‌های بزرگ اندازه
معماری استایل‌های بزرگ اندازه
 
مراحل تولید نرم افزار
مراحل تولید نرم افزارمراحل تولید نرم افزار
مراحل تولید نرم افزار
 
oCCc_24_Cloud_Design_Patterns
oCCc_24_Cloud_Design_PatternsoCCc_24_Cloud_Design_Patterns
oCCc_24_Cloud_Design_Patterns
 
Scrum based methodology for distributed software development
Scrum based methodology for distributed software developmentScrum based methodology for distributed software development
Scrum based methodology for distributed software development
 
طرح چارچوب متن باز تولید نرم افزار
طرح چارچوب  متن باز تولید نرم افزار طرح چارچوب  متن باز تولید نرم افزار
طرح چارچوب متن باز تولید نرم افزار
 
Scrum doc
Scrum docScrum doc
Scrum doc
 
ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری
 ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری
ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری
 
Oracle ADF Presentation
Oracle ADF PresentationOracle ADF Presentation
Oracle ADF Presentation
 
توسعه نرم‌افزارهای مقیاس‌پذیر بر اساس معماری ریزسرویسها (Microservices) و اجر...
توسعه نرم‌افزارهای مقیاس‌پذیر بر اساس معماری ریزسرویسها (Microservices) و اجر...توسعه نرم‌افزارهای مقیاس‌پذیر بر اساس معماری ریزسرویسها (Microservices) و اجر...
توسعه نرم‌افزارهای مقیاس‌پذیر بر اساس معماری ریزسرویسها (Microservices) و اجر...
 
برنامه مدیریت ارتباط با مشتری مایکروسافت CRM
برنامه مدیریت ارتباط با مشتری مایکروسافت CRMبرنامه مدیریت ارتباط با مشتری مایکروسافت CRM
برنامه مدیریت ارتباط با مشتری مایکروسافت CRM
 
ابزارهای مدیریت معماری سازمانی
ابزارهای مدیریت معماری سازمانیابزارهای مدیریت معماری سازمانی
ابزارهای مدیریت معماری سازمانی
 
مهاجرت به متن باز در شرکت توزیع برق مشهد
مهاجرت به متن باز در شرکت توزیع برق مشهدمهاجرت به متن باز در شرکت توزیع برق مشهد
مهاجرت به متن باز در شرکت توزیع برق مشهد
 

agil software managment by scrunm in tfs

  • 1. AGILE SOFTWARE MANAGEMENT WITH SCRUM IN TFS ‫رحیمی‬ ‫رضا‬ ‫تابستان‬96 ‫زنجان‬ ‫فناوری‬ ‫و‬ ‫علم‬ ‫پارک‬
  • 6. Reza Rahimy 16 year Experience rtwo.ir jobfa.com@gmail.com @ZanjanDotNet Agile , Scrum , TDD , DevOps
  • 9. ‫چابک‬ ‫مطالب‬ ‫عنوان‬ •‫افزاری‬ ‫نرم‬ ‫های‬ ‫پروژه‬ ‫شکست‬ ‫اصلی‬ ‫دلیل‬ ‫شش‬ •‫؟‬ ‫چیست‬ ‫متدولوژی‬ •‫متدولوژی‬ ‫تاریخچه‬ •‫متدولوژی‬‫نرم‬ ‫تولید‬ ‫های‬‫افزار‬ •‫بر‬ ‫مبتنی‬ ‫های‬ ‫متدولوژی‬Agile •Agile‫؟‬ ‫چیست‬ •Agile Manifesto •‫نرم‬ ‫های‬ ‫پروژه‬ ‫مشکالت‬ ‫و‬ ‫چابکی‬‫افزاری‬
  • 10. ‫تجربه‬ •‫هایی‬ ‫ویژگی‬ ‫ساخت‬ ‫نشانگر‬ ‫ایرانی‬ ‫های‬ ‫شرکت‬ ‫تجربه‬ ‫سیستم‬ ‫پایین‬ ‫کیفیت‬ ‫و‬ ‫دیرهنگام‬ ‫تحویل‬ ،‫خواهان‬ ‫بدون‬ ‫افزاریست‬ ‫نرم‬ ‫محصوالت‬ ‫و‬ ‫ها‬. •‫یکدیگر‬ ‫به‬ ‫شبیه‬ ‫بیش‬ ‫و‬ ‫کم‬ ‫ایرانی‬ ‫های‬ ‫شرکت‬ ‫عملکرد‬ ‫می‬ ‫ادامه‬ ‫خود‬ ‫بقای‬ ‫به‬ ‫کماکان‬ ‫دلیل‬ ‫همین‬ ‫به‬ ‫و‬ ‫است‬ ‫دهند‬. •‫اند‬ ‫نشده‬ ‫رفع‬ ‫تنها‬ ‫نه‬ ، ‫سالها‬ ‫از‬ ‫پس‬ ‫ها‬ ‫شرکت‬ ‫مشکالت‬ ‫مانده‬ ‫الینحل‬ ‫تقریبا‬ ‫و‬ ‫یافته‬ ‫تشدید‬ ‫شدت‬ ‫به‬ ‫بلکه‬ ‫اند‬.
  • 11. ‫نرم‬ ‫توسعه‬ ‫در‬ ‫کارهایتان‬ ‫نتایج‬ ‫از‬ ‫آیا‬ ‫هستید؟‬ ‫راضی‬ ‫افزار‬ •‫باالست‬ ‫قبولی‬ ‫غیرقابل‬ ‫میزان‬ ‫به‬ ‫خورده‬ ‫شکست‬ ‫های‬ ‫پروژه‬ ‫درصد‬ •‫شوند‬ ‫می‬ ‫تحویل‬ ‫دیر‬ ‫محصوالت‬ •‫است‬ ‫انتظار‬ ‫از‬ ‫کمتر‬ ‫سرمایه‬ ‫بازگشت‬ ‫غالبا‬ •‫است‬ ‫پائین‬ ‫افزار‬ ‫نرم‬ ‫کیفیت‬ •‫است‬ ‫آور‬ ‫خجالت‬ ‫وری‬ ‫بهره‬ ‫میزان‬ •‫گیرد‬ ‫نمی‬ ‫عهده‬ ‫بر‬ ‫رو‬ ‫نتایج‬ ‫مسئولیت‬ ‫کس‬ ‫هیچ‬ •‫است‬ ‫پایین‬ ‫کارمندان‬ ‫انگیزه‬ •‫به‬ ‫کارمندان‬ ‫خروج‬ ‫و‬ ‫ورود‬ ‫میزان‬/‫است‬ ‫زیاد‬ ‫بسیار‬ ‫شرکت‬ ‫از‬ •‫است‬ ‫شده‬ ‫شرکت‬ ‫عادی‬ ‫روال‬ ، ‫ریزی‬ ‫برنامه‬ ‫تغییر‬ ‫بود‬ ‫بهتر‬ ‫وضعمان‬ ، ‫داشتیم‬ ‫بقالی‬ ‫اگر‬!
  • 12. ‫نرم‬ ‫های‬ ‫پروژه‬ ‫شکست‬ ‫اصلی‬ ‫دلیل‬ ‫شش‬ ‫افزاری‬ 1-‫نشدن‬ ‫درگیر‬‫مشتری‬ 2-‫نیازمندها‬ ‫درست‬ ‫درک‬ ‫عدم‬ 3-‫واقعی‬ ‫غیر‬ ‫بندی‬ ‫زمان‬ 4-‫تغییرات‬ ‫مدیریت‬ ‫و‬ ‫پذیریش‬ ‫عدم‬ 5-‫افزار‬ ‫نرم‬ ‫تست‬ ‫کمبود‬ 6-‫دار‬ ‫باد‬ ‫و‬ ‫منعطف‬ ‫غیر‬ ‫فرآیندهای‬
  • 13.
  • 14. Methodology‫؟‬ ‫چیست‬ A methodology is a formalized process or set of practices for creating software • A set of rules you have to follow • A set of conventions the organization decides to follow • A systematical, engineering approach for organizing software projects
  • 15. ‫تاریخچ‬‫ۀ‬‫متدولوژی‬ ‫دوران‬‫پیش‬‫متدولوژی‬(‫دهه‬‫های‬60‫و‬70) •‫روشهای‬‫موردی‬(Ad hoc)‫برای‬‫توسع‬‫ۀ‬‫نرم‬‫افزار‬(Cowboy coders) •‫بحران‬‫نرم‬‫افزار‬(1969)(Software Crisis) ‫دوران‬‫متدولوژیهای‬‫اولیه‬(‫دهه‬‫های‬70‫و‬80) •‫تأکید‬‫روی‬‫مراحل‬‫توسع‬‫ۀ‬‫نرم‬‫افزار‬ •‫مدل‬‫آبشاری‬(Waterfall Model) ‫دوران‬‫متدولوژیها‬(‫دهه‬‫های‬80‫و‬90) •‫ارائ‬‫ۀ‬‫تعریف‬‫برای‬‫متدولوژی‬ •‫معرفی‬‫چون‬‫متدولوژیهایی‬‫چون‬Structured,Prototyping,OO ‫دوران‬‫پسا‬‫متدولوژی‬(‫اواخر‬‫ده‬‫ۀ‬90) •‫دیدگاه‬‫اول‬:‫بازگشت‬‫به‬‫روشهای‬‫موردی‬‫یا‬‫سعی‬‫و‬‫خطا‬ •‫دیدگاه‬‫دوم‬:‫جستجوی‬‫روشهای‬‫دیگر‬،‫مثل‬‫متدولوژیهای‬‫چابک‬،‫بهبود‬‫روشهای‬‫شیء‬‫گراء‬ ‫یا‬‫انتخاب‬‫یک‬‫متدولوژی‬‫خاص‬‫هر‬‫پروژه‬!
  • 16. ‫انواع‬‫متدولوژی‬‫نرم‬ ‫تولید‬ ‫های‬‫افزار‬ ‫وزن‬ ‫منظر‬ ‫از‬ ‫وزن‬ ‫سنگین‬ ‫متدولوژیهای‬ ‫چابک‬ ‫های‬ ‫متدلوژی‬ ‫ها‬ ‫نسل‬ ‫منظر‬ ‫از‬ ‫اول‬ ‫نسل‬(‫بر‬ ‫مبتني‬ ‫هاي‬ ‫متدولوژي‬ ‫چرخ‬‫ۀ‬‫عمر‬) ‫دوم‬ ‫نسل‬(‫یافته‬ ‫ساخت‬ ‫هاي‬ ‫متدولوژي‬) ‫سوم‬ ‫نسل‬(‫نمایه‬ ‫هاي‬ ‫متدولوژي‬ ‫ساز‬prototyping) ‫چهارم‬ ‫نسل‬(‫تكنیكي‬ ‫متدولوژي‬/‫اجتماعي‬ ‫مشاركتي‬) ‫پنجم‬ ‫نسل‬(‫مساله‬ ‫حل‬ ‫هاي‬ ‫متدولوژي‬)
  • 17. ‫بر‬ ‫مبتنی‬ ‫های‬ ‫متدولوژی‬Agile • eXtreme Programming (XP) • Pair Programming • Test Driven Development • Continuous Integration • Refactoring, Coding Standards, etc… • Scrum • Crystal family of methodologies • Feature-Driven Development (FDD) • Adaptive Software Development (ASD) • Dynamic System Development Model (DSDM) • Agile Unified Process (AUP)
  • 19. Agile‫؟‬ ‫چیست‬ ‫سال‬ ‫در‬1995Preiss,Nagel,Golman‫کتاب‬ ‫نویسندگان‬Agile Competitors and Virtual Organizations‫پیشنهاد‬ ‫چابکی‬ ‫برای‬ ‫را‬ ‫زیر‬ ‫تعریف‬ ‫کردند‬: ‫بی‬ ‫پذیریش‬ ، ‫شرایط‬ ‫به‬ ‫توجه‬ ، ‫پویایی‬ ‫از‬ ‫عبارتست‬ ‫چابکی‬ ‫گرایی‬ ‫ترقی‬ ‫و‬ ‫تغییرات‬ ‫باکانه‬. ‫است‬ ‫پیروزی‬ ‫و‬ ‫موفقیت‬ ‫درباره‬ ‫چابکی‬:‫درباره‬ ‫در‬ ‫پیروزی‬ ‫و‬ ‫نوظهور‬ ‫رقابتی‬ ‫های‬ ‫عرصه‬ ‫در‬ ‫موفقیت‬ ‫طوفانهای‬ ‫اوج‬ ‫در‬ ‫مشتریان‬ ‫و‬ ‫بازار‬ ‫سهم‬ ، ‫سود‬ ‫کسب‬ ‫است‬ ‫رقابتی‬ ‫بازارهای‬....
  • 20. Agile‫افزار‬ ‫نرم‬ ‫صنعت‬ ‫در‬ •Agile‫از‬ ‫ای‬ ‫مجموعه‬‫ارزش‬ ‫و‬ ‫اصول‬‫ها‬‫می‬ ‫که‬ ‫باشد‬‫توسعه‬ ‫محیط‬ ‫در‬ ‫آنها‬ ‫بستن‬ ‫کار‬ ‫به‬ ‫با‬‫نرم‬ ‫محصوالت‬ ‫مانند‬ ‫نتایجی‬ ‫به‬ ‫توان‬ ‫می‬ ‫افزاری‬‫کارآمد‬ ‫محصوالت‬ ‫با‬ ‫کار‬ ‫نیروی‬ ، ‫خوشحال‬ ‫مشتری‬ ، ‫انگیزه‬‫دست‬‫یافت‬. •‫ارزش‬‫اصول‬ ‫و‬ ‫ها‬Agile‫در‬‫سال‬2001‫توسط‬17‫نفر‬ ‫طی‬ ‫افزار‬ ‫نرم‬ ‫توسعه‬ ‫صنعت‬ ‫جهانی‬ ‫معتبر‬ ‫اساتید‬ ‫از‬ ‫عنوان‬ ‫با‬ ‫بیانیه‬ ‫یک‬‫چابک‬ ‫توسعه‬ ‫بیانیه‬‫و‬ ‫تنظیم‬ ‫گردید‬ ‫ارائه‬.
  • 21. AGILE MANIFESTO ‫افراد‬‫تعامالت‬ ‫و‬‫از‬ ‫باالتر‬ ‫ابزارها‬ ‫و‬ ‫فرآیندها‬ ‫نرم‬‫کارکننده‬ ‫افزار‬‫از‬ ‫باالتر‬ ‫مستندات‬‫جامع‬ ‫مشارکت‬‫کار‬ ‫انجام‬ ‫در‬ ‫مشتری‬‫باالتر‬ ‫قرارداد‬ ‫از‬‫کار‬ ‫پاسخگویی‬‫تغییرات‬ ‫به‬‫از‬ ‫باالتر‬ ‫طرح‬ ‫یک‬ ‫پیروی‬ ‫وجود‬ ‫با‬‫نیز‬ ‫چپ‬ ‫سمت‬ ‫موارد‬ ‫اینکه‬ ‫ولی‬ ‫هستند‬ ‫ارزشمند‬ ‫ارزش‬ ‫راست‬ ‫سمت‬ ‫موارد‬ ‫برای‬ ‫ما‬ ‫هستیم‬ ‫قائل‬ ‫بیشتری‬
  • 23. ‫نرم‬ ‫های‬ ‫پروژه‬ ‫شکست‬ ‫اصلی‬ ‫دلیل‬ ‫شش‬ ‫افزاری‬ 1-‫نشدن‬ ‫درگیر‬‫مشتری‬ 2-‫نیازمندها‬ ‫درست‬ ‫درک‬ ‫عدم‬ 3-‫واقعی‬ ‫غیر‬ ‫بندی‬ ‫زمان‬ 4-‫تغییرات‬ ‫مدیریت‬ ‫و‬ ‫پذیریش‬ ‫عدم‬ 5-‫افزار‬ ‫نرم‬ ‫تست‬ ‫کمبود‬ 6-‫دار‬ ‫باد‬ ‫و‬ ‫منعطف‬ ‫غیر‬ ‫فرآیندهای‬
  • 24. ‫افزاری‬ ‫نرم‬ ‫های‬ ‫پروژه‬ ‫مشکالت‬ ‫و‬ ‫چابکی‬ •‫است‬ ‫پادشاه‬ ‫مشتری‬! •‫ویژگی‬ ‫صورت‬ ‫به‬ ‫باید‬ ‫شده‬ ‫کسب‬ ‫نیازمندیهای‬‫هایی‬ ‫قابل‬ ‫مشخصی‬ ‫معیارهای‬ ‫اساس‬ ‫بر‬ ‫که‬ ‫شوند‬ ‫تعریف‬ ‫باشند‬ ‫پذیرش‬. •‫سفارش‬ ‫و‬ ‫توسعه‬ ‫تیم‬ ‫بین‬ ‫مذاکره‬ ‫با‬ ‫زمانبندی‬ ‫تنظیم‬ ‫دهنده‬‫می‬‫شود‬ •‫هیچ‬‫تاریخ‬ ‫مگر‬ ،‫است‬ ‫نشده‬ ‫حک‬ ‫سنگ‬ ‫روی‬ ‫چیزی‬‫تحویل‬ •‫تست‬‫ها‬‫می‬ ‫نوشته‬ ‫کد‬ ‫از‬ ‫قبل‬‫خودکار‬ ‫کامال‬ ‫و‬ ‫شوند‬ ‫هستند‬
  • 25. ‫افزاری‬ ‫نرم‬ ‫های‬ ‫پروژه‬ ‫مشکالت‬ ‫و‬ ‫چابکی‬ •‫نیست‬ ‫جداگانه‬ ‫فعالیت‬ ‫یک‬ ‫پروژه‬ ‫مدیریت‬ •‫توسعه‬ ‫گیری‬ ‫کار‬ ‫به‬‫چابک‬
  • 27. ‫اسکرام‬ ‫مطالب‬ ‫عنوان‬ •‫نقش‬‫های‬‫اسکرام‬ •‫اسکرام‬ ‫های‬ ‫آرتیفکت‬ •‫اسکرام‬ ‫رویدادهای‬ •‫های‬ ‫چالش‬‫اسکرام‬ •‫آبکی‬ ‫اسکرام‬ •‫و‬ ‫اسکرام‬XP •‫چابک‬ ‫تیم‬ ‫صحنه‬ ‫پشت‬ •‫وین‬ ‫کانه‬ ‫چهارچوب‬ •‫چابک‬ ‫متدهای‬ ‫و‬ ‫ساده‬ ‫حوزه‬ •‫متدهای‬ ‫و‬ ‫دشوارفهم‬ ‫حوزه‬ ‫چابک‬ •‫متدهای‬ ‫و‬ ‫پیچیده‬ ‫حوزه‬ ‫چابک‬ •‫متدهای‬ ‫و‬ ‫نظم‬ ‫بی‬ ‫حوزه‬ ‫چابک‬ •‫اسکرام‬‫چیست‬‫؟‬ •‫گرا‬ ‫وقفه‬ ‫کار‬ •‫متدهای‬ ‫و‬ ‫وین‬ ‫کانه‬ ‫چارچوب‬ ‫چابک‬
  • 28.
  • 29. Scrum‫چیست؟‬ ‫اسکرام‬‫که‬ ‫است‬ ‫چابک‬ ‫توسعه‬ ‫برای‬ ‫ورکی‬ ‫فریم‬ ‫نقش‬ ،‫فرآیندها‬ ‫تعریف‬ ‫با‬‫آرتیفکت‬ ‫و‬ ‫ها‬‫های‬ ‫تیم‬ ‫به‬ ‫مشخص‬‫می‬ ‫کمک‬ ‫افزاری‬ ‫نرم‬ ‫های‬‫تا‬ ‫کند‬ ‫شوند‬ ‫چابک‬.‫صورت‬ ‫به‬ ‫افزار‬ ‫نرم‬ ،‫اسکرام‬ ‫در‬ ‫می‬ ‫پیدا‬ ‫توسعه‬ ‫مرحله‬ ‫به‬ ‫مرحله‬‫کند‬. •‫سبک‬‫است‬ ‫وزن‬. •‫است‬ ‫ساده‬ ‫آن‬ ‫یادگیری‬. •‫است‬ ‫دشوار‬ ‫آن‬ ‫بر‬ ‫تسلط‬.
  • 31. ” “ ‫حوز‬ ‫ی‬ ‫همه‬ ‫برای‬ ‫چابک‬ ‫متدهای‬‫های‬ ‫ه‬‫کاری‬ ‫نیست‬ ‫مناسب‬
  • 32. ‫اسکرام‬:‫ارزش‬ ‫بر‬ ‫مبتنی‬ ‫توسعه‬ Constraints Variable Plan Driven Value Driven Features Cost Schedule FeaturesCost Schedule Traditional Scrum
  • 34. ‫محصول‬ ‫مالک‬ •‫مشتریها‬ ‫یا‬ ‫مشتری‬ ‫نماینده‬ •‫های‬ ‫ویژگی‬ ‫تعیین‬‫محصول‬ •‫مدیریت‬ ‫خصوص‬ ‫در‬ ‫مسئول‬ ‫فرد‬ ‫تنها‬‫محصول‬ ‫الگ‬ ‫بک‬(‫محصول‬ ‫الگ‬ ‫بک‬ ‫ایجاد‬+‫اولویت‬ ‫مداوم‬ ‫بطور‬ ‫ها‬ ‫داستان‬ ‫تغییر‬ ‫و‬ ‫بندی‬) •‫ها‬ ‫ایده‬ ‫آوری‬ ‫جمع‬ •‫پیشرفت‬ ‫پیگیری‬ •‫نشر‬ ‫زمان‬ ‫درباره‬ ‫گیری‬ ‫تصمیم‬ •‫محصول‬ ‫آوری‬ ‫سود‬ ‫مسئول‬ •‫کار‬ ‫نتایج‬ ‫رد‬ ‫یا‬ ‫پذیرش‬ •‫سرمایه‬ ‫بازگشت‬ ‫سازی‬ ‫حداکثر‬ ‫مسئول‬
  • 35. ‫اسکرام‬ ‫گر‬ ‫تسهیل‬(‫اسکرام‬ ‫مربی‬) •‫مستر‬ ‫اسکرام‬‫آن‬ ‫شدن‬ ‫عملیاتی‬ ‫و‬ ‫اسکرام‬ ‫درک‬ ‫از‬ ‫اطمینان‬ ‫حصول‬ ‫مسئول‬‫است‬ •‫مستر‬ ‫اسکرام‬‫رهبر‬ ‫یک‬‫برای‬ ‫خدمتگزار‬‫میرود‬ ‫شمار‬ ‫به‬ ‫اسکرام‬ ‫تیم‬ •‫خدمات‬‫مستر‬ ‫اسکرام‬‫مالک‬ ‫برای‬‫محصول‬ •‫خدمات‬‫مستر‬ ‫اسکرام‬‫تیم‬ ‫برای‬‫توسعه‬ •‫خدمات‬‫مستر‬ ‫اسکرام‬‫سازمان‬ ‫برای‬
  • 36. ‫توسعه‬ ‫تیم‬ •‫سازمانده‬ ‫خود‬ ‫اسکرام‬ ‫تیمهای‬‫و‬‫فراوظیفه‬‫ای‬‫هستند‬. •‫تیمهای‬‫بجای‬ ‫میکنند‬ ‫انتخاب‬ ‫را‬ ‫کار‬ ‫انجام‬ ‫روش‬ ‫بهترین‬ ‫خودشان‬ ‫خودسازمانده‬ ‫شوند‬ ‫مدیریت‬ ‫تیم‬ ‫خارج‬ ‫از‬ ‫دیگری‬ ‫کس‬ ‫توسط‬ ‫اینکه‬. •‫تیمهای‬‫وابستگی‬ ‫بدون‬ ‫را‬ ‫کارها‬ ‫تکمیل‬ ‫جهت‬ ‫الزم‬ ‫توانمندیهای‬ ‫تمام‬ ‫فراوظیفه‬ ‫هستند‬ ‫دارا‬ ‫تیم‬ ‫از‬ ‫خارج‬ ‫اجزای‬ ‫به‬. ‫برای‬‫جز‬ ‫به‬ ‫عنوانی‬ ‫تیم‬ ‫اعضای‬ ‫همه‬ «‫دهنده‬ ‫توسعه‬» ‫وجود‬‫ندارد‬
  • 37. ‫اسکرام‬ ‫های‬ ‫آرتیفکت‬ •‫الگ‬ ‫بک‬‫محصول‬ •‫الگ‬ ‫بک‬‫اسپرینت‬ •Burndown Chart
  • 38. ‫محصول‬ ‫الگ‬ ‫بک‬ ‫الگ‬ ‫بک‬‫لیست‬ ‫یک‬ ‫محصول‬‫بندی‬ ‫رتبه‬‫است‬ ‫نیاز‬ ‫که‬ ‫است‬ ‫چیزی‬ ‫آن‬ ‫هر‬ ‫از‬ ‫شده‬ ‫جهت‬ ‫نیازمندیها‬ ‫منبع‬ ‫تنها‬ ‫و‬ ‫شود‬ ‫گنجانده‬ ‫محصول‬ ‫در‬‫تغییری‬ ‫هر‬‫در‬ ‫است‬ ‫محصول‬. ‫از‬ ‫قلم‬ ‫هر‬‫الگ‬ ‫بک‬‫و‬ ‫برآورد‬ ،‫رتبه‬ ،‫شرح‬ ‫مانند‬ ‫ویژگیهایی‬ ‫دارای‬ ‫محصول‬ ‫است‬ ‫آن‬ ‫ارزش‬. ‫شوند‬ ‫می‬ ‫پاالیش‬ ‫الگ‬ ‫بک‬ ‫های‬ ‫آیتم‬ ‫سازی‬ ‫آشکار‬ ‫جلسات‬ ‫در‬ ‫یک‬‫الگ‬ ‫بک‬‫نیست‬ ‫کامل‬ ‫هیچوقت‬ ‫محصول‬.
  • 39. As a <user role>, I can <functionality> so that <value>
  • 40. DOD ‫هنگامیکه‬‫الگ‬ ‫بک‬ ‫قلم‬ ‫یک‬‫یک‬ ‫یا‬ ‫محصول‬‫فرآورده‬«‫شده‬ ‫تکمیل‬»‫همه‬ ،‫میشود‬ ‫توصیف‬ ‫منظور‬ ‫که‬ ‫بدانند‬ ‫باید‬‫از‬«‫شده‬ ‫تکمیل‬»‫چیست‬
  • 41. ‫اسپرینت‬ ‫الگ‬ ‫بک‬ ‫الگ‬ ‫بک‬‫اقالم‬ ‫از‬ ‫مجموعهای‬ ‫اسپرینت‬‫شده‬ ‫انتخاب‬‫از‬‫الگ‬ ‫بک‬‫به‬ ‫اسپرینت‬ ‫برای‬ ‫محصول‬ ‫همراه‬‫هایی‬ ‫برنامه‬‫اسپرینت‬ ‫هدف‬ ‫تحقق‬ ‫برای‬‫ارائه‬ ‫و‬‫است‬ ‫فرآورده‬
  • 42. BURNDOWN CHART ‫هدف‬ ‫یک‬ ‫به‬ ‫نسبت‬ ‫پیشرفت‬ ‫پایش‬
  • 43. ‫اسکرام‬ ‫رویدادهای‬ •‫محصول‬ ‫سبد‬ ‫ریزی‬ ‫برنامه‬ •‫محصول‬ ‫ریزی‬ ‫برنامه‬ •‫انتشار‬ ‫ریزی‬ ‫برنامه‬ •‫اسپرینت‬ •‫اسپرینت‬ ‫ریزی‬ ‫برنامه‬ •‫روزانه‬ ‫ریزی‬ ‫برنامه‬ •‫اسپرینت‬ ‫بازبینی‬ •‫بازاندیشی‬‫اسپرینت‬ •‫آشکار‬ ‫جلسات‬‫سازی‬
  • 44. ‫محصول‬ ‫سبد‬ ‫ریزی‬ ‫برنامه‬ •‫ریزی‬ ‫برنامه‬ ‫افق‬:‫بیشتر‬ ‫یا‬ ‫سال‬ ‫یک‬ •‫گنندگان‬ ‫شرکت‬:‫محصول‬ ‫مالکان‬ ‫و‬ ‫ذینعفان‬ •‫تمرکز‬ ‫نقطه‬:‫محصول‬ ‫سبد‬ ‫مدیریت‬ •‫ها‬ ‫دادنی‬ ‫تحویل‬:‫جاری‬ ‫محصوالت‬ ‫و‬ ‫محصول‬ ‫سبد‬ ‫الگ‬ ‫بک‬
  • 45. ‫محصول‬ ‫ریزی‬ ‫برنامه‬ •‫ریزی‬ ‫برنامه‬ ‫افق‬:‫ماه‬ ‫چندین‬ •‫گنندگان‬ ‫شرکت‬:‫محصول‬ ‫مالکان‬ ‫و‬ ‫ذینعفان‬ •‫تمرکز‬ ‫نقطه‬:‫محصول‬ ‫تکامل‬ ‫مسیر‬ ‫و‬ ‫انداز‬ ‫چشم‬ •‫ها‬ ‫دادنی‬ ‫تحویل‬:‫محصول‬ ‫کالن‬ ‫های‬ ‫ویژگی‬ ‫و‬ ‫راه‬ ‫نقشه‬ ،‫محصول‬ ‫انداز‬ ‫چشم‬
  • 46. ‫انتشار‬ ‫ریزی‬ ‫برنامه‬ •‫ریزی‬ ‫برنامه‬ ‫افق‬:‫ماه‬ ‫نه‬ ‫تا‬ ‫کمتر‬ ‫یا‬ ‫ماه‬ ‫سه‬ ‫بین‬ •‫گنندگان‬ ‫شرکت‬:‫ذینعفان‬‫اسکرام‬ ‫تیم‬ ‫اعضای‬ ‫همه‬ ‫و‬ •‫تمرکز‬ ‫نقطه‬:‫یک‬ ‫از‬ ‫کیفیت‬ ‫و‬ ‫مشتری‬ ‫به‬ ‫ارائه‬ ‫قابل‬ ‫های‬ ‫ارزش‬ ‫بین‬ ‫توازن‬ ‫حفظ‬ ‫دیگر‬ ‫طرف‬ ‫از‬ ‫بودجه‬ ‫و‬ ‫زمان‬ ،‫محدود‬ ‫قیدهای‬ ‫و‬ ‫طرف‬ •‫ها‬ ‫دادنی‬ ‫تحویل‬:‫انتشار‬ ‫طرح‬
  • 47. ‫اسپرینت‬ ‫است‬ ‫اسکرام‬ ‫قلب‬ ‫اسپرینت‬ ‫یک‬ ،‫کمتر‬ ‫یا‬ ‫ماه‬ ‫یک‬ ‫مدت‬ ‫به‬ ‫ثابت‬ ‫زمان‬ ‫بازه‬ ‫یک‬ ‫طی‬ ‫در‬‫تکمیل‬ ‫فرآورده‬ ‫کاربردی‬ ، ‫شده‬‫و‬‫عرضه‬ ‫قابل‬ ‫بالقوه‬‫میشود‬ ‫ساخته‬ ،‫مشتری‬ ‫به‬. ‫هر‬‫و‬ ‫طرح‬ ‫یک‬ ،‫میشود‬ ‫ساخته‬ ‫آن‬ ‫در‬ ‫ازآنچه‬ ‫تعریف‬ ‫یک‬ ‫شامل‬ ‫اسپرینت‬ ‫پذیر‬ ‫انعطاف‬ ‫برنامه‬‫بعالوه‬ ،‫بود‬ ‫خواهد‬ ‫آن‬ ‫ساختن‬ ‫چگونگی‬ ‫راهنمای‬ ‫که‬ ‫است‬ ‫نهایی‬ ‫محصول‬ ً‫نهایتا‬ ‫و‬ ‫کارها‬ ‫از‬ ‫مجموعهای‬
  • 48. ‫اسپرینت‬ ‫ریزی‬ ‫برنامه‬ •‫ریزی‬ ‫برنامه‬ ‫افق‬:‫تکرار‬ ‫هر‬ ‫در‬(‫تقویمی‬ ‫ماه‬ ‫یک‬ ‫تا‬ ‫هفته‬ ‫یک‬ ‫بین‬) •‫گنندگان‬ ‫شرکت‬:‫اسکرام‬ ‫تیم‬ ‫اعضای‬ ‫همه‬ •‫تمرکز‬ ‫نقطه‬:‫شوند‬ ‫داده‬ ‫تحویل‬ ‫جاری‬ ‫اسپرینت‬ ‫در‬ ‫باید‬ ‫که‬ ‫هایی‬ ‫ویژگی‬ •‫ها‬ ‫دادنی‬ ‫تحویل‬:‫اسپرینت‬ ‫هدف‬‫و‬‫اسپرینت‬ ‫الگ‬ ‫بک‬
  • 49. ‫روزانه‬ ‫ریزی‬ ‫برنامه‬ ‫جلسات‬ •‫ریزی‬ ‫برنامه‬ ‫افق‬:‫روز‬ ‫هر‬ •‫گنندگان‬ ‫شرکت‬:‫توسعه‬ ‫تیم‬ ‫و‬ ‫اسکرام‬ ‫استاد‬ •‫تمرکز‬ ‫نقطه‬:‫شده‬ ‫تعهد‬ ‫های‬ ‫ویژگی‬ ‫تکمیل‬ ‫روش‬ •‫ها‬ ‫دادنی‬ ‫تحویل‬:‫دهی‬ ‫سازمان‬ ‫ی‬ ‫شیوه‬ ‫بهترین‬ ‫با‬ ‫تطبیق‬ ‫و‬ ‫کار‬ ‫پیشرفت‬ ‫بررسی‬ ‫روزانه‬ ‫کارهای‬
  • 50. ‫روزانه‬ ‫ریزی‬ ‫برنامه‬ ‫جلسات‬ ‫دهد‬ ‫می‬ ‫توضیح‬ ‫تیم‬ ‫اعضای‬ ‫از‬ ‫یک‬ ‫هر‬ : •‫چه‬ ‫حاال‬ ‫تا‬ ‫قبلی‬ ‫روزانه‬ ‫اسکرام‬ ‫از‬ ‫است‬ ‫داده‬ ‫انجام‬ ‫کارهایی‬. •‫برنامه‬ ‫امروز‬ ‫برای‬ ‫را‬ ‫کارهایی‬ ‫چه‬ ‫است‬ ‫کرده‬ ‫ریزی‬. •‫رو‬ ‫روبه‬ ‫موانعی‬ ‫و‬ ‫مشکالت‬ ‫چه‬ ‫با‬
  • 51.
  • 52. ‫اسپرینت‬ ‫بازبینی‬ ‫بازبینی‬ ‫طی‬،‫اسپرینت‬‫کاری‬ ‫روی‬ ‫بر‬ ‫اسکرام‬ ‫تیم‬ ‫و‬ ‫ذینفعان‬ ‫که‬‫طی‬ ‫در‬‫اسپرینت‬‫شده‬ ‫انجام‬‫تعامل‬ ،‫است‬‫میکنند‬‫یک‬ ‫این‬ ‫از‬ ‫هدف‬ ‫و‬ ‫سنجی‬ ‫وضعیت‬ ‫جلسه‬ ‫نه‬ ،‫است‬ ‫غیررسمی‬ ‫جلسه‬‫و‬ ‫ارائه‬ ‫و‬ ‫بازخورد‬ ‫دریافت‬ ،‫آن‬ ‫در‬ ‫فرآورده‬ ‫نمایش‬‫تعامل‬ ‫برانگیختن‬ ‫است‬ «‫مواردی‬ ‫چه‬ ‫که‬ ‫میدهد‬ ‫توضیح‬ ‫همه‬ ‫به‬ ‫محصول‬ ‫مالک‬‫مواردی‬ ‫چه‬ ‫و‬ ‫شده‬ ‫تکمیل‬ ‫است‬ ‫نشده‬ ‫تکمیل‬. ‫مشکالت‬ ،‫است‬ ‫رفته‬ ‫پیش‬ ‫خوب‬ ‫اسپرینت‬ ‫طول‬ ‫در‬ ‫که‬ ‫مواردی‬ ‫خصوص‬ ‫در‬ ‫توسعه‬ ‫تیم‬‫پیش‬ ‫آمده‬‫میکند‬ ‫بحث‬ ‫آنها‬ ‫حل‬ ‫چگونه‬ ‫و‬
  • 53. ‫اسپرینت‬ ‫بازاندیشی‬ •‫به‬ ‫تا‬ ‫است‬ ‫اسکرام‬ ‫تیم‬ ‫برای‬ ‫مناسب‬ ‫مجال‬ ‫یک‬ ‫اسپرینت‬ ‫بازاندیشی‬ ‫اسپرینت‬ ‫در‬ ‫اجرا‬ ‫جهت‬ ‫بهبود‬ ‫طرح‬ ‫یک‬ ‫و‬ ‫پرداخته‬ ‫خود‬ ‫بازرسی‬‫بعدی‬ ‫آماده‬‫کند‬. •‫و‬ ‫فرآیند‬ ،‫آنها‬ ‫روابط‬ ،‫افراد‬ ‫به‬ ‫توجه‬ ‫با‬ ‫قبل‬ ‫اسپرینت‬ ،‫اینکه‬ ‫بررسی‬ ‫است‬ ‫شده‬ ‫طی‬ ‫چگونه‬ ‫ابزارها‬. •‫شناسایی‬‫و‬‫بندی‬ ‫طبقه‬‫خوب‬ ‫که‬ ‫مواردی‬ ‫و‬ ‫بالقوه‬ ‫اصالحات‬‫اند‬ ‫پیشرفته‬. •‫برای‬ ‫طرح‬ ‫یک‬ ‫ایجاد‬‫سازی‬ ‫پیاده‬‫در‬ ‫اسکرام‬ ‫تیم‬ ‫که‬ ‫شکلی‬ ‫به‬ ‫اصالحات‬ ‫کند‬ ‫عملیاتی‬ ‫را‬ ‫آنها‬ ‫کارهایش‬ ‫انجام‬ ‫مسیر‬.
  • 54. ” “ ،‫سریع‬ ‫یادگیری‬ ‫هدف‬ ‫با‬ ‫در‬ ‫و‬ ‫کنید‬ ‫ریزی‬ ‫برنامه‬ ‫تغییر‬ ‫را‬ ‫مسیر‬ ‫لزوم‬ ‫صورت‬ ‫دهید‬
  • 55. ‫سازی‬ ‫آشکار‬ ‫جلسات‬ ‫جلسه‬ ‫این‬ ‫طی‬ •‫الگ‬ ‫بک‬ ‫های‬ ‫آیتم‬ ‫به‬ ‫جزئیات‬ ‫افزودن‬ •‫برآورد‬‫و‬‫بندی‬ ‫رتبه‬‫درون‬ ‫اقالم‬‫الگ‬ ‫بک‬‫محصول‬ ‫میشود‬ ‫انجام‬. ‫فرآیندی‬ ،‫فعالیت‬ ‫این‬‫بر‬ ‫توسعه‬ ‫تیم‬ ‫و‬ ‫محصول‬ ‫مالک‬ ‫آن‬ ‫در‬ ‫که‬ ‫است‬ ‫مداوم‬ ‫اقالم‬ ‫جزئیات‬ ‫روی‬‫الگ‬ ‫بک‬‫میپردازند‬ ‫تعامل‬ ‫به‬ ‫محصول‬.‫طی‬‫الگ‬ ‫بک‬ ‫پاالیش‬ ‫میشوند‬ ‫اصالح‬ ‫و‬ ‫مرور‬ ‫اقالم‬ ،‫محصول‬.‫میگیرد‬ ‫تصمیم‬ ‫که‬ ‫است‬ ‫اسکرام‬ ‫تیم‬ ‫بپذیرد‬ ‫انجام‬ ‫چگونه‬ ‫و‬ ‫زمانی‬ ‫چه‬ ‫در‬ ‫پاالیش‬.‫فرآیند‬ ‫پاالیش‬‫از‬ ‫بیش‬ ً‫معموال‬10%‫تیم‬ ‫منابع‬ ‫و‬ ‫توان‬ ‫از‬ ‫نمیدهد‬ ‫اختصاص‬ ‫خود‬ ‫به‬ ‫را‬ ‫توسعه‬.
  • 56. INVEST • Independent • Negotiable • Valuable • Estimable • Small • Testable
  • 57. ‫اسکرام‬ ‫های‬ ‫چالش‬ •‫مشتری‬ ‫همکاری‬–‫اسکرام‬ ‫فرض‬ ‫پیش‬:‫همه‬ ‫در‬ ‫و‬ ‫است‬ ‫توسعه‬ ‫تیم‬ ‫از‬ ‫عضوی‬ ‫مشتری‬ ‫کند‬ ‫می‬ ‫کمک‬ ‫تیم‬ ‫به‬ ‫کار‬ ‫مراحل‬ •‫چابکی‬ ‫فرهنگ‬ ‫نداشتن‬‫تیم‬ ‫و‬ ‫شرکت‬ ‫در‬ •‫جابکی‬ ‫راستای‬ ‫در‬ ‫فنی‬ ‫های‬ ‫تکنیک‬ ‫از‬ ‫استفاده‬ •‫ضعیف‬ ‫سازی‬ ‫مستند‬ •‫چابکی‬ ‫برای‬ ‫فنی‬ ‫ابزارهای‬ ‫از‬ ‫استفاده‬
  • 61. ‫و‬ ‫اسکرام‬XP •‫جفتی‬ ‫نویسی‬ ‫برنامه‬ •‫سازی‬ ‫یکپارچه‬‫مداوم‬ •‫محور‬ ‫تست‬ ‫توسعه‬ •‫کد‬ ‫جمعی‬ ‫مالکیت‬
  • 62. ‫جفتی‬ ‫نویسی‬ ‫برنامه‬ ‫ه‬‫ر‬‫از‬ ‫باید‬ ‫میاد‬ ‫بیرون‬ ‫نفر‬ ‫یک‬ ‫ذهن‬ ‫از‬ ‫که‬ ‫فکری‬ ‫شود‬ ‫منتقل‬ ‫کامپیوتر‬ ‫به‬ ‫دیگری‬ ‫فردی‬ ‫طریق‬ ‫خوان‬ ‫نقشه‬ ً‫اصطالحا‬ ‫نفر‬ ‫یک‬ ‫روش‬ ‫این‬ ‫در‬(navigator)‫به‬ ‫و‬ ‫میشود‬ ‫راننده‬(driver)‫کند‬ ‫چکار‬ ‫که‬ ‫میگوید‬ ،‫نشسته‬ ‫کامپیوتر‬ ‫پشت‬ ‫که‬. ‫مشخص‬ ‫زمانی‬ ‫مدت‬ ‫تا‬ ‫کار‬ ‫این‬(‫حدود‬15‫دقیقه‬)‫دارد‬ ‫ادامه‬ ‫شود‬ ‫عوض‬ ‫جاها‬ ‫اینکه‬ ‫تا‬.‫مقدار‬ ‫یک‬ ‫به‬ ‫نفر‬ ‫دو‬ ‫هر‬ ‫اینکار‬ ‫با‬ ‫آموختن‬ ‫فرصت‬ ‫تجربه‬ ‫کم‬ ‫فرد‬ ،‫میشوند‬ ‫شریک‬ ‫نویسی‬ ‫برنامه‬ ‫در‬ ‫دارد‬ ‫فرصتی‬ ‫نیز‬ ‫تجربه‬ ‫با‬ ‫فرد‬ ‫و‬ ‫میکند‬ ‫پیدا‬ ‫عملی‬ ‫صورت‬ ‫به‬ ‫نگاه‬ ‫متفاوت‬ ‫دید‬ ‫با‬ ‫را‬ ‫کار‬ ‫تا‬‫کند‬.
  • 63.
  • 64. ‫مداوم‬ ‫سازی‬ ‫یکپارچه‬ ‫سرور‬build‫نقطه‬ ‫یا‬ ‫داور‬ ‫عنوان‬ ‫به‬ ‫خودکار‬ ‫می‬ ‫عمل‬ ‫مرجع‬‫و‬ ‫کند‬‫می‬ ‫تشخیص‬ ‫را‬ ‫کد‬ ‫سالمت‬- ‫دهد‬. ‫ایجاد‬ ‫کدی‬ ‫در‬ ‫تغییری‬ ‫که‬ ‫بار‬ ‫هر‬‫شود‬‫سرور‬ build‫خودکار‬‫می‬ ‫بیدار‬‫از‬ ‫را‬ ‫چیز‬ ‫همه‬ ‫و‬ ‫شود‬ ‫ابتدا‬build‫می‬‫کند‬‫تست‬ ‫همه‬ ‫سپس‬ ‫و‬‫را‬ ‫ها‬ ‫می‬ ‫انجام‬‫دهد‬.‫اگر‬‫کل‬ ‫به‬ ،‫گردد‬ ‫ظاهر‬ ‫خطایی‬ ‫می‬ ‫داده‬ ‫اطالع‬ ‫ایمیل‬ ‫طریق‬ ‫از‬ ‫تیم‬‫شود‬. ‫دالیل‬ ‫و‬ ‫خطا‬ ‫کامل‬ ‫مشخصات‬ ‫شامل‬ ‫ایمیل‬ ‫محتوای‬
  • 65. ‫محور‬ ‫تست‬ ‫توسعه‬ • Red •‫مشتری‬ ‫داستان‬ ‫های‬ ‫خواسته‬ ‫اساس‬ ‫بر‬ ‫ها‬ ‫تست‬ ‫نوشتن‬ • Green •‫ها‬ ‫تست‬ ‫شدن‬ ‫پاس‬ ‫برای‬ ‫کد‬ ‫حداقل‬ ‫نوشتن‬ • Refactor •‫کدها‬ ‫اصالح‬ ‫و‬ ‫بازبینی‬
  • 66. ‫نظر‬ ‫یک‬ ‫متد‬ ‫دو‬ ‫هر‬ ‫از‬ ‫مهمتر‬ ‫من‬ ‫برای‬ ‫روش‬ ‫این‬ ‫و‬ ‫اسکرام‬xp‫باشد‬ ‫می‬.‫توانید‬ ‫می‬ ‫شما‬ ، ‫بگیرید‬ ‫را‬ ‫من‬ ‫سگ‬ ، ‫تلویزیون‬ ، ‫خانه‬ ‫انجام‬ ‫از‬ ‫را‬ ‫من‬ ‫نکنید‬ ‫سعی‬ ‫اما‬TDD ‫کنید‬ ‫منصرف‬.‫به‬ ‫شما‬ ‫اگر‬TDD‫عالقه‬ ‫محول‬ ‫من‬ ‫به‬ ‫را‬ ‫محصولتان‬ ‫ساخت‬ ‫ندارید‬ ‫روش‬ ‫این‬ ‫از‬ ‫دزدکی‬ ‫من‬ ‫زیرا‬ ‫نکنید‬ ‫کرد‬ ‫خواهم‬ ‫استفاده‬...
  • 67. ‫کد‬ ‫جمعی‬ ‫مالکیت‬ feature team component team single-function
  • 68. ‫چابک‬ ‫تیم‬ ‫صحنه‬ ‫پشت‬ •‫بود‬ ‫کرده‬ ‫هزینه‬ ‫تیم‬ ‫ساخت‬ ‫برای‬ ‫که‬ ‫سازمانی‬ •‫سازمانی‬‫منجر‬ ‫تعامل‬ ‫از‬ ‫شکلی‬ ‫به‬ ‫بود‬ ‫توانسته‬ ‫که‬ ‫برسد‬ ‫فرما‬ ‫کار‬ ‫با‬ ،‫شدن‬ ‫موفق‬ ‫به‬ •‫سازمانی‬‫مشتری‬ ‫موفقیت‬ ‫در‬ ‫را‬ ‫خودش‬ ‫پیروزی‬ ‫که‬ ‫بود‬ ‫کرده‬ ‫تعریف‬ •‫سازمانی‬‫و‬ ‫کمتر‬ ‫چیزی‬ ‫نه‬ ،‫بود‬ ‫اتالف‬ ‫عدم‬ ‫هدفش‬ ‫که‬ ‫تولید‬ ‫در‬ ‫بیشتر‬ ‫چیزی‬ ‫نه‬ •‫سازمانی‬‫کارش‬ ‫و‬ ‫کسب‬ ‫چرخه‬ ‫تمام‬ ‫به‬ ‫را‬ ‫چابکی‬ ‫که‬ ‫های‬ ‫تیم‬ ‫از‬ ،‫بود‬ ‫داده‬ ‫تعمیم‬‫مشتری‬ ‫تا‬ ‫اش‬ ‫تولید‬ ‫اش‬
  • 72.
  • 73.
  • 74.
  • 75.
  • 76.
  • 77.
  • 78.
  • 79.
  • 80.
  • 81.
  • 82.
  • 83. ” “ Demo •‫کنترل‬ ‫سورس‬ •‫کارها‬ ‫مدیریت‬(‫انتشار‬ ‫ریزی‬ ‫برنامه‬–‫محصول‬ ‫الگ‬ ‫بک‬–‫اسپرینت‬ ‫الگ‬ ‫بک‬–‫کار‬ ‫چرخه‬ ‫اسکرام‬( •Build •‫تست‬ •‫فیدبک‬ •‫داشبورد‬
  • 84.
  • 85.
  • 86. ‫منابع‬ •‫اس‬ ‫کنی‬.‫روبین‬-Essential Scrum–‫علیرضا‬ ،‫باالن‬ ‫بی‬ ‫مهرداد‬ ‫یوسف‬ ‫مهندس‬ ‫ترجمه‬ ‫راد‬ ‫معصومی‬ ‫مریم‬ ،‫اسماعیلی‬ http://manifesto.softwarecraftsmanship.org/ http://scrumguides.org/ http://scrum.ir https://www.visualstudio.com/docs/vsts-tfs-overview
  • 87. ‫شما‬ ‫توجه‬ ‫از‬ ‫تشکر‬ ‫با‬ ‫چابک‬‫موفق‬ ‫و‬ ‫بمانید‬

Hinweis der Redaktion

  1. گزارشات بسیاری تایید می­کنند که بیش از 80 درصد از پروژه های نرم افزاری با شکست مواجه می­شوند؛ در سال 2005 موسسه IEEE برآورد زده است که بیش از 60 بیلیون دلار صرف پروژه های نرم افزاری شکست خورده شده است.
  2. Method روش را «شکل ویژه ای از رویۀ بخشی از یک فعالیت فکری » تعریف کرده است . پسوند «اولوژی» به معنی علم است . بنابراین تعریف متدولوژی عبارتست از : علم روشها یا بخشی از دانش که روی روشها تمرکز می کند
  3. 7/7/201707/16/96
  4. افراد مهمترین نقش را در پیروزی یک پروژه دارند یک نیروی قوی لازم نیست که برنامه نویسی عالی باشد، بلکه کافیست که یک برنامه نویسی معمولی با قابلیت همکاری مناسب با سایر اعضای تیم باشد. نرم افزار بدون مستندات، فاجعه است. تیم باید مستندات قابل فهم مشتری بسازد تا ابعاد سیستم از تجزیه تحلیل تا طراحی و پیاده سازی آن را تشریح نماید. با این حال، مستندات زیاد از مستندات کم بدتر است نرم افزار نمی­تواند مثل یک جنس سفارش داده شود. شما نمی توانید یک توصیف از نرم افزاری که می خواهید را بنویسید و آنگاه فردی آن را بسازد و در یک زمان معین با قیمت مشخص به شما تحویل دهد. بارها و بارها این شیوه با شکست مواجه شده است. توانایی پاسخ به تغییرات اغلب تعیین کننده موفقیت یا شکست یک پروژه نرم افزاری است. وقتی که طرحی را می­ریزیم باید مطمئن شویم که به اندازه کافی انعطاف پذیر است و آمادگی پذیرش تغییرات در سطح بیزنس و تکنولوژی را دارد. مسیر یک پروژه نرم افزاری نمی­تواند برای بازه زمانی طولانی برنامه ریزی شود. اولا احتمالا محیط تغییر می­کند و باعث تغییر در نیازمندی ها می­شود. ثانیا همین که سیستم شروع به کار کند مشتریان نیازمندی­های خود را تغییر می دهند
  5. اجایل توسعه تدریجی و تکاملی را پیشنهاد می کند به تدریج بسازید هر بار بیشتر کاملش کنید
  6. برگردیم به دلایل اصلی شکست پروژه های نرم افزاری
  7. مشتری پادشاه است! برای رفع مشکل عدم همکاری کاربر نهایی یا مشتری، Agile مشتری را عضوی از تیم توسعه می­کند. به عنوان عضوی از تیم، مشتری با تیم توسعه کار می­کند تا مطمئن شود که نیازمندها به درستی برآورده می­شوند. مشتری همکاری می­کند در شناسایی نیازمندی­ها، تایید می­کند نتیجه نهایی را و حرف آخر را در اینکه کدام ویژگی به نرم افزار اضافه شود، حذف شود و یا تغییر کند، را می­زند. نیازمندی ها به صورت تست­های پذیرش نوشته می­شوند برای مقابله با مشکل عدم درک درست نیازمندی­ها، Agile تاکید دارد که نیازمندیهای کسب شده باید به صورت ویژگی­هایی تعریف شوند که بر اساس معیارهای مشخصی قابل پذیرش باشند. این معیارهای پذیرش برای نوشتن تست­های پذیرش به کار می­روند. به این ترتیب قبل از اینکه کدی نوشته شود، ابتدا تست پذیرش نوشته می­شود. این بدین معنی است که هر کسی باید اول فکر کند که چه می­خواهد، قبل از اینکه از کسی بخواهد آن را انجام دهد. این راهکار فرایند کسب نیازمندی­ها را از بنیاد تغییر می­دهد و به صورت چشم گیری کیفیت برآورد و زمان بندی را بهبود می­دهد. زمانبندی با مذاکره بین تیم توسعه و سفارش دهنده تنظیم می­شود برای حل مشکل زمان بندی غیر واقعی، Agile زمان بندی را به صورت یک فرآیند مشترک بین تیم توسعه و سفارش دهنده تعریف می­کند. در شروع هر نسخه از  نرم افزار، سفارش دهنده ویژگی های مورد انتظار را به تیم توسعه می­گوید. تیم توسعه تاریخ تحویل را بر اساس ویژگی­ها برآورد می­زد و در اختیار سفارش دهنده قرار می­دهد. این تعامل تا رسیدن به یک دیدگاه مشترک ادامه می­یابد. هیچ چیزی روی سنگ حک نشده است، مگر تاریخ تحویل برای رفع مشکل ضعف در مدیریت تغییرات، Agile اصرار دارد که هر کسی باید تغییرات را بپذیرد و نسبت به آنها واقع بین باشد. یک اصل مهم Agile  می­گوید که هر چیزی می­تواند تغییر کند مگر تاریخ تحویل! به عبارت دیگر همین که محصول به سمت تولید شدن حرکت می­کند، مشتری (در تیم محصول) می­تواند بر اساس اولویت­ها و ارزش­های خود ویژگی­های محصول را کم یا زیاد کرده و یا تغییر دهد. به هر حال او باید واقع بین باشد. اگر او یک ویژگی جدید اضافه کنید، باید تاریخ تحویل را تغییر دهد. به این ترتیب همیشه تاریخ تحویل رعایت می­گردد. تست­ها قبل از کد نوشته می­شوند و کاملا خودکار هستند برای رفع مشکل کمبود تست، Agile تاکید می­کند که ابتدا باید تست­ها نوشته شوند و همواره ارزیابی گردند. هر برنامه نویس باید اول تست­ را بنویسد، سپس کد لازم برای پاس شدن آن را. همین که کد تغییر می­کند باید تست­ها دوباره اجرا شوند. در این راهکار، هر برنامه نویس مسئول تست­های خود است تا درستی برنامه از ابتدا تضمین گردد.
  8. مدیریت پروژه یک فعالیت جداگانه نیست برای رفع مشکل فرآیندهای غیر منعطف و باددار، Agile مدیریت پروژه را درون فرآیند توسعه می­گنجاند. وظایف مدیریت پروژه بین اعضای تیم توسعه تقسیم می­شود. برای مثال هر 7 نفر در تیم توسعه نرم افزار (متدولوژی اسکرام) زمان تحویل را با مذاکره تعیین می­کنند. همچنین کد برنامه به صورت خودکار اطلاعات وضعیت پروژه را تولید می­کند. به عنوان مثال  نمودار burndown ، تست­های انجام نشده، پاس شده و رد شده به صورت خودکار تولید می­شوند. به کار گیری توسعه چابک یکی از مشکلات توسعه چابک این است که شما اول باید به خوبی آن را درک کنید تا قادر به پیاده سازی درست آن باشید. این درک هم باید کلی باشد (مانند Scrum و XP) و هم جزئی (مانند TDD و جلسات روازنه). اما چگونه باید به این درک برسیم؟ کتاب­ها و مقالات انگلیسی زیادی برای یادگیری توسعه چابک و پیاده سازی آن در سازمان وجود دارند، ولی متاسفانه منابع فارسی کمی در این زمینه است.
  9. اسکرام چارچوبی برای فرآیند است که به منظور مدیریت توسعۀ محصولات پیچیده از اوایل دهه نود میلادی به کار گرفته شد اسکرام به خودی خود یک فرآیند و یا شگرد ساخت محصول نیست؛ بلکه چارچوبی است که در آن میتوانید شگردها و فرآیندهای گوناگونی را بکار ببندید. قوانین اسکرام نقشها، رویدادها و مصنوعات آن را به هم متصل کرده و در مورد تعاملات بین آنها تصمیم گیری میکند. شالوده اسکرام بر پایه نظریه کنترل فرآیند تجربی یا تجربه گرایی بنانهاده شده است. نظریه تجربه گرایی تأکید میکند که دانش از تجربه حاصل میشود و تصمیمگیری بر اساس دانسته ها است. اسکرام به منظور بهینه سازی قدرت پیش بینی و کنترل ریسک از یک روش تکرارشونده ، افزایشی استفاده میکند.
  10. Artifact : مصنوعات خروجی یک فرآیند  است. مثلا خروجی طراحی شیءگرا، نمودارهای UML است.
  11. رابطه بین انتشار های کوچک و زود به زود با بازگشت سرمایه
  12. کلا در اسکرام نگاه ما به برنامه ریزی اینه که با هدف یادگیری سریع، برنامه ریزی کنید و در صورت لزوم مسیر را تغییر دهید
  13. برای اجایل بودن اسکرام کافی نیست
  14. TFS is a lot more than just version control TFS will not solve all your problem TFS will help you trace and streamline what you need to do