“را اگر کارگری بخواهد کارش را خوب انجام دهد، اول باید ابزارش را تیز کند.” آنالکت های کنفوسیوس. وی لینگگونگ”
” یک صنعتگر برای انجام یک کار خوب به بهترین ابزار نیاز دارد ” 《Confucian Analects 》
رویکرد نرمافزاری عمل استفاده از تکنیکهای فرآیند انتخاب شده برای بهبود کیفیت تلاش توسعه نرمافزار است که منجر به نقصهای کمتر میشود و بنابراین در نهایت زمان تحویل کوتاهتر و ارزش بهتری را ارائه میدهد. یکی از رویکردهای نرم افزاری اغلب ادعا می شود که بهتر از هر روش دیگری است همیشه در معرض بحث بی پایان است. باید بگویم که بهترین رویکرد توسعه وجود ندارد، روش های مختلف برای زمینه های مختلف پروژه بهترین هستند. بهترین روش بستگی به این دارد که این روش برای چه کسی، در چه شرایطی، برای چه هدفی و غیره باشد. گفتن اینکه هیچ روش واحدی برای توسعه دهندگان نرم افزار بهترین نیست، به این معناست که روش های مختلف برای تیم های مختلف یا برای ماهیت پروژه های مختلف بهترین هستند.
گریدی بوچ در این باره می گوید:
«اگر میخواهید خانهای برای سگ بسازید، میتوانید تقریباً با یک انبوه الوار، چند میخ و چند ابزار اساسی مانند چکش، اره و متر شروع کنید. در عرض چند ساعت، احتمالاً به یک خانه سگی خواهید رسید که به طور معقولی کارآمد است… اگر می خواهید یک ساختمان اداری بلند بسازید، می خواهید برنامه ریزی گسترده ای انجام دهید … شما فقط بخشی از یک گروه بسیار بزرگتر خواهید بود. مسئول توسعه و استقرار ساختمان است، و بنابراین تیم برای برقراری ارتباط با یکدیگر به انواع طرحها و مدلها نیاز دارد.
آیا شما همین رویکرد را برای یک برنامه وب کوچک و یک کاوشگر فضایی ناسا اتخاذ می کنید؟ به احتمال زیاد نه. آیا با یک تیم شش نفره همان رویکردی را اتخاذ می کنید که با یک تیم شصت نفره انجام می دهید؟ یک بار دیگر، به احتمال زیاد نه. همانطور که اسکات آمبر اشاره کرد، شرایط مختلف به وضوح نیازمند رویکردهای متفاوتی است. وجود نداردهیچ راه حل یکسانی برای تک سایز نرم افزار وجود ندارد، در واقع، طراحان باید طیف وسیعی از ابزارها را در اختیار داشته باشند، مزایا و معایب هر کدام را درک کنند و بتوانند به سرعت در مورد مناسب ترین ابزار تصمیم بگیرند. برای اعمال در گردش کار ایده آل برای یک زمینه معین .راه حلی برای توسعه نرم افزار، در واقع، طراحان باید طیف وسیعی از ابزارها را در اختیار داشته باشند، مزایا و معایب هر یک را درک کنند و بتوانند به سرعت در مورد مناسب ترین ابزارها برای اعمال در یک گردش کار مطلوب تصمیم بگیرند. زمینه داده شده
Pingback: Is there a Best Approach for Software Development? - ArchiMetric()