در این مقاله به صورت بولت وار قوانین متدولوژی XP را مرور می کنیم. در مقالات آتی هر کدام از این بولت ها را به طور مفصل بررسی می کنیم.
برنامه ریزی | Planning
- یوزر استوریها (User Stories) نوشته میشوند.
- برای تهیه برنامه انتشار یا Release Schedule از جلسه برنامهریزی انتشار یا Release Planning استفاده میشود
- مکرراً انتشارهای کوچک اتفاق میافتد.
- پروژه با رویکرد توسعه دورهای (Iterative Development) به چندین دوره (Iteration) تقسیم میشود.
- با شروع هر دوره، جلسه برنامهریزی دورهای (Iteration Planning) خواهیم داشت.
مدیریت | Managing
- به تیم فضای کاری باز (Open Space) اختصاص دهید.
- سرعت پیشرفت کار باید به گونهای تنظیم شود که پایداری اتفاق بیافتد.
- جلسه استندآپ (Standup Meeting) به صورت روزانه برگزار میشود.
- ظرفیت پروژه اندازهگیری میشود.
- افراد دائماً باید در حال حرکت باشند.
- وقتی XP از کار میافتد آن را اصلاح کنید.
طراحی | Designing
- سادگی در سراسر پروژه رعایت میشود.
- برای سیستم یک استعاره انتخاب کنید.
- از کارتهای CRC برای جلسات طراحی استفاده کنید.
- از اسپایک (Spike Solutions) برای کاهش ریسک استفاده کنید.
- هیچ فیچر کاربردی از ابتدا اضافه نمیشود.
- ریفکتور (Refactor) باید هر وقت و هر جا که ممکن است اتفاق بیفتد.
کد نویسی | Coding
- مشتری همیشه باید در دسترس باشد.
- کد باید بر اساس استانداردهای قابل قبول نوشته شود.
- کد نویسی یونیت تست (Unit Test) اول از همه باید اتفاق بیفتد.
- تمامی کدهایی که در محیط Production گذاشته میشوند باید از طریق Pair Programming نوشته شده باشند.
- در هر زمان تنها یک جفت از کدها ادغام (Integrate) میشود.
- به صورت مرتب در حال ادغام یا Integrate کدها باشید.
- یک کامپیوتر اختصاصی را برای ادغام کردن کدها در نظر بگیرید.
- از مالکیت گروهی استفاده کنید.
تست | Testing
- تمام کدها باید یونیت تست (Unit Test) داشته باشند.
- تمام کدها قبل از آنکه منتشر شوند باید یونیت تستها (Unit Test) را پشت سر بگذارند.
- بعد از آن که باگی پیدا شود تستها ایجاد می شوند.
- تستهای پذیرش یا Acceptance Tests اغلب اجرا شده و امتیاز آن منتشر میشوند.