روشهای مختلف در مقابل چابک (V) (مدل)

امروزه در صنعت نرم افزار تعداد متدولوژی های مختلف توسعه نرم افزار وجود دارد. V Methodologies (V-Model) پسوندی به روش توسعه آبشار (که یکی از اولین روشها است) می باشد. تمرکز اصلی V-Model دادن وزن برابر به برنامه نویسی و تست است. مدل Agile یک مدل توسعه نرم افزار جدید است که برای رفع کاستی های موجود در مدل های موجود معرفی شده است. تمرکز اصلی Agile این است که آزمایش را در اسرع وقت منتشر کرده و نسخه اولیه محصول را با فروپاشی سیستم در قسمتهای بسیار کوچک و قابل کنترل زودهنگام منتشر کند.

روش شناسی (مدل) چیست؟

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

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

چابک چیست؟

Agile یک روش جدید توسعه نرم افزار است که مبتنی بر مانیفست چابک است. این کار برای حل برخی کاستی ها در روش های سنتی توسعه نرم افزار V-Model و Waterfall تهیه شده است. روشهای چابک مبتنی بر اولویت بالای مشارکت مشتری در اوایل چرخه توسعه است. توصیه می کند که آزمایش توسط مشتری در اوایل و اغلب اوقات ممکن انجام شود. تست در هر نقطه با دسترسی به نسخه پایدار انجام می شود. پایه و اساس Agile بر اساس آزمایش از ابتدای پروژه آغاز شده و تا پایان پروژه ادامه دارد. مقادیر اصلی Agile "کیفیت مسئولیت تیم است" ، که تأکید می کند که کیفیت نرم افزار بر عهده کل تیم است (نه فقط تیم آزمایش). یکی دیگر از جنبه های مهم Agile ، شکستن نرم افزار به قسمت های کوچکتر قابل کنترل و ارائه سریع آنها به مشتری است. تحویل یک محصول کار بسیار مهم است. سپس این تیم به پیشرفت نرم افزار و ارائه مداوم در هر مرحله اصلی ادامه می دهد. این امر با داشتن چرخه های انتشار بسیار کوتاه به نام sprints و گرفتن بازخورد برای بهبود در پایان هر چرخه حاصل می شود. مشارکت کنندگان بدون تعامل زیاد تیم مانند برنامه نویسان و آزمایش کنندگان در روش های قبلی ، اکنون در مدل Agile با یکدیگر همکاری می کنند.

تفاوت بین روشهای چابک و V (مدل) چیست؟

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