- عنوان کتاب: Agile Software Development,Principles, Patterns, and Practices
- نویسنده: Robert C. Martin
- حوزه: توسعه نرم افزار
- سال انتشار: 2014
- تعداد صفحه: 531
- زبان اصلی: انگلیسی
- نوع فایل: pdf
- حجم فایل: 3.92 مگابایت
بسیاری از ما کابوس یک پروژه را بدون هیچ تمرینی برای هدایت آن تجربه کردهایم. فقدان شیوه های مؤثر منجر به غیرقابل پیش بینی بودن، خطای مکرر و هدر رفتن تلاش می شود. مشتریان از برنامهریزیهای لغزنده، بودجههای رو به رشد و کیفیت پایین ناامید میشوند. توسعهدهندگان از کار کردن با ساعتهای بیشتر برای تولید نرمافزار ضعیفتر دلسرد میشوند. وقتی چنین شکستی را تجربه کردیم، از تکرار آن تجربه می ترسیم. ترسهای ما به ما انگیزه میدهند تا فرآیندی را ایجاد کنیم که فعالیتهای ما را محدود میکند و خروجیها و مصنوعات خاصی را میطلبد. ما این محدودیتها و خروجیها را از تجربیات گذشته استخراج میکنیم، و چیزهایی را انتخاب میکنیم که در پروژههای قبلی به خوبی کار میکردند. امید ما این است که دوباره کار کنند و ترس ما را از بین ببرند. با این حال، پروژه ها آنقدر ساده نیستند که چند محدودیت و مصنوعات بتوانند به طور قابل اعتمادی از خطا جلوگیری کنند. همانطور که خطاها همچنان ایجاد می شوند، ما آن خطاها را تشخیص می دهیم و محدودیت ها و مصنوعات بیشتری را برای جلوگیری از این خطاها در آینده در محل قرار می دهیم. پس از بسیاری از پروژهها، ممکن است خودمان را درگیر یک فرآیند سنگین سنگین ببینیم که توانایی ما برای انجام هر کاری را به شدت مختل میکند. یک فرآیند دست و پا گیر بزرگ می تواند مشکلاتی را ایجاد کند که برای جلوگیری از آن طراحی شده است. این می تواند تیم را تا حدی کند کند که برنامه ها از بین برود و بودجه ها متورم شود. این می تواند پاسخگویی تیم را به حدی کاهش دهد که آنها همیشه محصول اشتباهی را ایجاد می کنند. متأسفانه، این امر بسیاری از تیم ها را به این باور می رساند که فرآیند کافی ندارند. بنابراین، در نوعی تورم فرآیندی فرار، آنها روند خود را بیش از پیش بزرگتر می کنند. تورم فرآیند فرار توصیف خوبی از وضعیت بسیاری از شرکت های نرم افزاری در حدود سال 2000 پس از میلاد است. اگرچه هنوز تیم های زیادی بدون فرآیند کار می کردند، پذیرش فرآیندهای بسیار بزرگ و سنگین به ویژه در شرکت های بزرگ به سرعت در حال رشد است.
Many of us have lived through the nightmare of a project with no practices to guide it. The lack of effective practices leads to unpredictability, repeated error, and wasted effort. Customers are disappointed by slipping schedules, growing budgets, and poor quality. Developers are disheartened by working ever longer hours to produce ever poorer software. Once we have experienced such a fiasco, we become afraid of repeating the experience. Our fears motivate us to create a process that constrains our activities and demands certain outputs and artifacts. We draw these constraints and outputs from past experience, choosing things that appeared to work well in previous projects. Our hope is that they will work again and take away our fears. However, projects are not so simple that a few constraints and artifacts can reliably prevent error. As errors continue to be made, we diagnose those errors and put in place even more constraints and artifacts in order to prevent those errors in the future. After many, projects we may find ourselves overloaded with a huge cumbersome process that greatly impedes our ability to get anything done. A big cumbersome process can create the very problems that it is designed to prevent. It can slow the team to the extent that schedules slip and budgets bloat. It can reduce responsiveness of the team to the point where they are always creating the wrong product. Unfortunately, this leads many teams to believe that they don’t have enough process. So, in a kind of runaway-process inflation, they make their process ever larger. Runaway-process inflation is a good description of the state of affairs in many software companies circa 2000 A.D. Though there were still many teams operating without a process, the adoption of very large, heavyweight processes is rapidly growing, especially in large corporations.
این کتاب را میتوانید از لینک زیر بصورت رایگان دانلود کنید:
Download: Agile Software Development,Principles, Patterns, and Practices
نظرات کاربران