آشنایی با متدولوژی Agile برای تیم های توسعه دات نت

دوشنبه 21 اردیبهشت 1394

در این مقاله درباره فرایند Agile-Scrum و اینکه چگونه یک توسعه دهنده میتواند در روش Agile نقش و ارزش داشته باشد.در مورد روش Agile و Scrum صحبت خواهد شد و میتواند برای شرکت های بزرگ بسیار مفید واقع شود.

آشنایی با متدولوژی Agile برای تیم های توسعه دات نت

Agile یک دانش توسعه یافته نرم افزاری است که هر روزه بسیار محبوب میشود.این ذهن مجموعه ای از تیم های توسعه یافته نرم افزار که در سراسر جهان مشغول به کار هستند را تعریف میکند. این مقاله پیرامون تمام فرایندهای Agile-scrum میچرخد و اینکه چگونه به عنوان یک توسعه دهنده شما میتوانید کمک کنید در راه این Agile و مقدار هارا تحویل دهید. BTWوAgile به معنای توانایی حرکت سریع است.

دستورکار

1- چرخه زندگی یک توسعه دهنده

2-موانع تحویل ارزش

3-طرح رانده شده در مقابل ارزش رانده شده

-4 بیانیه Agile

Scrum End-to-End فرایند-5

-6 براورد Agile

-7 شروع روزانه

Agile-Scrum ابزار-8

چرخه زندگی یک توسعه دهنده

اولین اثر متقابلی که یک توسعه دهنده دارد با یک  BA است.آنها مسئول مستند کردن، پیگیری و توصیف مقررات کاربر هستند. اما اغلب  شکافی در فهمیدن مقررات وجود دارد و آنها میتوانند باعث ایجاد مسائلی در راههای مختلف شوند.تصویر زیر نشان میدهد چیزی که کاربر میخواهد و چیزی که اتفاق میوفتد زمانی که پیاده سازی شده است.

توقف بازی سرزنش و موانع تحویل ارزش :

در بسیاری از تیم های تنظیمات یک توسعه دهنده برای مسئول بودن برای هر چیزی درنظر گرفته میشود، حق فهمیدن مقررات مخصوص کد برای پشتیبانی از امتحان کردن، کمک به گسترش و در نتیجه حل مسائل تولید. در نتیجه، من اغلب موارد معتقدم که نرم افزار توسعه بی عیب حاصل یک تیم  کوشا است ولی در پایان در بیشتر موارد توسعه دهندگان سرزنش بسیاری را تحمل میکندد.

Agile یک بخش ثابت برای این طرز فکر دارد و فعال میکند تیم بی نقصی را برای قسمت کردن مسئولیت، موفقیت یکدیگر و عدم موفقیت یکدیگر.

موانع تیم= ارزش تحویل موانع

همه تیم های توسعه دهنده دات نت میخواهند ارزش را ارائه دهند ولی در واقعیت چیزهایی هستند که مانع یک تیم برای رساندن ارزش میشوند.

هر تیمی یک وابستگی داخلی دارد و بر روی افرادی که بیرون هستند، شکاف ارتباط و کمبود فهمیدن اینکه اهداف مشترک ،

ریشه موانع تحویل ارزش است.

تاثیر موانع تیم

بی شک ، بسیاری از مسائلی که هر تیم نرم افزاری میتواند اجرا کند خروجی هایی دارد :

افزایش چرخه زمان :این به این معنی است که شما باید بیشتر کار کنید تا کاری کامل تحویل بگیرید.

افزایش هزینه ها :زمان زیاد به معنی پول زیاد است.

کاربران و سهامداران ناراضی :

کاربر نهایی نقطه عطف  ویژگی در دسترس بودن را از دست داده است و این یک نگرانی برای سهامداران است.

فرصتهای ارزش گم شده : شما به طور بالقوه کار زیادی از طرف همان مشتری نخواهید داشت.

بیانیه Agile

Agile-Scrum  یک علم گسترده پذیرفته شده از Agile توسعه یافته است. واژه Scrum گرفته شده از ورزش راگبی که تمام افراد تیم کار میکنند تا با موقعیت توپ را دریافت کنند.

طرح رانده شده در مقابل ارزش رانده شده

 

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

ارزش رانده شده (رویکر Agile) یک راه جدید برای ساختن نرم افزار است ، که تیم ها، سهامداران و کاربران را خیلی خوب  هدایت کرده و به تیم آنها کمک میکند تا سریع به بازتاب دست یابند و سریعا شکست بخورند.

