Extreme.Programming




XP مخفف Extreme Programming یا برنامه نویسی به روش سریع است. در اوایل دهه نود Kent Beck در این فکر بود که روشی بهتر برای طراحی نرم افزار پیدا کند که سر انجام در سال 1966 به کمک همکارش Ward Cunningham در شروع پروژه ای به نام Daimler Chrysler به مفهومی رسید که به نتیجه آن Extreme Programming شد XP. شامل مجموعه از ارزشها، اصول و روشهای مرتبط به هم است که وقتی آن ها را اجرا و رعایت کنیم، روش XP را انجام داده ایم.
مراحل تولید نرم افزار در متدولوژی

1- مقداردهی اولیه: پروژه این مرحله که معمولا توسط یک نفر از اعضاء طراح سیستم، در محل کار کاربر انجام می گیرد و شامل اهداف زیر می باشد(انجام این مرحله غالبا برای کاربر هزینه ای نخواهد داشت):

  • بدست آوردن دید کلی از پروژه
  • تعیین بهترین فناوری پیاده سازی
  • تعیین و معرفی بهترین ترم افزارها بعنوان ابزار پیاده سازی
  • تشریح متدولوژی پیاده سازی برای کاربر
  • ارائه مستندات و سوابق کاری و شرایط شرکت برای آشنایی و توجیه هر چه بیشتر کاربر جهت عقد قرارداد

2- تعیین اولویت ها: این اولین قدم در هر پروژه نرم افزاری می باشد. هنگامی که یک قرارداد امضاء گردیده است، اولویت های آن نیز بصورت کلی مشخص گردیده است. برای تعیین دقیق اولویت ها باید از بالاترین سطح شروع کرد و به سمت سطوح سطوح پایین حرکت کرد. این بدان معناست که مشخص نماییم چه قسمتهایی برای کاربر بترتیب مهم می باشد.

3- نوشتن نیازهای کاربربصورت بسیار ساده و روان( درباره اینکه سیستم چه کاری باید انجام بدهد) می باشد. با نوشتن نیازهای کاربر علاوه بر واضح شدن انتظارات کاربر می توان تخمینی از زمان پیاده سازی آنها نیز بدست آورد. اگر مشخص کردن و نوشتن نیازهای کاربر بیش از به طول بطول بیانجامد باید به مراحا حداگثر سه روزه شکسته شود. برای مثال اگر پیاده سازی سیستم مدیریت مشتریان برای کاربر مطرح باشد که نوشتن نیازهای آن به بیش از سه روز زمان احتیاج داشته باشد، باید برای مثال به دو قسمت تشریح امکانات اضافه/ویرایش/حذف مشتریان و جستجوی مشتریان تقسیم شود.

4- طرح نسخه کلی و نسخ میانی: تمام نیازهای کاربر در کنار هم طرح نسخه کلی سیستم را مشخص می نمایند. طرح نسخه میانی از تقسیم طرح کلی به تمام فعالیتهایی که در یک دوره یک تا سه هفتگی انجام می شود، ایجاد می گردند. طرح هر نسخه میانی شامل موارد زیر می باشد:

  • چه عملیات و توابعی باید انجام گیرند.
  • هزینه و زمان هر یک از این فعالیتها چقدر است.
  • هر طرح نسخه میانی بعنوان یک پیشنهاد باید به تایید کاربر برسد

5- مرور نسخ میانی: همانطور که بیان گردید طرح کلی در اصل همان نیازهای مشخص شده کاربر می باشد، اما طرح نسخ میانی به فعالیت هایی که در اولویت بوده و در یک دوره یک تا سه هفته ای قابل پیاده سازی هستند، اطلاق می گردد. بنابراین روند انجام کار بدین ترتیب استکه با توجه به اولویتمطرح شده از طرف کاربر اولین طرح نسخه میانی طراحی شده و بعد از آن این طرح باید توسط طرفین (تیم پروژه و کاربر) مرور گشته و علاوه بر تایید آن مواردی که در اولویت های بعدی قرار دارند و باید در طرح نسخه های میانی بعدی لحاظ گردد مورد موافقت قرار گیرند. بنابراین همانگونه کهملاحظه میگردد در این متدولوژی ابتدا مولف های مرکزی نرم افزار ایجاد میشود.

6- طرح نسخ جزئی: طرح نسخه جزئی یک توصیف تکنیکی از طرح نسخه میانی است که به فعالیتهای برنامه نویس یک تا سه روزه شکسته شده است. این فعالیت ها به دو بخش آزمون و پیاده سازی تقسیم می شوند. بخاطر داشته باشیدکه طرح نسخه میانی یک سری از نیازهای عملیاتی هستند که کاربر و اعضاء تیم پروژه بر روی آن بتوافق رسیده اند و در یک دوره زمانی یک تا سه هفته ای قابل پیاده سازی می باشد.

7- طرح آزمون نسخه جزئی: بر اساس متدولوژی XP طرح آزمون ها باید قبل از پیاده سازی آماده گردند. این بدان معناست که نمام پیاده سازی هایی که انجام می شوند، باید بر اساس قوانین از فبل تعریف شده باشند. این یک روش کارا جهت تشخیص و رفع سریع حطاهای احتمالی می باشد. بنابراین در این مرحله طرح آزمون برای نسخه جزئی آماده می گردد تا در مرحله پیاده سازی نسخه جزئی مورد استفاده قرار بگیرند.

8- پیاده سازی نسخه جزئی: پیاده سازی نسخه جزئی عبارت است از پیاده سازی فرم ها، توابع، اشیاء روالهای ذخیره شده که باید در یک دوره یک تا سه روزه پیاده سازی گردند. هنگامیکه یک فعالیت تایید گردد، تستهای آنها نوشته شده و پیاده سازی آنها آغاز می گردند. تمام عملیات در انتهای پیاده سازی هر نسخه جزئی مرور می گردد. همانطور که قبلا گفته شددر این روش کد نویسی با روش برنامه نویسی زوجی (Pair Programming) انجام می پذیرد.

9- آزمایش نسخه میانی: در پایان پیاده سازی نسخ جزئی (در طول یک دوره یک تا سه هفته ای) یک نسخه از نرم افزار (نسخه میانی) برای مرور و تایید کاربر آماده می گردد، ماربر با مرمر و آزمون این نسخه میانی در صورت وجود خطاها و اشکالاتن احتمالی آنها را گزارش کرده و با ارجاع آنها به مرحله قبل تا رفع کامل آنها این عمل ادامه پیدا کی کند. در صورت رضایت کاربر، این نسخه میانی جهت ایجاد نسخه نهائی مورد تائید قرار می گیرد. یکی از اصول پروژه های موفق این است که هرکجا خطا یا اشکالی بروز کمد باید قبل از پیاده سازی بیشتر بر طرف شود.

10- تایید نسخه نهایی: بعد از پیاده سازی و تایید تمام نسخ میانی، نسخه نهایی ایجاد می گردد. در پایاناین نسخه نهایی باید مورد آزمون و تایید کاربر قرار گیرد. بی شک با توجه به قابلیت انعطاف و پویایی این متدولوژی خطاها و اشکالات در هر مرحلهبطور مداوم و پیوسته بر طرف خواهند گزدید.

11- انتشار نسخه نهایی: هنگامیکه هر و (کاربر و تیم پروژه) از نسخه نهایی رضایت داشتند، آن را بصورت یک محصول نهایی ارائه خواهند نمود. در غیر اینصورت دوباره با تعیین نیازها یک نسخه جدید ایجاد شده و دوباره مرپورد آزمون قرار خواهد گرفت.

12- آموزش: بسیاری از کاربد های جدید بر اسا نظرات مدیریتی طراحی و پیاده سازی میگردند و کارربر واقعی آخرین کسی است که سیستم را آزمایش می کند، در صورتیکه در متدولوژی XP از ابتدای کار کاربران واقعی سیستم در طی تمام مراحل طراحی و چیاده سازی مشارکت فعال داشته باشند و بطور پیوسته در حال آموزش هستند.

13- پشتیبانی: یکی از نگرانی های بجای کاربران همیشه مسئله پشتیبانی می باشد. متدولوژی XPDM SSW با طرح سطوح مختلف پشتیبانی برای کاربران مختلف ایم مسئله مهم را در نظر می گیرد. بنابراین با ارائه یک طرح در زمینه روند و چگونگی چشتیابنی نیلزهای کاربران در این زمینه برطرف خواهد گردید.

14- پیاده سازی بیشتر:با توچه به اینکه نیازها (خصوصا نیازهای تجاری) بطور مداوم در حال تغییر و تحول میباشد، بنابراین احتیاج است که سیستم همواره در این حال گسترش و سازگاری با تغییرات باشد. با توجه به قابلیت انعطاف و پویایی متدولوژی XP این عمل با انجام مستمر مراحل آن بسادگی انجام پذیر خواهد بود.






Feed نظرات

 
+
| sirasad sirasad | 23 بهمن 1388
قابل ذکر می باشد که XP هم در زیر مجموعه سبک چابک قرار دارد دارد ولی به اندازه Scrum محبوبیت ندارد البته قابلیت ترکیب با اسکرام را دارد بدین صورت که برنامه نویس ها به صورت Pair programming می کنند .


برای ارسال نظر باید ابتدا وارد سایت شوید.