بیانیه برای توسعه Agile :

دانستن نوع حجم کارهای عقب افتاده :

در Agile-Scrum شرح 2 نوع از حجم کارهای عقب افتاده وجود دارد:

1-جمع شدن محصولات

2-جمع شدن با حداکثر سرعت دویدن

جمع شدن محصولات یک لیست بزرگتر از اقلام کار است این مثل یک سند مشخصات عملکرد یا سند مشخصات مورد نیاز سیستم یا سند مشخصات مورد نیاز کسب و کار  و یا هرسازمانی که شما دوست دارید بنامید.

با حداکثر سرعت دویدن یک زمانی را تعریف میکند که تیم ها برای ارائه موارد خاص از کارهای عقب افتاده کار میکنند.

اما قبل از شروع به کار تیم روی آن موارد آنها نیازمند این است که به درستی تعریف شده باشند.

Scrum End-to-End فرایند

مراحل Agile Scrum :

یک تیم بر روی یک حداکثر سرعت دودن کار میکند برای هر جایی بین یک تا چهار هفته. مدت زمان ایده ال برای حداکثر سرعت دویدن دو هفته می باشد.

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

1- Sprint Planning :

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

Daily Stand-Up :

این یک جلسه وضعیت بین اعضای تیم است. در این جلسه هریک از اعضای تیم یک وضعیت در سه بخش زیر ارائه میدهد:

1-کاری که دیروز انجام دادم

2-کاری که امروز انجام خواهم داد

3- من مسدود شده ام ؟

بررسی با حداکثر سرعت دویدن :

لین جلسه پس از اتمام هر بخش انجام میشود تا صاحبب محصولات کار را بپذیرد.

نسخه نمایشی با حداکثر سرعت دویدن:

این یک فرصت برای کل تیم و گروه بزرگتر از کاربران فراهم میکند برای دیدن همه ی کار تیم که تمام شده است و برای دیدن عملکرد پایان به پایان

نگاه به گذشته حداکثر سرعت :

این فرصت را به تیم توسعه میدهد تا در مورد سه چیز بحث کنند:

1- پیشرفت خوب بود؟

2-چی اشتباه بود؟

3-چیزی که میخواهیم تعبیه کنیم؟

براورد Agile :

Agile نوع براورد پیشنهاد میدهد:

1- داستان امتیاز : تکنیک تخمین Agile که معمولا مورد استفاده قرار میگیرد:

2- T-Shirt Sizing : براورد داستان کاربر برخی تیم ها در  T-Shirt Sizing :

برد وضعیت Scrum

Agile  گزارش وضعیت روزانه را اجرا می کند  بنابراین بسیاری از تیم ها از روش های مختلف برای ردیابی و نشان دادن پیشرفت در هر داستان کاربر استفاده میکنند.

ابزار Agile

ابزارهای بسیاری برای تیم های Agile-scrum در دسترس است . من متوجه شدم که TFS و rally widely کار برد عظیمی در این صنعت دارد.کاربرد هردو ابزار روی مفاهیم Agile-Scrum  مشابه و خیلی کاربر پسند هستند.

در ادمه تصویر TFS را مشاهده کنید:

نتیجه:

هرچند Agile در نگاه اول برای درک و پیاده سازی آسان به نظر میرسد ولی برای به کار بردن این روش و استفاده صحیح از آن بسیار چالش بر انگیز میباشد و بسیاری از سازمان ها با نتیجه این روش (Agile) موافق نیستند

راه اندازی Agile معمولا برای سازمان های تثبیت شده شناخته شده در قسمت های مختلف این سازمان ها کاربرد دارد .

به عبارت دیگر دریک سازمان ،یک تیم ممکن است از روش Agile استفاده کند در حالی که تیم های دیگر طرز فکرشان براسا روش آبشار باشد. اما Agile یک روش شگفت انگیز است برای ارائه ارزش بیشتر ، صرف نظر از اینکه شما در حال کار در یک تیم Agile هستید یا نه ، ارزش دانستن در مورد فرایند Agile Scrum کم نمیشود.

 

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان
  • C#.net
  • 5k بازدید
  • 6 تشکر

کاربرانی که از نویسنده این مقاله تشکر کرده اند

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید